在 Azure Kubernetes 服務中,我的目標是使用通用 YAML 檔案配置暫存和生產 k8 集群,其中關鍵值和環境變數從 ConfigMap 引數化。
我可以使用 valueFrom 輕松設定容器環境變數,但我想在 YAML 檔案的其他區域使用 ConfigMap 值,例如:
暫存配置-map.yaml:
kind: ConfigMap
apiVersion: v1
metadata:
name: base-config
data:
ENVIRONMENT_NAME: staging
...
產品配置-map.yaml:
kind: ConfigMap
apiVersion: v1
metadata:
name: base-config
data:
ENVIRONMENT_NAME: prod
...
common-cluster-config.yaml:
apiVersion: v1
kind: Service
metadata:
name: my-amazing-microservice
annotations:
service.beta.kubernetes.io/azure-dns-label-name: "my-amazing-microservice-$ENVIRONMENT_NAME"
spec:
type: LoadBalancer
ports:
- targetPort: 5000
name: port5000
port: 5000
protocol: TCP
selector:
app: my-amazing-microservice
---
...
請注意對 $ENVIRONMENT_NAME 的參考,這是我想從 ConfigMap 插入內容的地方。
我可以這樣做,這樣我就不必為登臺和生產維護重復的清單嗎?
uj5u.com熱心網友回復:
不,您不能使用 vanilla k8 的清單。ConfigMap 只是在容器啟動時掛載到容器中的資源。作為環境變數或檔案。您無法在部署時訪問配置映射。
我建議研究可以通過模板做到這一點的helm 。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/462478.html
標籤:Kubernetes 天蓝色 配置图
上一篇:如何將mixpanel添加到我的SSRquasar專案中
下一篇:強制pod創建順序
