
Kubernetes 1.5.0 가 약 한 달 전에 출시되었습니다! 이번 릴리스의 주요 테마는 다음과 같습니다:
- 스테이트풀셋 (기존 펫 세트)
- 스테이트풀셋은 현재 베타 버전입니다(수정 및 안정화).
- 향상된 페더레이션 지원
- 새 명령:
kubefed - 데몬 세트
- 배포
- 컨피그맵
- 새 명령:
- 간소화된 클러스터 배포
- 다음 사항이 개선되었습니다.
kubeadm - 마스터용 HA 설정
- 다음 사항이 개선되었습니다.
- 노드 견고성 및 확장성
- Windows Server 컨테이너 지원
- 플러그형 컨테이너 런타임을 위한 CRI
kubeletAPI는 인증 및 권한 부여를 지원합니다.
읽기 변경 로그 를 참조하세요. 1.5.0 이전까지는 Amazon Web Services에서 Kubernetes 클러스터를 시작하는 것이 매우 간단했습니다.
|
1 |
NUM_NODES=2 NODE_SIZE=m3.medium KUBERNETES_PROVIDER=aws ./cluster/kube-up.sh |
그러나 1.5.0 및 1.5.1에서는 명령이 오류와 함께 실패합니다:
|
1 2 3 4 5 |
... Starting cluster in us-west-2a using provider aws ... calling verify-prereqs ... calling kube-up Starting cluster using os distro: jessie !!! Cannot find kubernetes-server-linux-amd64.tar.gz |
무슨 일이 있었나요? 기본적으로 쿠버네티스 바이너리가 1GB보다 커지고 있었습니다. 바이너리는 기본 설치 번들과 클라이언트 및 서버 바이너리로 나뉘었습니다. 업데이트된 설치 프로세스에서는 4.57MB(예, GB가 아닌 MB)의 기본 설치 번들을 다운로드해야 합니다. 여기에는 다음과 같은 클러스터 스크립트가 포함됩니다. kubectl, kube-up.sh 그리고 kube-down.sh, 예제, 문서 및 기타 스크립트를 다운로드합니다. 그런 다음 클라이언트 및 서버 바이너리를 다운로드합니다. 서버 바이너리는 EC2 인스턴스를 시작하는 데 사용되는 기본 이미지입니다. 하지만 누군가 바이너리 다운로드를 자동화하는 대신 서버 디렉터리로 이동합니다.
이는 큰 사용자 환경 변경이었으며, 릴리스와 함께 번들로 제공되는 README 또는 릴리스 블로그. 아야!
어쨌든, 이것은 다음과 같이 제출되었습니다. #38728 즉시 수정했습니다. 하지만 1.5.1 릴리스 그리고 이제 마침내 1.5.2 릴리스 오늘.
그렇다면 AWS에서 Kubernetes 1.5.2 클러스터를 어떻게 실행할 수 있을까요? 이제 더 원활하게 통합되었지만 기본값을 수락하려면 Enter 키를 몇 번 눌러야 합니다:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
NUM_NODES=2 NODE_SIZE=m3.medium KUBERNETES_PROVIDER=aws ./cluster/kube-up.sh ... Starting cluster in us-west-2a using provider aws ... calling verify-prereqs ... calling verify-kube-binaries !!! kubectl appears to be broken or missing !!! Cannot find kubernetes-server-linux-amd64.tar.gz Required binaries appear to be missing. Do you wish to download them? [Y/n] Kubernetes release: v1.5.2 Server: linux/amd64 (to override, set KUBERNETES_SERVER_ARCH) Client: darwin/amd64 (autodetected) Will download kubernetes-server-linux-amd64.tar.gz from https://storage.googleapis.com/kubernetes-release/release/v1.5.2 Will download and extract kubernetes-client-darwin-amd64.tar.gz from https://storage.googleapis.com/kubernetes-release/release/v1.5.2 Is this ok? [Y]/n Warning: Keep-alive functionality somewhat crippled due to missing support in Warning: your operating system! % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 299M 100 299M 0 0 2132k 0 0:02:23 0:02:23 --:--:-- 2439k md5sum(kubernetes-server-linux-amd64.tar.gz)=7947bd430c4ffc358a6784e51c1d2b0f sha1sum(kubernetes-server-linux-amd64.tar.gz)=4dbdcfa623412dac6be8fd5a4209a1f1423e8d30 Warning: Keep-alive functionality somewhat crippled due to missing support in Warning: your operating system! % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 22.0M 100 22.0M 0 0 1810k 0 0:00:12 0:00:12 --:--:-- 2296k md5sum(kubernetes-client-darwin-amd64.tar.gz)=f55a8f9c300042e9b16e327ad2788521 sha1sum(kubernetes-client-darwin-amd64.tar.gz)=c29ab99e22146ba0a3da5c25de62ed13108b8ba9 Extracting /Users/arungupta/tools/kubernetes/kubernetes-1.5.2/kubernetes/client/kubernetes-client-darwin-amd64.tar.gz into /Users/arungupta/tools/kubernetes/kubernetes-1.5.2/kubernetes/platforms/darwin/amd64 Add '/Users/arungupta/tools/kubernetes/kubernetes-1.5.2/kubernetes/client/bin' to your PATH to use newly-installed binaries. ... calling kube-up Starting cluster using os distro: jessie Uploading to Amazon S3 ... |
일반적인 Kubernetes 클러스터가 생성되면 출력은 다음과 같이 표시됩니다:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
0 minions started; waiting 0 minions started; waiting 2 minions started; ready Waiting for cluster initialization. This will continually check to see if the API for kubernetes is reachable. This might loop forever if there was some uncaught error during start up. .........................................................................................................................................................................Kubernetes cluster created. Sanity checking cluster... Attempt 1 to check Docker on node @ 35.166.195.134 ...not working yet Attempt 2 to check Docker on node @ 35.166.195.134 ...working Attempt 1 to check Docker on node @ 35.166.188.211 ...not working yet Attempt 2 to check Docker on node @ 35.166.188.211 ...working Kubernetes cluster is running. The master is running at: https://35.165.234.219 The user name and password to use is located in /Users/arungupta/.kube/config. ... calling validate-cluster No resources found. Waiting for 2 ready nodes. 0 ready nodes, 0 registered. Retrying. Waiting for 2 ready nodes. 0 ready nodes, 2 registered. Retrying. Waiting for 2 ready nodes. 0 ready nodes, 2 registered. Retrying. Found 2 node(s). NAME STATUS AGE ip-172-20-0-206.us-west-2.compute.internal Ready 45s ip-172-20-0-246.us-west-2.compute.internal Ready 42s Validate output: NAME STATUS MESSAGE ERROR controller-manager Healthy ok scheduler Healthy ok etcd-0 Healthy {"health": "true"} etcd-1 Healthy {"health": "true"} Cluster validation succeeded Done, listing cluster services: Kubernetes master is running at https://35.165.234.219 Elasticsearch is running at https://35.165.234.219/api/v1/proxy/namespaces/kube-system/services/elasticsearch-logging Heapster is running at https://35.165.234.219/api/v1/proxy/namespaces/kube-system/services/heapster Kibana is running at https://35.165.234.219/api/v1/proxy/namespaces/kube-system/services/kibana-logging KubeDNS is running at https://35.165.234.219/api/v1/proxy/namespaces/kube-system/services/kube-dns kubernetes-dashboard is running at https://35.165.234.219/api/v1/proxy/namespaces/kube-system/services/kubernetes-dashboard Grafana is running at https://35.165.234.219/api/v1/proxy/namespaces/kube-system/services/monitoring-grafana InfluxDB is running at https://35.165.234.219/api/v1/proxy/namespaces/kube-system/services/monitoring-influxdb To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'. |
AWS의 Kubernetes 클러스터가 정상적으로 시작되지만 kube-up.sh 스크립트는 사용 중단 곧. 권장되는 방법은 Kops를 사용한 아마존의 쿠버네티스 클러스터. 이제 쿠버네티스 클러스터가 가동되었으니 다음 단계는 무엇일까요?
- 다음에 대한 자세한 단계를 따르세요. Java 개발자를 위한 쿠버네티스 워크샵.
- 실행 쿠버네티스의 카우치베이스 클러스터
- 자세히 알아보기 컨테이너의 카우치베이스 클러스터