Kubernetes 1.5.0 был выпущен около месяца назад! Ключевая тема для релиза:
- StatefulSets (экс-PetSets)
- StatefulSets сейчас бета (исправления и стабилизация)
- Улучшенная поддержка федерации
- Новая команда:
kubefed - DaemonSets
- развертывания
- ConfigMaps
- Новая команда:
- Упрощенное развертывание кластера
- Улучшения в
kubeadm - Настройка HA для Master
- Улучшения в
- Надежность и расширяемость узла
- Поддержка Windows Server Container
- CRI для сменных контейнеров
- API-интерфейс
kubeletподдерживает аутентификацию и авторизацию
Читайте CHANGELOG для полной информации.
Вплоть до 1.5.0 запуск кластера Kubernetes в Amazon Web Services был довольно простым.
|
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-upStarting cluster using os distro: jessie!!! Cannot find kubernetes-server-linux-amd64.tar.gz |
Что произошло?
По сути, двоичные файлы Kubernetes становились больше 1 ГБ. Двоичный файл был разбит на базовый пакет установки и двоичные файлы клиента и сервера. Обновленный процесс установки требует загрузки базового пакета установки размером 4,57 МБ (да, МБ вместо ГБ). Он включает в себя кластерные скрипты, такие как kubectl , kube-up.sh и kube-down.sh , примеры, документы и другие скрипты. Затем он загружает двоичные файлы клиента и сервера. Двоичный файл сервера — это базовый образ, который используется для запуска экземпляров EC2. Но вместо того, чтобы автоматизировать загрузку двоичных файлов, кто-то решил добавить README в каталог server .
Это было большое изменение пользовательского опыта, и в README не было ссылок, связанных с выпуском или выпуском блога . Ой!
Так или иначе, это было зарегистрировано как # 38728 и исправлено быстро. Но он пропустил релиз 1.5.1 и теперь, наконец, появился в сегодняшнем выпуске 1.5.2 .
Итак, как вы запускаете кластер Kubernetes 1.5.2 на AWS?
Теперь он более интегрирован, но вам нужно пару раз нажать клавишу Enter, чтобы принять значение по умолчанию:
|
01
02
03
04
05
06
07
08
09
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.gzRequired binaries appear to be missing. Do you wish to download them? [Y/n]<ENTER>Kubernetes release: v1.5.2Server: 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.2Will download and extract kubernetes-client-darwin-amd64.tar.gz from https://storage.googleapis.com/kubernetes-release/release/v1.5.2Is this ok? [Y]/n<ENTER>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 Speed100 299M 100 299M 0 0 2132k 0 0:02:23 0:02:23 --:--:-- 2439k md5sum(kubernetes-server-linux-amd64.tar.gz)=7947bd430c4ffc358a6784e51c1d2b0fsha1sum(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 Speed100 22.0M 100 22.0M 0 0 1810k 0 0:00:12 0:00:12 --:--:-- 2296k md5sum(kubernetes-client-darwin-amd64.tar.gz)=f55a8f9c300042e9b16e327ad2788521sha1sum(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/amd64Add '/Users/arungupta/tools/kubernetes/kubernetes-1.5.2/kubernetes/client/bin' to your PATH to use newly-installed binaries.... calling kube-upStarting cluster using os distro: jessieUploading to Amazon S3 ... |
После создания обычного кластера Kubernetes выходные данные отображаются в виде:
|
01
02
03
04
05
06
07
08
09
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; readyWaiting 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 yetAttempt 2 to check Docker on node @ 35.166.195.134 ...workingAttempt 1 to check Docker on node @ 35.166.188.211 ...not working yetAttempt 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-clusterNo 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 AGEip-172-20-0-206.us-west-2.compute.internal Ready 45sip-172-20-0-246.us-west-2.compute.internal Ready 42sValidate output:NAME STATUS MESSAGE ERRORcontroller-manager Healthy ok scheduler Healthy ok etcd-0 Healthy {"health": "true"} etcd-1 Healthy {"health": "true"} Cluster validation succeededDone, listing cluster services: Kubernetes master is running at https://35.165.234.219Elasticsearch is running at https://35.165.234.219/api/v1/proxy/namespaces/kube-system/services/elasticsearch-loggingHeapster is running at https://35.165.234.219/api/v1/proxy/namespaces/kube-system/services/heapsterKibana is running at https://35.165.234.219/api/v1/proxy/namespaces/kube-system/services/kibana-loggingKubeDNS is running at https://35.165.234.219/api/v1/proxy/namespaces/kube-system/services/kube-dnskubernetes-dashboard is running at https://35.165.234.219/api/v1/proxy/namespaces/kube-system/services/kubernetes-dashboardGrafana is running at https://35.165.234.219/api/v1/proxy/namespaces/kube-system/services/monitoring-grafanaInfluxDB 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'. |
Несмотря на то, что ваш кластер Kubernetes в AWS запускается нормально, сценарий kube-up.sh скоро будет устаревшим . Рекомендуемый способ — использовать кластер Kubernetes на Amazon, используя Kops .
Теперь, когда ваш кластер Kubernetes запущен, что вы будете делать дальше?
- Следуйте подробным инструкциям для семинара Kubernetes для разработчиков Java .
- Запустить кластер Couchbase в Кубернетесе
- Узнайте больше о кластере Couchbase в контейнерах
| Ссылка: | Запуск кластера Kubernetes 1.5.x от нашего партнера по JCG Аруна Гупта из Miles to go 3.0… блог. |