인터뷰와 원고 요청을 통해 운영 및 유지 관리 분야의 베테랑을 초대하여 심오한 통찰력을 제공하고 서로 충돌하여 발전된 공감대를 형성하고 업계가 더 나은 발전을 이룰 수 있도록 장려합니다.
이번 호에는 Linux 25년 베테랑인 Youpaiyun Technology의 Shao Haiyang을 초대합니다. Shao 씨는 기술에 집착하여 한 단계씩 발전하고 있습니다. 오늘 인터뷰가 당신에게 영감을 줄 수 있기를 바랍니다.
현실적이고 수준 높은 "백 운영 및 유지 보수 포럼"의 4번째 호입니다. 시작하겠습니다!
저는 Youpaiyun Technology의 Shao Haiyang입니다. 저는 1998년부터 거의 25년 동안 Linux를 사용해 왔습니다. 저는 선배(베테랑) Linux 시스템 운영 및 유지 관리/설계자, DevOps 8영예 및 8패 옹호자, 아마추어 작가입니다. . (유죄) 시스템 최적화 및 네트워크 서비스 관리, Linux 시스템 사용자 정의, CDN 가속 및 보안 방어에 능숙하며, 고성능 인터넷 네트워크 및 아키텍처 설계, 가상화된 KVM 및 OpenStack 클라우드 플랫폼, K8S 컨테이너 클라우드 및 Ceph 분산 스토리지에 능숙합니다. 및 기타 신기술 기술은 소통과 공유를 좋아하고 커뮤니티에서 활발히 활동하며 오픈 소스 활동의 조직 및 보급에 적극적으로 참여해 왔습니다.
Youpaiyun은 클라우드 스토리지, 클라우드 배포, 클라우드 처리 서비스를 제공하는 회사이기도 하며 프로그래밍 가능한 CDN 서비스를 제공하는 중국 최초의 전문 클라우드 서비스 제공업체이기도 합니다. 운영 및 유지 관리에도 다음과 같은 몇 가지 규칙이나 원칙이 있습니다.
먼저 안정성을 확보한 다음 최적화하세요.
과도한 설계 또는 조기 최적화로 인해 다운타임이 늘어날 가능성이 높으므로 먼저 확장성과 고성능을 개선하는 데 집중해야 합니다. 시스템의 가용성. 이 프로젝트는 "먼저 완성하고 그 다음 완벽하고 그 다음 완벽하다"라는 원칙을 고수하며 "먼저 사용 가능하고 그 다음 사용하기 쉽고 그 다음 사용하기 좋다"라는 구현 전략을 채택합니다.
신뢰할 수 있는 테스트 기반 및 시간 검증 제공
신기술을 아키텍처에 도입하기 전에 신기술의 안정성과 충분한 장기 테스트, 운영 및 개발 과정에서 개발된 툴 체인의 무결성을 보장해야 합니다. 유지관리공학 . 온라인 재작업이나 변경으로 인해 허를 찔린 것이 이미 실패의 원인이 되었을 수도 있습니다.
제어 가능한 자동화 방법을 사용하여 효율성 향상
자동 배포, 자동 오케스트레이션, 자동 검사, 자동 업그레이드와 같은 자동화 방법이 클라우드 운영 및 유지 관리에 점점 더 많이 사용되고 있습니다. 이는 클라우드 컴퓨팅 시대에 적응하는 추세이지만, 기능이 커질수록 책임도 커집니다. 자동화로 인한 눈사태와 엄청난 양의 무리 효과에 주의하고 그레이스케일/청록색 배포 및 다양한 테스트를 잘 수행하세요.
단순하게 유지하고 모든 것을 모니터링하세요
단순하게 유지하고 너무 복잡하게 만들지 마세요. 일반적인 비정상 문제 경보 외에도 비즈니스 지표, 시장 지표, 판매 데이터, 비용 등을 모두 추세 분석 정보로 사용할 수 있습니다. 정기적인 폴링을 통해 각 추세 데이터의 최고점과 최저점을 확인하면 통찰력을 얻는 데 도움이 될 수 있습니다.
예산 중심의 운영 및 유지 보수
일반적으로 운영 및 유지 관리팀이 가장 큰 지출을 담당합니다. 왜냐하면 예산이 부족하고 회사 사업의 규모 증가를 고려하여 돈 없이는 운영 및 유지 관리가 어렵기 때문입니다. , 회사의 사업이 정체되거나 더 이상 존재하지 않는 한 폭발적인 성장이 이루어지고 있습니다. 그러한 과제에 직면한 운영 및 유지 관리는 비용을 절감하고 이익을 얻고, 수익을 늘리고 지출을 줄이고, 에너지 효율성을 향상시키기 위해 새로운 기술을 사용하는 방법을 배워야 합니다.
시나리오 중심의 지능형 운영 및 유지보수
고동시 처리부터 비디오 트랜스코딩, 고성능 병렬 컴퓨팅부터 대규모 네트워크 요청까지 다양한 부하 시나리오. 이러한 다양한 로드 시나리오에는 네트워크 대역폭, 다양한 처리 및 IO에 대한 요구 사항이 다릅니다. 지능적인 운영 및 유지 관리를 위해서는 비즈니스에 대한 심층적인 이해와 다양한 비즈니스 시나리오의 요구 사항을 충족하기 위한 리소스 및 아키텍처의 합리적인 할당이 필요합니다.
지속적 통합 및 릴리스 시스템
지속적 릴리스에는 그레이스케일 릴리스, 테스트 릴리스, 롤링 릴리스, 롤백 릴리스 및 기타 시나리오가 포함되며 각 시나리오를 제어할 수 있어야 합니다.
누구나 교체될 수 있도록 보장하세요
철저한 캠프에서는 사람들이 이리저리 이동하는 것이 정상입니다. 공유 문서 관리와 직원 간 지식 전달 및 공유를 잘 수행하세요. 누구든지 교체할 수 있으며, 그것이 회사의 한계가 되어서도 안 됩니다.
회사는 직원들이 스스로 기술을 향상하고 성장을 촉진할 수 있도록 항상 적극적으로 장려해 왔습니다.
클라우드 운영 및 유지 관리 팀 내 교육에는 다음이 포함됩니다.
이제 막 경영직에 들어온 분들에게는 남은 기술부채와 재고를 정리하고 적시에 인재 역량을 키워 나중에 발전할 여지가 더 커지도록 하라고 제안합니다. 자세한 내용은 제가 공유한 "DevOps의 8가지 명예와 8가지"를 참조하세요.
스킬 트리의 재능 목록은 주로 인적 자원과 협력하여 재능을 나누는 것입니다. 9개의 궁전으로 (개발 또는 운영 및 유지 관리의 경우 왼쪽의 성과를 잠재력으로 대체합니다. (성과는 판매를 위한 성과입니다.) 테스트되는 것은 직원의 모든 측면을 분석하고 이를 효과적으로 활용할 수 있는 관리자의 능력입니다. .
직원들에게 동기를 부여하기 위한 회사의 OKR 목표 관리와 결합하면 목표를 수집하는 동시에 다음과 같은 이점도 얻을 수 있다는 장점이 있습니다.
이론적으로 우수한 소프트웨어 엔지니어는 운영 및 유지 관리 엔지니어의 작업 중 일부(또는 전체)를 수행할 수 있습니다. 예를 들어 비즈니스 소프트웨어의 성능을 모니터링할 때 프로그래머가 프로그램에 많은 후크나 프로브를 삽입하면 운영 및 유지 관리를 위한 힘든 모니터링이 필요 없이 데이터를 계산할 수 있습니다. 프로그래머는 프로그램을 설계하고 분석을 고려합니다. 데이터베이스 샤딩은 대규모 동시성과 분산 설계를 고려하므로 소프트웨어에 버그가 많지 않으면 운영 및 유지 관리가 기계를 수평으로 확장할 수 있습니다. , 현실은 잔혹합니다. 특히 중국에는 모든 사람이 비즈니스 기능을 구현하느라 바쁘고 문서나 주석을 작성하는 것을 꺼리며 그것에 대해 철저하게 생각할 수 있는 수준의 프로그래머가 너무 적습니다. 마찬가지로 운영 및 유지 관리에 참여하는 많은 사람들은 훌륭한 오픈 소스 회사입니다. 매우 성숙한 소프트웨어이므로 훌륭한 소프트웨어가 어떻게 설계되었는지 배울 수 있습니다. . 표준 syslog 또는 로그를 통해 모니터링할 수 있습니다. 따라서 숙련된 운영 및 유지 관리는 다음을 수행합니다.합리적으로 요구 사항과 리소스를 높입니다. 문제가 발생하기 전에 예방하려면 예산이 있는 것이 좋습니다온라인 모니터링, 결함 검토, 전체 팀에 대한 피드백, 상하위가 조율하고 개선하도록 강요사전 계획에 적극적으로 참여하고, 개발 훈련에 협력하고, 배포를 자동화하고, 아키텍처 개선을 지원합니다.
예를 들어 10W 온라인 동시성 기능을 제공하려면 중복 대역폭 중복 서버 x2가 필요하며 결과와 책임자는 예산을 절반으로 줄입니다. 예산 부족으로 인해 소프트웨어 설계가 불량한 경우 성능 모니터링을 통해 비정상적인 지표와 책임자의 결과가 발견됩니다. 물론 경보가 제때에 처리되지 않으면 사람의 작업 실패도 발생할 수 있습니다. 운영 및 유지 관리에 있어서 결함 문화는 사람이 아닌 문제와 사물 자체에 초점을 맞추는 것입니다. 누구나 실패를 통해 성장하고, 복습을 통해 더욱 강해진다.
운영 및 유지 관리 자동화
정규화 모니터링
로그 시각화!
이 글은 너무 길어서 자세한 내용은 다루지 않겠습니다. "클라우드 운영 및 유지 관리의 계몽 및 아키텍처 설계"
Youpaiyun은 일반적으로 바퀴를 재발명하지 않지만 반드시 바퀴를 먼저 사용하거나 더 편리하게 바퀴를 수정합니다. 자체 연구를 선택하는 경우 특정 개발 기능과 필요한 특정 이유가 결합되는 경우가 많습니다.
퍼블릭 클라우드는 IaaS 기반, 컨테이너 클라우드는 CaaS 중간 계층, 클라우드 네이티브는 SaaS 애플리케이션 계층 역할을 합니다. SRE 팀의 핵심 기능은 날이 갈수록 변화하고 있습니다. 최상위 수준의 체계적인 용량 계획 및 지표 모니터링에 더 많은 관심을 기울이십시오. 따라서 플랫폼 간 및 부서 간 기능적 보완성, 팀 협업, 지속적인 개선 및 책임을 질 수 있는 용기에는 다음이 포함됩니다.
팀의 가치는 항상 새로운 것과 새로운 도전을 받아들이고, 자신의 강점을 활용하며, 우물 안의 개구리가 되거나 개구리를 끓이는 일을 피할 수 있습니까? 혁신이나 전복이 찾아오더라도 시대에 따라 분리될 수는 없습니다.
기술 분야
비기술 분야
일단 사람을 선택하는 것은 직업이 아니라 사람이 선택하는 것입니다. 어떤 분야에 관심이 있고 10,000시간 가까이 정말 열심히 공부했다면 그 사람은 실제로 무엇이든 할 수 있습니다. . 예를 들어, 제가 졸업할 때 복합적인 재능에 중점을 두었고 운영 및 유지 관리 같은 것이 없었습니다. 우리는 기계를 만들고(DIY) Linux 운영 체제를 스스로 가르쳤을 뿐만 아니라 프로그래밍도 배웠습니다. Linux는 매일 우리에게 혁신적이고 재미있으며 우수한 오픈 소스 소프트웨어를 제공하여 기회가 오면 마음껏 배우고자 하는 열정을 유지할 수 있도록 해줍니다. 인터넷이 부흥하면서 운영 및 유지 관리 책임자가 되는 것이 실제로 논리적입니다. 사실 이 외에도 사전 판매 및 기술 지원으로 전환하고 시장을 방문하고 연설 교육도 자주 했습니다. , 진정한 마스터는 아무것도 배울 수 없습니다. 그는 많은 기술을 가지고 있지만 개발할 수 있는 운영 및 유지 관리 엔지니어를 압도하지 않습니다.
가장 중요한 능력은 표현력과 소통능력이라고 생각하는데, 운영과 유지관리 자체에 필요한 기술적 예비력, 실무 능력, 프로그래밍 능력, 학습 능력도 배제되지 않습니다. 운영 및 유지 관리가 여전히 대부분 비용 지출 위치라는 점을 고려하면, 상위 경영진의 지속적인 투자를 얻기 위해 난해하고 모호한 성능 및 병목 현상 지표를 직관적인 차트 표시에 사용하는 방법은 기술이 필요하며 동료 및 형제 부서와도 마주해야 합니다. 일을 조정하고 추진하려면 영향력이 필요합니다. 이렇게 할 수 있다면 앞으로 하는 모든 일에서 더 높은 수준에 있게 될 수 있도록 이끌 수 있는 능력이 있다는 뜻이며, 전체적인 관점에서 조정을 하게 됩니다. 전체 프로젝트를 계획하고 목표, 인력, 건설 일정 및 자원을 합리적으로 할당합니다.
위 내용은 Yun Shao Haiyang의 또 다른 장면: 25년 경력의 Linux 베테랑이 DevOps의 8가지 명예와 8가지 불명예에 대해 이야기합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!