1. <dd id="erndk"></dd>
                1. k8s入門之ConfigMap(九)

                  互聯網 2022/4/28 23:16:02

                  ConfigMap是k8s的配置管理工具,通常用來保存明文的配置信息,以key-value形式傳遞配置。 一、使用命令創建ConfigMap對象 1.通過--from-literal參數創建 kubectl create configmap mycm1 --from-literal=appid=order-app --from-literal=appsecret=dfdg12342(1)查看創建…

                  ConfigMap是k8s的配置管理工具,通常用來保存明文的配置信息,以key-value形式傳遞配置。

                  一、使用命令創建ConfigMap對象

                  1.通過--from-literal參數創建

                  kubectl create configmap mycm1 --from-literal=appid=order-app --from-literal=appsecret=dfdg12342
                  

                  (1)查看創建結果

                  kubectl get secret
                  

                  (2)使用describe命令查看詳情

                  kubectl describe secret mysecret1
                  

                  (3)輸出yaml文件格式查看詳情

                  kubectl get secret mysecret1 -o yaml
                  

                  2.通過已有的應用配置文件創建

                  (1)創建一個應用的配置文件

                  vi appsettings.json
                  

                  (2)寫入以下測試內容

                  {
                    "Logging": {
                      "LogLevel": {
                        "Default": "Information",
                        "Microsoft": "Warning",
                        "Microsoft.Hosting.Lifetime": "Information"
                      }
                    },
                    "AllowedHosts": "*"
                  }
                  

                  (3)使用--from-file參數指定該文件

                  kubectl create cm mycm2 --from-file=appsettings.json
                  

                  --from-file可以使用多次;也可以使用目錄,表示該目錄下所有的配置文件都會創建成cm對象,默認key為文件名。

                  (4)查看創建結果

                  二、使用yaml文件創建ConfigMap

                  1.創建yaml文件

                  vi cm-my3.yaml
                  

                  2.編寫yaml文件內容

                  apiVersion: v1
                  kind: ConfigMap
                  metadata: 
                    name: mycm3
                  data:
                    ordersvc-conf: |+
                      IP: "192.168.59.110"
                      Port: 10000
                  

                  3.執行創建命令

                  kubectl apply -f cm-my3.yaml
                  

                  4.查看創建結果

                  三、使用ConfigMap對象

                  1.通過環境變量的形式

                  liunx自帶的命令env,用來查看當前系統的環境變量,我們可以把cm對象設置到環境變量上來查看。

                  (1)新建pod對象的yaml文件

                  vi mycm1-env.yaml
                  

                  (2)編寫yaml文件內容

                  apiVersion: v1
                  kind: Pod
                  metadata:
                    name: pod-test-mycm1
                  spec:
                    containers:
                    - name: pod-test-mycm1-bb
                      image: busybox
                      command: ["/bin/sh", "-c", "env"]
                      # 從cm對象中獲取對應key的值賦值給環境變量
                      env:
                      - name: APPID
                        valueFrom:
                          configMapKeyRef:
                            name: mycm1
                            key: appid
                      - name: APPSECRET
                        valueFrom:
                          configMapKeyRef:
                            name: mycm1
                            key: appsecret
                  

                  (3)創建pod

                  kubectl create -f mycm1-env.yaml
                  

                  (4)查看pod,在默認名稱空間下

                  通過查看此pod的日志,可以看到輸出的環境變量信息是mycm1對象的信息

                  2.通過vloume掛載方式

                  (1)新建pod對象的yaml文件

                  vi mycm2-volume.yaml
                  

                  (2)編寫yaml文件內容

                  apiVersion: v1
                  kind: Pod
                  metadata:
                    name: pod-test-mycm2
                  spec:
                    containers:
                    - name: pod-test-mycm2-bb
                      image: busybox
                      command: ["/bin/sh", "-c", "cat /etc/cms/my-appsettings.json"]
                      volumeMounts:
                      - name: cms
                        mountPath: /etc/cms
                    volumes:
                    - name: cms
                      configMap:
                       name: mycm2
                       items:
                       # 把cm對象掛載到文件名
                       - key: appsettings.json
                         path: my-appsettings.json
                  

                  (3)創建pod

                  kubectl create -f mycm2-volume.yaml
                  

                  (4)查看pod,在默認名稱空間下

                  通過查看此pod的日志,可以看到輸出的信息是mycm2對象中的數據

                  隨時隨地學軟件編程-關注百度小程序和微信小程序
                  關于找一找教程網

                  本站文章僅代表作者觀點,不代表本站立場,所有文章非營利性免費分享。
                  本站提供了軟件編程、網站開發技術、服務器運維、人工智能等等IT技術文章,希望廣大程序員努力學習,讓我們用科技改變世界。
                  [k8s入門之ConfigMap(九)]http://www.yachtsalesaustralia.com/tech/detail-317835.html

                  贊(0)
                  關注微信小程序
                  程序員編程王-隨時隨地學編程

                  掃描二維碼或查找【程序員編程王】

                  可以隨時隨地學編程啦!

                  技術文章導航 更多>
                  掃一掃關注最新編程教程
                  国产在线拍揄自揄视频菠萝

                        1. <dd id="erndk"></dd>