Difference between revisions of "Google Kubernetes Engine"
(→kubectl kontextus) |
(→SDK init) |
||
Line 68: | Line 68: | ||
</pre> | </pre> | ||
- az új projektet hozzá kell rendeli egy billing account-hoz (amihez a bankszámlát beállítottuk | - az új projektet hozzá kell rendeli egy billing account-hoz (amihez a bankszámlát beállítottuk | ||
− | - be kell rajta kapcsolni a Kubernetes Engine API-t. | + | - be kell rajta kapcsolni a Kubernetes Engine API-t. <br> |
https://console.cloud.google.com/apis/library/container.googleapis.com?project=adamproject1 | https://console.cloud.google.com/apis/library/container.googleapis.com?project=adamproject1 | ||
− | + | <br> | |
− | |||
− | |||
− | |||
− | < | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
==Bejelentkezés és kubectl== | ==Bejelentkezés és kubectl== |
Revision as of 19:11, 24 June 2019
Contents
Regisztráció a Google Cloud Platform-ban
https://console.cloud.google.com
Kubernetes Engine API aktiválása a projektben:
Majd a keresőbe írjuk be, hogy Kubernetes. Ekkor bejön
Kattintsunk az Enable-re.
...
A baloldali fő menüben megjelent a Kubernetes Engine menüpont:
Google Cloud SDK beállítása
SDK install
Vegyük fel az új DNF repository-t:
# sudo tee -a /etc/yum.repos.d/google-cloud-sdk.repo << EOM [google-cloud-sdk] name=Google Cloud SDK baseurl=https://packages.cloud.google.com/yum/repos/cloud-sdk-el7-x86_64 enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg EOM
Installáljuk fel
# dnf install google-cloud-sdk ...
SDK init
Inicializáljuk az sdk-t. Ez meg fog nyitni a root nevében futó böngészőt, ahol be kell jelentkezni a google account-ba.
# gcloud init .. You must log in to continue. Would you like to log in (Y/n)? ...
Harmadik lépésként létre kell hozni egy projektet:
# gcloud projects create adamproject1 Create in progress for [https://cloudresourcemanager.googleapis.com/v1/projects/adamproject1].
# gcloud projects list PROJECT_ID NAME PROJECT_NUMBER adamproject1 adamproject1 206600067398
Válasszuk ki az új projektet
# gcloud config set project adamproject1
- az új projektet hozzá kell rendeli egy billing account-hoz (amihez a bankszámlát beállítottuk
- be kell rajta kapcsolni a Kubernetes Engine API-t.
https://console.cloud.google.com/apis/library/container.googleapis.com?project=adamproject1
Bejelentkezés és kubectl
# gcloud config list [core] account = myemail@gmail.com disable_usage_reporting = True project = adamproject1 Your active configuration is: [default]
A disable_usage_reporting anonim adatokat küld a Google-nek, nem a projekthez kapcsolódik.
# gcloud config config-helper configuration: active_configuration: default properties: core: account: myemail@gmail.com disable_usage_reporting: 'True' project: adamproject1 credential: access_token: XXXXX id_token: YYYY token_expiry: '2019-06-22T08:43:33Z' sentinels: config_sentinel: /root/.config/gcloud/config_sentinel
kubectl kontextus
A kubectl konfigurációs fájlja itt van: ~/.kube/config. Minikube esetében ez így néz ki:
apiVersion: v1
kind: Config
clusters:
- cluster:
certificate-authority: /root/.minikube/ca.crt
server: https://192.168.42.224:8443
name: minikube
contexts:
preferences: {}
users:
- name: minikube
user:
client-certificate: /root/.minikube/client.crt
client-key: /root/.minikube/client.key
- context:
cluster: minikube
user: minikube
name: minikube
Miden egyes kubectl parancs a kiválasztott kontextusban fut le. Minden kontextus tartalmaz egy klasztert és egy user-t, amivel végrehajtjuk a parancsokat a klaszteren. A current-context mutatja meg, hogy melyik kontextus van kiválasztva.
Mikor létrehozunk egy cluster-t a gcloud containter cluster paranccsal, akkor a gcloud automatikusan hozzáad egy új kontextust a .kube/config fájlhoz:
# gcloud container clusters ... kubeconfig entry generated for adam1.
Nézzük meg a kontextust:
# kubectl config current-context gke_adamproject1_europe-west6_adam1
És most nézzük bele a config fájlba:
apiVersion: v1
kind: Config
clusters:
- cluster:
certificate-authority-data: DATA+OMITTED
server: https://34.65.220.36
name: gke_adamproject1_europe-west6_adam1
- cluster:
certificate-authority: /root/.minikube/ca.crt
server: https://192.168.42.224:8443
name: minikube
contexts:
- context:
cluster: gke_adamproject1_europe-west6_adam1
user: gke_adamproject1_europe-west6_adam1
name: gke_adamproject1_europe-west6_adam1
- context:
cluster: minikube
user: minikube
name: minikube
current-context: gke_adamproject1_europe-west6_adam1
preferences: {}
users:
- name: gke_adamproject1_europe-west6_adam1
user:
auth-provider:
config:
cmd-args: config config-helper --format=json
cmd-path: /usr/lib64/google-cloud-sdk/bin/gcloud
expiry-key: '{.credential.token_expiry}'
token-key: '{.credential.access_token}'
name: gcp
- name: minikube
user:
client-certificate: /root/.minikube/client.crt
client-key: /root/.minikube/client.key
Ahhoz hogy visszaváltsunk a minikube kontextusra, csak ki kell adni config use-context parancsot.
# kubectl config use-context minikube Switched to context "minikube".
Note
Ha kitöröljük a GKE klasztert a gcloud container clusters delete paranccsal, akkor a kubernetes config fájlból is ki fogja törölni a bejegyzést.
Klaszter létrehozás
gcloud container clusters \ create adam1 \ --region europe-west6 \ --node-locations europe-west6-a,europe-west6-b,europe-west6-c, \ --machine-type n1-standard-1 \ --enable-autoscaling \ --num-nodes 1 \ --max-nodes 3 \ --min-nodes 1
To inspect the contents of your cluster, go to: https://console.cloud.google.com/kubernetes/workload_/gcloud/europe-west6/adam1?project=adamproject1 kubeconfig entry generated for adam1. NAME LOCATION MASTER_VERSION MASTER_IP MACHINE_TYPE NODE_VERSION NUM_NODES STATUS adam1 europe-west6 1.12.8-gke.10 34.65.149.13 n1-standard-1 1.12.8-gke.10 3 RUNNING
Menjünk a Kubernetes Engine felületre, és itt válasszuk a Cluster menüpontot: https://console.cloud.google.com/kubernetes
# kubectl get nodes NAME STATUS ROLES AGE VERSION gke-adam1-default-pool-b9ed6fb1-d955 Ready <none> 2m11s v1.12.8-gke.10 gke-adam1-default-pool-c1ab468d-slqn Ready <none> 2m8s v1.12.8-gke.10 gke-adam1-default-pool-e3b15f3f-98dl Ready <none> 2m7s v1.12.8-gke.10
# gcloud container clusters delete adam1 --region europe-west6 The following clusters will be deleted. - [adam1] in [europe-west6] Do you want to continue (Y/n)? Y