Для создания кластера Kubernetes с использованием Kops требуется домен верхнего уровня или поддомен и настройка размещенных зон Route 53. Этот домен позволяет рабочим узлам обнаружить мастер, а мастер — все серверы etcd. Это также необходимо, чтобы kubectl
мог напрямую общаться с мастером. Это сработало хорошо, но для разработчиков возникли дополнительные трудности.
Kops 1.6.2 добавляет экспериментальную поддержку для обнаружения узлов на основе сплетен. Это делает процесс настройки кластера Kubernetes с использованием Kops без DNS и значительно упрощается.
Давайте взглянем!
-
- Установить или обновить копы:
1
|
brew upgrade kops |
-
- Проверьте версию:
1
2
|
~ $ kops version Version 1.6.2 |
-
- Создайте корзину S3 как «хранилище состояний»:
1
2
|
aws s3api create-bucket --bucket kubernetes-arungupta-me export KOPS_STATE_STORE=s3: //kubernetes-arungupta-me |
-
- Создайте кластер Kubernetes:
1
|
kops create cluster cluster.k8s. local --zones us-east-1a -- yes |
Он показывает вывод как:
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
|
I0622 16:52:07.494558 83656 create_cluster.go:655] Inferred --cloud=aws from zone "us-east-1a" I0622 16:52:07.495012 83656 create_cluster.go:841] Using SSH public key: /Users/argu/ . ssh /id_rsa .pub I0622 16:52:08.540445 83656 subnets.go:183] Assigned CIDR 172.20.32.0 /19 to subnet us-east-1a I0622 16:52:16.327523 83656 apply_cluster.go:396] Gossip DNS: skipping DNS validation I0622 16:52:25.539755 83656 executor.go:91] Tasks: 0 done / 67 total; 32 can run I0622 16:52:29.843320 83656 vfs_castore.go:422] Issuing new certificate: "kubecfg" I0622 16:52:30.108046 83656 vfs_castore.go:422] Issuing new certificate: "kubelet" I0622 16:52:30.139629 83656 vfs_castore.go:422] Issuing new certificate: "kube-scheduler" I0622 16:52:31.072229 83656 vfs_castore.go:422] Issuing new certificate: "kube-proxy" I0622 16:52:31.082560 83656 vfs_castore.go:422] Issuing new certificate: "kube-controller-manager" I0622 16:52:31.579158 83656 vfs_castore.go:422] Issuing new certificate: "kops" I0622 16:52:32.742807 83656 executor.go:91] Tasks: 32 done / 67 total; 13 can run I0622 16:52:43.057189 83656 executor.go:91] Tasks: 45 done / 67 total; 18 can run I0622 16:52:50.047375 83656 executor.go:91] Tasks: 63 done / 67 total; 3 can run I0622 16:53:02.047610 83656 vfs_castore.go:422] Issuing new certificate: "master" I0622 16:53:03.027007 83656 executor.go:91] Tasks: 66 done / 67 total; 1 can run I0622 16:53:04.197637 83656 executor.go:91] Tasks: 67 done / 67 total; 0 can run I0622 16:53:04.884362 83656 update_cluster.go:229] Exporting kubecfg for cluster Kops has set your kubectl context to cluster.k8s. local Cluster is starting. It should be ready in a few minutes. Suggestions: * validate cluster: kops validate cluster * list nodes: kubectl get nodes --show-labels The admin user is specific to Debian. If not using Debian please use the appropriate user based on your OS. * read about installing addons: https: //github .com /kubernetes/kops/blob/master/docs/addons .md |
Подождите несколько минут для создания кластера.
- Проверьте кластер:
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
|
~ $ kops validate cluster Using cluster from kubectl context: cluster.k8s. local Validating cluster cluster.k8s. local INSTANCE GROUPS NAME ROLE MACHINETYPE MIN MAX SUBNETS master-us-east-1a Master m3.medium 1 1 us-east-1a nodes Node t2.medium 2 2 us-east-1a NODE STATUS NAME ROLE READY ip-172-20-36-52.ec2.internal node True ip-172-20-38-117.ec2.internal master True ip-172-20-49-179.ec2.internal node True Your cluster cluster.k8s. local is ready |
- Получить список узлов, используя
kubectl
:
1
2
3
4
5
|
~ $ kubectl get nodes NAME STATUS AGE VERSION ip-172-20-36-52.ec2.internal Ready,node 4h v1.6.2 ip-172-20-38-117.ec2.internal Ready,master 4h v1.6.2 ip-172-20-49-179.ec2.internal Ready,node 4h v1.6.2 |
- Удаление кластера также довольно просто:
1
|
kops delete cluster cluster.k8s. local -- yes |
Это оно!
github.com/arun-gupta/kubernetes-java-sample предоставляет несколько примеров начала работы с Kubernetes.
Проблемы с файлами на github.com/kubernetes/kops/issues .
Ссылка: | Основанный на сплетнях Kubernetes Cluster на AWS с использованием Kops от нашего партнера JCG Аруна Гупты в блоге Miles to go 3.0… . |