
Kubernetes 1.5.0 foi lançado há cerca de um mês! Os principais temas do lançamento são:
- Conjuntos de estado (ex-PetSets)
- Os StatefulSets agora são beta (correções e estabilização)
- Suporte aprimorado à federação
- Novo comando:
kubefed - DaemonSets
- Implantações
- ConfigMaps
- Novo comando:
- Implantação simplificada de cluster
- Aprimoramentos para
kubeadm - Configuração de HA para o mestre
- Aprimoramentos para
- Robustez e extensibilidade do nó
- Suporte a contêineres do Windows Server
- CRI para tempos de execução de contêineres plugáveis
cubetaA API suporta autenticação e autorização
Ler REGISTRO DE MUDANÇAS para obter detalhes completos. Até a versão 1.5.0, a inicialização de um cluster do Kubernetes no Amazon Web Services era bastante simples.
|
1 |
NUM_NODES=2 NODE_SIZE=m3.medium KUBERNETES_PROVIDER=aws ./cluster/kube-up.sh |
Mas com a 1.5.0 e a 1.5.1, o comando falha com o erro:
|
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 |
O que aconteceu? Basicamente, os binários do Kubernetes estavam ficando maiores que 1 GB. O binário foi dividido em um pacote de instalação básica e binários de cliente e servidor. O processo de instalação atualizado exige o download do pacote de instalação básica de 4,57 MB (sim, MB em vez de GB). Ele inclui scripts de cluster como kubectl, kube-up.sh e kube-down.shexemplos, documentos e outros scripts. Em seguida, ele faz o download dos binários do cliente e do servidor. O binário do servidor é a imagem base usada para iniciar as instâncias do EC2. Mas, em vez de automatizar o download dos binários, alguém decidiu adicionar um README no arquivo servidor diretório.
Essa foi uma grande mudança na experiência do usuário, e nenhum link no README incluído na versão ou no o blog de lançamento. Ai!
De qualquer forma, isso foi registrado como #38728 e corrigido prontamente. Mas ele perdeu o Versão 1.5.1 e agora finalmente apareceu no Versão 1.5.2 hoje.
Então, como você executa um cluster do Kubernetes 1.5.2 no AWS? Agora ele está mais bem integrado, mas você precisa pressionar a tecla Enter algumas vezes para aceitar o valor padrão:
|
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 ... |
Depois que o cluster normal do Kubernetes é criado, a saída é mostrada como:
|
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'. |
Mesmo que seu cluster do Kubernetes no AWS seja iniciado sem problemas, mas kube-up.sh O script será depreciado em breve. A maneira recomendada é usar Cluster de Kubernetes na Amazon usando Kops. Agora que seu cluster Kubernetes está funcionando, o que você faz a seguir?
- Siga as etapas detalhadas para Kubernetes para desenvolvedores Java oficina.
- Executar um Cluster do Couchbase no Kubernetes
- Saiba mais sobre Cluster do Couchbase em contêineres