Kubernetes 是一個開源的容器編排系統,可讓您輕鬆地部署和管理容器化應用程式。Kubernetes 使用了 Pods、Deployments、Services 等概念來管理容器化應用程式。
您可以使用 kubectl scale
命令來增加 Pods 的數量。例如,要將 my-deployment
的 Pods 數量增加到 2,您可以使用以下命令:
kubectl scale deployment my-deployment --replicas=2
您可以使用 gcloud container clusters resize
命令來增加 Nodes 的數量。例如,要將 my-cluster
的 my-node-pool
的 Nodes 數量增加到 3,您可以使用以下命令:
gcloud container clusters resize my-cluster --node-pool my-node-pool --num-nodes 3
您可以使用 kubectl autoscale
命令來設置 HPA。HPA 會根據應用程式的使用量自動調整 Pods 的數量。例如,要將 my-deployment
的 Pods 數量最大增加到 10,並且當 CPU 使用率達到 70% 時啟動,您可以使用以下命令:
kubectl autoscale deployment my-deployment --max 10 --cpu-percent=70
您可以使用 gcloud container clusters update
命令來設置 Cluster 的 autoscaling。Cluster 的 autoscaling 會根據 Cluster 的使用量自動調整 Nodes 的數量。例如,要將 my-cluster
的 Nodes 數量最小增加到 1,最大增加到 10,您可以使用以下命令:
gcloud container clusters update my-cluster --enable-autoscaling --min-nodes=1 --max-nodes=10
您可以使用 ConfigMap
來加入應用程式的 Configuration。例如,要將 DB_HOST
的值設定為 dbhost
,您可以使用以下命令:
kubectl create configmap my-configmap --from-literal=DB_HOST=dbhost
您可以使用 Secrets
來加入 Password configuration。例如,要將 DB_PASSWORD
的值設定為 dbpassword
,您可以使用以下命令:
kubectl create secret generic my-secrets --from-literal=DB_PASSWORD=dbpassword
您可以使用 nodeSelector
來將服務部署到特定的 node-pools 上。例如,要將 my-deployment
部署到 my-node-pool
上,您可以使用以下命令:
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-deployment
spec:
selector:
matchLabels:
app: my-app
replicas: 2
template:
metadata:
labels:
app: my-app
spec:
containers:
- name: my-container
image: my-registry/my-container:0.0.1
nodeSelector:
nodepool: my-node-pool