kubeconfig entry generated for node-ks.
essh@kubernetes-master:~/node-cluster/dev$ kubectl get pods -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE
terraform-nodejs-6fd8498cb5-29dzx 1/1 Running 0 2m57s 10.12.3.2 gke-node-ks-node-ks-pool-134dada1-c476 none>
terraform-nodejs-6fd8498cb5-jcbj6 0/1 Pending 0 2m58s none> none> none>
terraform-nodejs-6fd8498cb5-lvfjf 1/1 Running 0 2m58s 10.12.1.3 gke-node-ks-node-ks-pool-134dada1-3cdf none>
Как видно POD распределились по пулу нод, при этом не попали на ноду с Kubernetes из-за отсутствия свободного места. Важно заметить, что количество нод в пуле было увеличено автоматически, и только заданное ограничение не позволило создать третью ноду в пуле. Если мы установим remove_default_node_pool в true, то объединим POD Kubernetes и наши POD. По запросам ресурсов, Kubernetes занимает чуть более одного ядра, а наш POD половину, поэтому остальные POD не были созданы, но зато мы сэкономили на ресурсах:
essh@kubernetes-master:~/node-cluster/Kubernetes$ gcloud compute instances list
NAME ZONE MACHINE_TYPE PREEMPTIBLE INTERNAL_IP EXTERNAL_IP STATUS
gke-node-ks-node-ks-pool-495b75fa-08q2 europe-north1-a n1-standard-1 10.166.0.57 35.228.117.98 RUNNING
gke-node-ks-node-ks-pool-495b75fa-wsf5 europe-north1-a n1-standard-1 10.166.0.59 35.228.96.97 RUNNING
essh@kubernetes-master:~/node-cluster/Kubernetes$ gcloud container clusters get-credentials node-ks
Fetching cluster endpoint and auth data.
kubeconfig entry generated for node-ks.
essh@kubernetes-master:~/node-cluster/Kubernetes$ kubectl get pods -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE
terraform-nodejs-6fd8498cb5-97svs 1/1 Running 0 14m 10.12.2.2 gke-node-ks-node-ks-pool-495b75fa-wsf5 none>
terraform-nodejs-6fd8498cb5-d9zkr 0/1 Pending 0 14m none> none> none>
terraform-nodejs-6fd8498cb5-phk8x 0/1 Pending 0 14m none> none> none>
После создания сервисного аккаунту, добавим ключ и проверим его:
essh@kubernetes-master:~/node-cluster/dev$ gcloud auth login essh@kubernetes-master:~/node-cluster/dev$ gcloud projects create node-cluster-prod3 Create in progress for [https://cloudresourcemanager.googleapis.com/v1/projects/node-cluster-prod3]. Waiting for [operations/cp.7153345484959140898] to finish…done. https://medium.com/@pnatraj/how-to-run-gcloud-command-line-using-a-service-account-f39043d515b9
essh@kubernetes-master:~/node-cluster$ gcloud auth application-default login
essh@kubernetes-master:~/node-cluster$ cp ~/Downloads/node-cluster-prod-244519-6fd863dd4d38.json ./kubernetes_prod.json
essh@kubernetes-master:~/node-cluster$ echo "kubernetes_prod.json" >> .gitignore
essh@kubernetes-master:~/node-cluster$ gcloud iam service-accounts list
NAME EMAIL DISABLED
Compute Engine default service account 1008874319751-compute@developer.gserviceaccount.com False
terraform-prod terraform-prod@node-cluster-prod-244519.iam.gserviceaccount.com False
essh@kubernetes-master:~/node-cluster$ gcloud projects list | grep node-cluster
node-cluster-243923 node-cluster 26345118671
node-cluster-prod-244519 node-cluster-prod 1008874319751
Создадим prod-окружение:
essh@kubernetes-master:~/node-cluster$ mkdir prod
essh@kubernetes-master:~/node-cluster$ cd prod/
essh@kubernetes-master:~/node-cluster/prod$ cp ../main.tf ../kubernetes_prod_key.json .
essh@kubernetes-master:~/node-cluster/prod$ gcloud config set project node-cluster-prod-244519
Updated property [core/project].
Конец ознакомительного фрагмента.
Текст предоставлен ООО «ЛитРес».
Прочитайте эту книгу целиком, купив полную легальную версию на ЛитРес.
Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.
Вы ознакомились с фрагментом книги.
Для бесплатного чтения открыта только часть текста.
Приобретайте полный текст книги у нашего партнера:
Полная версия книги