Kubernetes的Helm & 命名空間


Helm類似 npm,pip,docker hub, 可以理解為是一個軟件庫,可以方便快速的為我們的集群安裝一些第三方軟件。
使用 Helm 我們可以非常方便的就搭建出來 MongoDB / MySQL 副本集群,YAML 文件別人都給我們寫好了,直接使用。官網應用中心

安裝 文檔
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash

# 安裝
helm repo add bitnami https://charts.bitnami.com/bitnami
helm install my-mongo bitnami/mongodb

# 指定密碼和架構
helm install my-mongo bitnami/mongodb --set architecture="replicaset",auth.rootPassword="mongopass"

# 刪除
helm ls
heml delete my-mongo

# 查看密碼
kubectl get secret my-mongo-mongodb -o json
kubectl get secret my-mongo-mongodb -o yaml > secret.yaml

# 臨時運行一個包含 mongo client 的 debian 系統
kubectl run mongodb-client --rm --tty -i --restart='Never' --image docker.io/bitnami/mongodb:4.4.10-debian-10-r20 --command -- bash

# 進去 mongodb
mongo --host "my-mongo-mongodb" -u root -p mongopass

# 也可以轉發集群里的端口到宿主機訪問 mongodb
kubectl port-forward svc/my-mongo-mongodb 27017:27018

如果一個集群中部署了多個應用,所有應用都在一起,就不太好管理,也可以導致名字沖突等。
我們可以使用 namespace 把應用划分到不同的命名空間,跟代碼里的 namespace 是一個概念,只是為了划分空間。

# 創建命名空間
kubectl create namespace testapp
# 部署應用到指定的命名空間
kubectl apply -f app.yml --namespace testapp
# 查詢
kubectl get pod --namespace kube-system

可以用 kubens 快速切換 namespace

# 切換命名空間
kubens kube-system
# 回到上個命名空間
kubens -
# 切換集群
kubectx minikube

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM