01 | 건강한 웨이는 Kubernetes (K8S) 도로의 연습 : 열기 및 개요

최근 몇 년 동안, 내가 믿는 용기 관련 기술, 컨테이너, 고정 표시기, K8S, 메소, 서비스 메쉬, 서버없는 및 기타 용어의 인기는 우리가 많은 국내 인터넷 기업의 모든 연락처 및 관련 기술의 사용에 얼마나 들었습니다.

건강한 방법은 빠르면 2016 등 컨테이너의 평가를 시작했다. 육안 지금 컨테이너 관련 기술의 안정성과 생존은 우리가 연습의 채널 컨테이너를 시작 이러한 맥락에서 검증을 많이하고있다.

물론, 연습 과정, 우리는 또한 우리는 기록하고 우리가 단어를 통해 발생하는 일의 일부를 공유 할뿐만 아니라 모든 사람들을 돕기 위해 도로의 컨테이너를 가지고 할 수 있도록 노력하겠습니다, 몇 가지 문제가 발생 부족하다.

요약

대상 독자

    기사의이 시리즈는 종결을 포함 K8S 기술을 많이 포함하고 우리의 프로그램을 사용하지 않습니다. 그리고 기사가 처음부터 다시 시작하지 않을 것이다, 우리는 몇 가지 기본적인 K8S의 특정 이해가 있다고 가정합니다, 가장 좋은 대상은 초기 K8S와 K8S 회사에 적용 할 준비가 적용되고있다.

아주 좋은 생태 K8S, 특히 관련 기사와, 항목 및 프리젠 테이션 자료, 문서 때문에, 아주 많이, 당신은 관련 지식을 보완하기 위해 자신에 갈 수 있습니다.

그러나 매우 중요한 문제가 분석 기능 및 기술 문서의 K8S을 달성하기위한 많은 가능한 생산의 전체 시리즈,없는있다.

또한 기사에 대해 이야기 응용 프로그램의 제조업체 그러나이 경우에도 상대적으로 거친 입자 크기는 또한 자신을 탐구 할 필요가 솔루션 아이디어에 대한 작은 질문을 제공 할 수 있습니다.

어떻게 새로운 K8S이 연구인가?

    우리가 주요 항목 K8S 보면 공식 문서 (영어) 일반적으로 기본 이해할 수있는 번역 소프트웨어로하지 금지 영어를 수행하는 것이 좋습니다. 그 이유는 매우 간단하다 : K8S 개발 매우 빨리, 유일한 공식 문서는 가장 신뢰할 수있는 콘텐츠의 많은 유효 기간이 이미 있습니다.

보조, 우리는 (가능성이 일관성이 K8S 버전은 문제를 일으킬 수 있기 때문에 흩어져 기사 등)의 기사 시리즈의 일부를 검색 갈 수있다, 나는 XX 시간 항목에 대한 과정의 K8S 시리즈로했다, 난 그냥 시작하는 것이 좋습니다, 학생들은이 시리즈가 시작 시작할 수 있습니다 . (가) 가서 다시 공식 문서 나중에 과정의 내용에 따라 K8S의 특정 숙달이 K8S에 학습을 향상시킬 수 있습니다.

알리 클라우드는 최근 일련의 과정을 시작했다 " CNCF는 알리바바 기본 클라우드 기술 개방 클래스 × 도 업데이트되고있다 (저자 XX 시계열 상단 오 중입니다)", 내용도 매우 잘 학습을 강화하는 데 사용할 수있는 기록이다 약.

우리는 무슨 짓을 한거야?

함대 (컨테이너 운영 및 유지 보수 및 지속적인 통합 시스템을 구축하기 위해 회사에 적용 K8S에 따라 자율 학습)

(K8S의 도입 후 원래 마이크로 서비스 호출과 호환) 회사의 마이크로 서비스 프레임 워크를 업그레이드

생산 라인은 고 가용성 클러스터의 K8S를 구축

서버 리소스 (CPU, 메모리) 때 자주 긴장과 다운 타임 최적화를 피하기

BGP ClusterIP 가용성 및 상호 운용성 PodIP 및 네트워크 내에서 스위치를 통해 공개하고 기존의 네트워크 클러스터 K8S

글로벌 컨테이너 호스트

컨테이너의 Java8 (JVM) 튜닝 및 최적화

PHP의 컨테이너

간단한 모니터링 및 경고 (프로 메테우스 + Grafana)

기술 선택

  • 파일링 시스템 :는 Kubernetes (현재 버전 1.14.1)
  • CRI : 도커 (현재 버전 18.09.4)
  • CNI : 옥양목 (현재 버전 3.7.2)
  • 이미지 레지스트리 : 하버 (현재 버전 1.7.5, 1.8.0 준비 업그레이드)
  • 로드 밸런싱 : LVS, HAProxy
  • 클러스터 가이드 : kubeadm (현재 버전 1.14.1)
  • 알람 모니터링 : 프로 메테우스 + Grafana
  • 함대
    • 백엔드 : Java8 + 봄 가족 버킷 + fabric8io는 Kubernetes 클라이언트
    • 前端 : 타이프 라이터 +는 + 개미 디자인 프로 반작용

K8S의 배치를 선택

우리는 배포 K8S 클러스터에 대한 두 가지 옵션을 고려하기 전에.

  1. 물리적 기계 + K8S
  2. VM +의 K8S

우리는 가상 머신 + K8S를 선택했다.

우리는 가상 머신이 우리가 살 수있는 손실을 가지고 있다고 생각하기 때문에. 좋은 유지 보수에 대한 대가의 일부 성능 손실은 우리가 원하는이다.

우리의 현재 상황

올바른 기술의 초기 선택하기 때문에,이 회사는 건축 서비스 개발은 매우 긴 시간을 통해 간 마이크로을 실시했다.

그래서 우리의 응용 프로그램의 대부분은 비 상태입니다. 이 마이그레이션 K8S는 우리를 위해 (또한 더 많은 문제를 보였다 총 잘 응용 프로그램의 상태가 K8S도, 마이그레이션하는 것은 매우 어려운이 있다고 알려져있다) 많은 도움을 가져왔다.

우리가 지금 가지고있는 응용 프로그램이나 국가의 대부분은, 당신이 고려해야 할 수 있다면 그래서 응용 프로그램이 K8S로의 이적을 고려하여 재구성.

개발 라인 (진행중인 전체 마이그레이션)

개발 라인에서 우리는 기본적으로 K8S 마이그레이션 할 수있다 점차적으로 회복 자원 회수 점차적으로 추가 K8S의 자원, 현재 실행중인 약 80 일 장애 (개발 라인 자원 제약 앞서 지난 달 때문에 자원 제약은 노드가 약 30 일 동안 안정적으로 작동하고있다, 자주 내려 간다,) 나중에 자세히 당신과 함께 공유 할 수있는 전용 공간이 될 것입니다 구덩이 트리거.

관계가 매우 사용할 수 없기 때문에 현재 개발의 우리의 선은 클러스터 리소스를 K8S.

마스터 국 (ETCD 스택)

노드 Wutai

항구

총 7 가상 머신

신청

image_thumb9

서버 자원

image_thumb10

생산 라인 (에지 애플리케이션 마이그레이션)

고 가용성 K8S 클러스터 환경을 구축하는 데 사용되는 자원의 우리의 생산 라인 기동 부분에서.

우리 작업 라인, 생산 라인의 애플리케이션 마이그레이션 (비 핵심)의 가장자리의 현재 작은 부분에도 보수. 이 회사의 RP 마이크로 서비스 구성 요소는 TCP 긴 연결도 또한 호환되는되는로드 밸런싱 최적화 구덩이를 밟았 사용합니다. 문제를 설명하기 위해 나중에 길이가 설명 될 것이다.

더 적절한 자원을 구축 할 수있는 생산 라인으로하지 있었다 K8S 완전한 실패 (네트워크 정책 구성 오류가 짧은 서비스에 액세스 할 수 없게되었다 때문에 중간에).

그것은 오십삼일의 안정적인 운영하고있다.

세 마스터

node 네 개

etcd 세

두 항구

두 정맥 주사

두 haproxy

17 개 가상 머신의 총

신청

image_thumb14

서버 자원

image_thumb13

일의 우리의 부족을 수행하고 추적하기

우리는 현재 우리가 현재 상태 응용 프로그램을 지원하지 않는, 관련 콘텐츠에 CSI를 사용하지 마십시오. 우리는이 기능을 추가하는 후속 Ceph 클러스터의 설립을 고려할 것입니다.

우리는 현재 침투 능력을 (우리가 현재 ClusterIP 서비스를 사용)를 사용하지 않는, 후속 긴급 정도에 따라이 침투 능력에 가입하는 것이 좋습니다.

우리는 현재 (현재 프로그램이 자신의 관점에 따라 달라집니다 또는 콘솔 로깅 기능 WEBSHELL 함대 시스템을 통해 전송 로직 진단 로그) 로그 수집이없는

우리의 현재 빌드 시스템은 상대적으로 후속은 드론 타사 빌드 시스템을 도입 할 수 있으므로 유연성이 고정됩니다.

.NET 핵심 컨테이너 수송

더 시리즈 윤곽이 없다? 공유 다음에 무엇을 할 것인가?

나는 모든 공유 윤곽을 애타게하는 정말 그렇게 강하지 않다 세계적인 전망 해요, 미안 해요. 나는 우리의 고통의 대략적인 순서에 따라 공유합니다. 아마 쓰기의 각각의 끝에서 무엇을 한 것을 공유합니다.

다음은 공유한다 : 고 가용성 클러스터 K8S 컨텐츠를 구축하는 단계 (현재 토폴로지 맵, 고 가용성 테스트 프로그램 등의 내용을 공유)를 구축하지 않습니다에 대한 자세한 설명은이 시리즈의 주요 대상은 여전히 ​​몇 가지 근거가 학생들은 그 이상 갈 것입니다.

최종적으로

첫 번째는 감사하는 것입니다. 최대한의 지원과 조정의 CTO의 리더십과 관리자에게 감사드립니다. 우수한 기능과 문서 덕분에 지역 사회를 K8S.

PS : 모든 컨텐츠 공유는 반드시 완전히 우리의 작은 친구를 포함하여 내 결과는이 프로젝트를 지원하고있다한다.

당신이 질문이나 코멘트 기능 또는 개인 편지는 내가 통해 통신해야하는 경우 (우선 순위 검토를 사용하는 것이 좋습니다, 코멘트의 내용은 독자에게 자산입니다).

회사 (복주) 기술 위치 (자바, 빅 데이터 엔지니어) 간격의 숫자는 여전히있다가, 관심있는 학생들은 내가 앞으로 66 도움을 줄 수, 나에게 메시지를 보낼 수 있습니다.

함대 소개

함대 시스템은 컨테이너 운영 및 유지 보수 연속 빌드 시스템의 우리 회사의 자기 개발이다.

체계적인 방법으로 이후의 발생을 보류.

함대 시스템 우리가 무대를 계획하고있다.

진행중인 두 개 (하나는 기본적으로 매일 운영 및 K8S의 유지 보수 및 사용에 마이그레이션 회사의 개발자를 충족한다) 현재입니다.

다음은 화면의 일부이며

image_thumb4

image_thumb5

image_thumb6

image_thumb7

추천

출처www.cnblogs.com/ants/p/10995813.html