Kubernetes K8S之存储ConfigMap详解
<p> </p><blockquote>
<p>K8S之存储ConfigMap概述与说明,并详解常用ConfigMap示例</p>
</blockquote>
<p> </p>
<h1 id="主机配置规划">主机配置规划</h1>
<table>
<thead>
<tr><th>服务器名称(hostname)</th><th>系统版本</th><th>配置</th><th>内网IP</th><th>外网IP(模拟)</th></tr>
</thead>
<tbody>
<tr>
<td>k8s-master</td>
<td>CentOS7.7</td>
<td>2C/4G/20G</td>
<td>172.16.1.110</td>
<td>10.0.0.110</td>
</tr>
<tr>
<td>k8s-node01</td>
<td>CentOS7.7</td>
<td>2C/4G/20G</td>
<td>172.16.1.111</td>
<td>10.0.0.111</td>
</tr>
<tr>
<td>k8s-node02</td>
<td>CentOS7.7</td>
<td>2C/4G/20G</td>
<td>172.16.1.112</td>
<td>10.0.0.112</td>
</tr>
</tbody>
</table>
<p> </p>
<h1 id="ConfigMap概述">ConfigMap概述</h1>
<p>ConfigMap 是一种 API 对象,用来将<span style="color: rgba(255, 0, 0, 1)">非机密性的数据保存到健值对</span>中。使用时可以用作<span style="color: rgba(255, 0, 0, 1)">环境变量</span>、<span style="color: rgba(255, 0, 0, 1)">命令行参数</span>或者<span style="color: rgba(255, 0, 0, 1)">存储卷</span>中的配置文件。</p>
<p>ConfigMap 将环境配置信息和容器镜像解耦,便于应用配置的修改。当你需要储存机密信息时可以使用 Secret 对象。</p>
<p><span style="color: rgba(255, 0, 0, 1)">备注:ConfigMap 并不提供保密或者加密功能。如果你想存储的数据是机密的,请使用 Secret;或者使用其他第三方工具来保证数据的私密性,而不是用 ConfigMap。</span></p>
<p> </p>
<h1 id="ConfigMap创建方式">ConfigMap创建方式</h1>
<h2 id="通过目录创建">通过目录创建</h2>
<p>配置文件目录</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)"> 1</span> # <span style="color: rgba(0, 0, 255, 1)">pwd</span>
<span style="color: rgba(0, 128, 128, 1)"> 2</span> /root/k8s_practice/<span style="color: rgba(0, 0, 0, 1)">storage
</span><span style="color: rgba(0, 128, 128, 1)"> 3</span> # ll /root/k8s_practice/storage/<span style="color: rgba(0, 0, 0, 1)">configmap # 配置文件存在哪个目录下
</span><span style="color: rgba(0, 128, 128, 1)"> 4</span> total <span style="color: rgba(128, 0, 128, 1)">8</span>
<span style="color: rgba(0, 128, 128, 1)"> 5</span> -rw-r--r-- <span style="color: rgba(128, 0, 128, 1)">1</span> root root <span style="color: rgba(128, 0, 128, 1)">159</span> Jun<span style="color: rgba(128, 0, 128, 1)">7</span> <span style="color: rgba(128, 0, 128, 1)">14</span>:<span style="color: rgba(128, 0, 128, 1)">52</span><span style="color: rgba(0, 0, 0, 1)"> game.properties
</span><span style="color: rgba(0, 128, 128, 1)"> 6</span> -rw-r--r-- <span style="color: rgba(128, 0, 128, 1)">1</span> root root<span style="color: rgba(128, 0, 128, 1)">83</span> Jun<span style="color: rgba(128, 0, 128, 1)">7</span> <span style="color: rgba(128, 0, 128, 1)">14</span>:<span style="color: rgba(128, 0, 128, 1)">53</span><span style="color: rgba(0, 0, 0, 1)"> ui.properties
</span><span style="color: rgba(0, 128, 128, 1)"> 7</span> #
</span><span style="color: rgba(0, 128, 128, 1)"> 8</span> # <span style="color: rgba(0, 0, 255, 1)">cat</span> configmap/<span style="color: rgba(0, 0, 0, 1)">game.properties # 涉及文件1
</span><span style="color: rgba(0, 128, 128, 1)"> 9</span> enemies=<span style="color: rgba(0, 0, 0, 1)">aliens
</span><span style="color: rgba(0, 128, 128, 1)">10</span> lives=<span style="color: rgba(128, 0, 128, 1)">3</span>
<span style="color: rgba(0, 128, 128, 1)">11</span> enemies.cheat=<span style="color: rgba(0, 0, 255, 1)">true</span>
<span style="color: rgba(0, 128, 128, 1)">12</span> enemies.cheat.level=<span style="color: rgba(0, 0, 0, 1)">noGoodRotten
</span><span style="color: rgba(0, 128, 128, 1)">13</span> secret.code.passphrase=<span style="color: rgba(0, 0, 0, 1)">UUDDLRLRBABAs
</span><span style="color: rgba(0, 128, 128, 1)">14</span> secret.code.allowed=<span style="color: rgba(0, 0, 255, 1)">true</span>
<span style="color: rgba(0, 128, 128, 1)">15</span> secret.code.lives=<span style="color: rgba(128, 0, 128, 1)">30</span>
<span style="color: rgba(0, 128, 128, 1)">16</span>
<span style="color: rgba(0, 128, 128, 1)">17</span> #
</span><span style="color: rgba(0, 128, 128, 1)">18</span> # <span style="color: rgba(0, 0, 255, 1)">cat</span> configmap/<span style="color: rgba(0, 0, 0, 1)">ui.properties # 涉及文件2
</span><span style="color: rgba(0, 128, 128, 1)">19</span> color.good=<span style="color: rgba(0, 0, 0, 1)">purple
</span><span style="color: rgba(0, 128, 128, 1)">20</span> color.bad=<span style="color: rgba(0, 0, 0, 1)">yellow
</span><span style="color: rgba(0, 128, 128, 1)">21</span> allow.textmode=<span style="color: rgba(0, 0, 255, 1)">true</span>
<span style="color: rgba(0, 128, 128, 1)">22</span> how.<span style="color: rgba(0, 0, 255, 1)">nice</span>.to.look=fairlyNice</pre>
</div>
<p> </p>
<p>创建ConfigMap并查看状态</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)">1</span> # kubectl create configmap game-config --from-<span style="color: rgba(0, 0, 255, 1)">file</span>=/root/k8s_practice/storage/<span style="color: rgba(0, 0, 0, 1)">configmap
</span><span style="color: rgba(0, 128, 128, 1)">2</span> configmap/game-<span style="color: rgba(0, 0, 0, 1)">config created
</span><span style="color: rgba(0, 128, 128, 1)">3</span> #
</span><span style="color: rgba(0, 128, 128, 1)">4</span> # kubectl get configmap
</span><span style="color: rgba(0, 128, 128, 1)">5</span> <span style="color: rgba(0, 0, 0, 1)">NAME DATA AGE
</span><span style="color: rgba(0, 128, 128, 1)">6</span> game-config <span style="color: rgba(128, 0, 128, 1)">2</span> 14s</pre>
</div>
<p> </p>
<p>查看ConfigMap有哪些数据</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)"> 1</span> # kubectl get configmap -<span style="color: rgba(0, 0, 0, 1)">o yaml ##### 查看方式1
</span><span style="color: rgba(0, 128, 128, 1)"> 2</span> <span style="color: rgba(0, 0, 0, 1)">apiVersion: v1
</span><span style="color: rgba(0, 128, 128, 1)"> 3</span> <span style="color: rgba(0, 0, 0, 1)">items:
</span><span style="color: rgba(0, 128, 128, 1)"> 4</span> -<span style="color: rgba(0, 0, 0, 1)"> apiVersion: v1
</span><span style="color: rgba(0, 128, 128, 1)"> 5</span> <span style="color: rgba(0, 0, 0, 1)">data:
</span><span style="color: rgba(0, 128, 128, 1)"> 6</span> game.properties: |+ ##### 本段最后有一行空格,+<span style="color: rgba(0, 0, 0, 1)"> 表示保留字符串行末尾的换行
</span><span style="color: rgba(0, 128, 128, 1)"> 7</span> enemies=<span style="color: rgba(0, 0, 0, 1)">aliens
</span><span style="color: rgba(0, 128, 128, 1)"> 8</span> lives=<span style="color: rgba(128, 0, 128, 1)">3</span>
<span style="color: rgba(0, 128, 128, 1)"> 9</span> enemies.cheat=<span style="color: rgba(0, 0, 255, 1)">true</span>
<span style="color: rgba(0, 128, 128, 1)">10</span> enemies.cheat.level=<span style="color: rgba(0, 0, 0, 1)">noGoodRotten
</span><span style="color: rgba(0, 128, 128, 1)">11</span> secret.code.passphrase=<span style="color: rgba(0, 0, 0, 1)">UUDDLRLRBABAs
</span><span style="color: rgba(0, 128, 128, 1)">12</span> secret.code.allowed=<span style="color: rgba(0, 0, 255, 1)">true</span>
<span style="color: rgba(0, 128, 128, 1)">13</span> secret.code.lives=<span style="color: rgba(128, 0, 128, 1)">30</span>
<span style="color: rgba(0, 128, 128, 1)">14</span>
<span style="color: rgba(0, 128, 128, 1)">15</span> ui.properties: |
<span style="color: rgba(0, 128, 128, 1)">16</span> color.good=<span style="color: rgba(0, 0, 0, 1)">purple
</span><span style="color: rgba(0, 128, 128, 1)">17</span> color.bad=<span style="color: rgba(0, 0, 0, 1)">yellow
</span><span style="color: rgba(0, 128, 128, 1)">18</span> allow.textmode=<span style="color: rgba(0, 0, 255, 1)">true</span>
<span style="color: rgba(0, 128, 128, 1)">19</span> how.<span style="color: rgba(0, 0, 255, 1)">nice</span>.to.look=<span style="color: rgba(0, 0, 0, 1)">fairlyNice
</span><span style="color: rgba(0, 128, 128, 1)">20</span> <span style="color: rgba(0, 0, 0, 1)">kind: ConfigMap
</span><span style="color: rgba(0, 128, 128, 1)">21</span> <span style="color: rgba(0, 0, 0, 1)">metadata:
</span><span style="color: rgba(0, 128, 128, 1)">22</span> creationTimestamp: <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">2020-06-07T06:57:28Z</span><span style="color: rgba(128, 0, 0, 1)">"</span>
<span style="color: rgba(0, 128, 128, 1)">23</span> name: game-<span style="color: rgba(0, 0, 0, 1)">config
</span><span style="color: rgba(0, 128, 128, 1)">24</span> <span style="color: rgba(0, 0, 0, 1)"> namespace: default
</span><span style="color: rgba(0, 128, 128, 1)">25</span> resourceVersion: <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">889177</span><span style="color: rgba(128, 0, 0, 1)">"</span>
<span style="color: rgba(0, 128, 128, 1)">26</span> selfLink: /api/v1/namespaces/default/configmaps/game-<span style="color: rgba(0, 0, 0, 1)">config
</span><span style="color: rgba(0, 128, 128, 1)">27</span> uid: 6952ac85-ded0-4c5e-89fd-<span style="color: rgba(0, 0, 0, 1)">b0c6f0546ecf
</span><span style="color: rgba(0, 128, 128, 1)">28</span> <span style="color: rgba(0, 0, 0, 1)">kind: List
</span><span style="color: rgba(0, 128, 128, 1)">29</span> <span style="color: rgba(0, 0, 0, 1)">metadata:
</span><span style="color: rgba(0, 128, 128, 1)">30</span> resourceVersion: <span style="color: rgba(128, 0, 0, 1)">""</span>
<span style="color: rgba(0, 128, 128, 1)">31</span> selfLink: <span style="color: rgba(128, 0, 0, 1)">""</span>
<span style="color: rgba(0, 128, 128, 1)">32</span> #
</span><span style="color: rgba(0, 128, 128, 1)">33</span> # kubectl describe configmap game-<span style="color: rgba(0, 0, 0, 1)">config ##### 查看方式2
</span><span style="color: rgba(0, 128, 128, 1)">34</span> Name: game-<span style="color: rgba(0, 0, 0, 1)">config
</span><span style="color: rgba(0, 128, 128, 1)">35</span> <span style="color: rgba(0, 0, 0, 1)">Namespace: default
</span><span style="color: rgba(0, 128, 128, 1)">36</span> Labels: <none>
<span style="color: rgba(0, 128, 128, 1)">37</span> Annotations:<none>
<span style="color: rgba(0, 128, 128, 1)">38</span>
<span style="color: rgba(0, 128, 128, 1)">39</span> <span style="color: rgba(0, 0, 0, 1)">Data
</span><span style="color: rgba(0, 128, 128, 1)">40</span> ====
<span style="color: rgba(0, 128, 128, 1)">41</span> <span style="color: rgba(0, 0, 0, 1)">game.properties:
</span><span style="color: rgba(0, 128, 128, 1)">42</span> ----
<span style="color: rgba(0, 128, 128, 1)">43</span> enemies=<span style="color: rgba(0, 0, 0, 1)">aliens
</span><span style="color: rgba(0, 128, 128, 1)">44</span> lives=<span style="color: rgba(128, 0, 128, 1)">3</span>
<span style="color: rgba(0, 128, 128, 1)">45</span> enemies.cheat=<span style="color: rgba(0, 0, 255, 1)">true</span>
<span style="color: rgba(0, 128, 128, 1)">46</span> enemies.cheat.level=<span style="color: rgba(0, 0, 0, 1)">noGoodRotten
</span><span style="color: rgba(0, 128, 128, 1)">47</span> secret.code.passphrase=<span style="color: rgba(0, 0, 0, 1)">UUDDLRLRBABAs
</span><span style="color: rgba(0, 128, 128, 1)">48</span> secret.code.allowed=<span style="color: rgba(0, 0, 255, 1)">true</span>
<span style="color: rgba(0, 128, 128, 1)">49</span> secret.code.lives=<span style="color: rgba(128, 0, 128, 1)">30</span>
<span style="color: rgba(0, 128, 128, 1)">50</span>
<span style="color: rgba(0, 128, 128, 1)">51</span>
<span style="color: rgba(0, 128, 128, 1)">52</span> <span style="color: rgba(0, 0, 0, 1)">ui.properties:
</span><span style="color: rgba(0, 128, 128, 1)">53</span> ----
<span style="color: rgba(0, 128, 128, 1)">54</span> color.good=<span style="color: rgba(0, 0, 0, 1)">purple
</span><span style="color: rgba(0, 128, 128, 1)">55</span> color.bad=<span style="color: rgba(0, 0, 0, 1)">yellow
</span><span style="color: rgba(0, 128, 128, 1)">56</span> allow.textmode=<span style="color: rgba(0, 0, 255, 1)">true</span>
<span style="color: rgba(0, 128, 128, 1)">57</span> how.<span style="color: rgba(0, 0, 255, 1)">nice</span>.to.look=<span style="color: rgba(0, 0, 0, 1)">fairlyNice
</span><span style="color: rgba(0, 128, 128, 1)">58</span>
<span style="color: rgba(0, 128, 128, 1)">59</span> Events:<none></pre>
</div>
<p> </p>
<h2 id="通过文件创建">通过文件创建</h2>
<p>配置文件位置</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)"> 1</span> # <span style="color: rgba(0, 0, 255, 1)">pwd</span>
<span style="color: rgba(0, 128, 128, 1)"> 2</span> /root/k8s_practice/<span style="color: rgba(0, 0, 0, 1)">storage
</span><span style="color: rgba(0, 128, 128, 1)"> 3</span> # <span style="color: rgba(0, 0, 255, 1)">cat</span> /root/k8s_practice/storage/configmap/<span style="color: rgba(0, 0, 0, 1)">game.properties
</span><span style="color: rgba(0, 128, 128, 1)"> 4</span> enemies=<span style="color: rgba(0, 0, 0, 1)">aliens
</span><span style="color: rgba(0, 128, 128, 1)"> 5</span> lives=<span style="color: rgba(128, 0, 128, 1)">3</span>
<span style="color: rgba(0, 128, 128, 1)"> 6</span> enemies.cheat=<span style="color: rgba(0, 0, 255, 1)">true</span>
<span style="color: rgba(0, 128, 128, 1)"> 7</span> enemies.cheat.level=<span style="color: rgba(0, 0, 0, 1)">noGoodRotten
</span><span style="color: rgba(0, 128, 128, 1)"> 8</span> secret.code.passphrase=<span style="color: rgba(0, 0, 0, 1)">UUDDLRLRBABAs
</span><span style="color: rgba(0, 128, 128, 1)"> 9</span> secret.code.allowed=<span style="color: rgba(0, 0, 255, 1)">true</span>
<span style="color: rgba(0, 128, 128, 1)">10</span> secret.code.lives=<span style="color: rgba(128, 0, 128, 1)">30</span></pre>
</div>
<p> </p>
<p>创建ConfigMap并查看状态</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)">1</span> # kubectl create configmap game-config-<span style="color: rgba(128, 0, 128, 1)">2</span> --from-<span style="color: rgba(0, 0, 255, 1)">file</span>=/root/k8s_practice/storage/configmap/<span style="color: rgba(0, 0, 0, 1)">game.properties
</span><span style="color: rgba(0, 128, 128, 1)">2</span> configmap/game-config-<span style="color: rgba(128, 0, 128, 1)">2</span><span style="color: rgba(0, 0, 0, 1)"> created
</span><span style="color: rgba(0, 128, 128, 1)">3</span> #
</span><span style="color: rgba(0, 128, 128, 1)">4</span> # kubectl get configmap game-config-<span style="color: rgba(128, 0, 128, 1)">2</span>
<span style="color: rgba(0, 128, 128, 1)">5</span> <span style="color: rgba(0, 0, 0, 1)">NAME DATA AGE
</span><span style="color: rgba(0, 128, 128, 1)">6</span> game-config-<span style="color: rgba(128, 0, 128, 1)">2</span> <span style="color: rgba(128, 0, 128, 1)">1</span> 29s</pre>
</div>
<p> </p>
<p>查看ConfigMap有哪些数据</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)"> 1</span> # kubectl get configmap game-config-<span style="color: rgba(128, 0, 128, 1)">2</span> -<span style="color: rgba(0, 0, 0, 1)">o yaml ##### 查看方式1
</span><span style="color: rgba(0, 128, 128, 1)"> 2</span> <span style="color: rgba(0, 0, 0, 1)">apiVersion: v1
</span><span style="color: rgba(0, 128, 128, 1)"> 3</span> <span style="color: rgba(0, 0, 0, 1)">data:
</span><span style="color: rgba(0, 128, 128, 1)"> 4</span> game.properties: |+ ##### 本段最后有一行空格,+<span style="color: rgba(0, 0, 0, 1)"> 表示保留字符串行末尾的换行
</span><span style="color: rgba(0, 128, 128, 1)"> 5</span> enemies=<span style="color: rgba(0, 0, 0, 1)">aliens
</span><span style="color: rgba(0, 128, 128, 1)"> 6</span> lives=<span style="color: rgba(128, 0, 128, 1)">3</span>
<span style="color: rgba(0, 128, 128, 1)"> 7</span> enemies.cheat=<span style="color: rgba(0, 0, 255, 1)">true</span>
<span style="color: rgba(0, 128, 128, 1)"> 8</span> enemies.cheat.level=<span style="color: rgba(0, 0, 0, 1)">noGoodRotten
</span><span style="color: rgba(0, 128, 128, 1)"> 9</span> secret.code.passphrase=<span style="color: rgba(0, 0, 0, 1)">UUDDLRLRBABAs
</span><span style="color: rgba(0, 128, 128, 1)">10</span> secret.code.allowed=<span style="color: rgba(0, 0, 255, 1)">true</span>
<span style="color: rgba(0, 128, 128, 1)">11</span> secret.code.lives=<span style="color: rgba(128, 0, 128, 1)">30</span>
<span style="color: rgba(0, 128, 128, 1)">12</span>
<span style="color: rgba(0, 128, 128, 1)">13</span> <span style="color: rgba(0, 0, 0, 1)">kind: ConfigMap
</span><span style="color: rgba(0, 128, 128, 1)">14</span> <span style="color: rgba(0, 0, 0, 1)">metadata:
</span><span style="color: rgba(0, 128, 128, 1)">15</span> creationTimestamp: <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">2020-06-07T07:05:47Z</span><span style="color: rgba(128, 0, 0, 1)">"</span>
<span style="color: rgba(0, 128, 128, 1)">16</span> name: game-config-<span style="color: rgba(128, 0, 128, 1)">2</span>
<span style="color: rgba(0, 128, 128, 1)">17</span> <span style="color: rgba(0, 0, 0, 1)">namespace: default
</span><span style="color: rgba(0, 128, 128, 1)">18</span> resourceVersion: <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">890437</span><span style="color: rgba(128, 0, 0, 1)">"</span>
<span style="color: rgba(0, 128, 128, 1)">19</span> selfLink: /api/v1/namespaces/default/configmaps/game-config-<span style="color: rgba(128, 0, 128, 1)">2</span>
<span style="color: rgba(0, 128, 128, 1)">20</span> uid: 02d99802-c23f-45ad-b4e1-<span style="color: rgba(0, 0, 0, 1)">dea9bcb166d8
</span><span style="color: rgba(0, 128, 128, 1)">21</span> #
</span><span style="color: rgba(0, 128, 128, 1)">22</span> # kubectl describe configmap game-config-<span style="color: rgba(128, 0, 128, 1)">2</span><span style="color: rgba(0, 0, 0, 1)"> ##### 查看方式2
</span><span style="color: rgba(0, 128, 128, 1)">23</span> Name: game-config-<span style="color: rgba(128, 0, 128, 1)">2</span>
<span style="color: rgba(0, 128, 128, 1)">24</span> <span style="color: rgba(0, 0, 0, 1)">Namespace: default
</span><span style="color: rgba(0, 128, 128, 1)">25</span> Labels: <none>
<span style="color: rgba(0, 128, 128, 1)">26</span> Annotations:<none>
<span style="color: rgba(0, 128, 128, 1)">27</span>
<span style="color: rgba(0, 128, 128, 1)">28</span> <span style="color: rgba(0, 0, 0, 1)">Data
</span><span style="color: rgba(0, 128, 128, 1)">29</span> ====
<span style="color: rgba(0, 128, 128, 1)">30</span> <span style="color: rgba(0, 0, 0, 1)">game.properties:
</span><span style="color: rgba(0, 128, 128, 1)">31</span> ----
<span style="color: rgba(0, 128, 128, 1)">32</span> enemies=<span style="color: rgba(0, 0, 0, 1)">aliens
</span><span style="color: rgba(0, 128, 128, 1)">33</span> lives=<span style="color: rgba(128, 0, 128, 1)">3</span>
<span style="color: rgba(0, 128, 128, 1)">34</span> enemies.cheat=<span style="color: rgba(0, 0, 255, 1)">true</span>
<span style="color: rgba(0, 128, 128, 1)">35</span> enemies.cheat.level=<span style="color: rgba(0, 0, 0, 1)">noGoodRotten
</span><span style="color: rgba(0, 128, 128, 1)">36</span> secret.code.passphrase=<span style="color: rgba(0, 0, 0, 1)">UUDDLRLRBABAs
</span><span style="color: rgba(0, 128, 128, 1)">37</span> secret.code.allowed=<span style="color: rgba(0, 0, 255, 1)">true</span>
<span style="color: rgba(0, 128, 128, 1)">38</span> secret.code.lives=<span style="color: rgba(128, 0, 128, 1)">30</span>
<span style="color: rgba(0, 128, 128, 1)">39</span>
<span style="color: rgba(0, 128, 128, 1)">40</span>
<span style="color: rgba(0, 128, 128, 1)">41</span> Events:<none></pre>
</div>
<p> </p>
<h2 id="通过命令行创建">通过命令行创建</h2>
<p>创建ConfigMap并查看状态</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)">1</span> # <span style="color: rgba(0, 0, 255, 1)">pwd</span>
<span style="color: rgba(0, 128, 128, 1)">2</span> /root/k8s_practice/<span style="color: rgba(0, 0, 0, 1)">storage
</span><span style="color: rgba(0, 128, 128, 1)">3</span> # kubectl create configmap special-config --from-literal=special.how=very --from-literal=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">special.type=charm</span><span style="color: rgba(128, 0, 0, 1)">"</span>
<span style="color: rgba(0, 128, 128, 1)">4</span> configmap/special-<span style="color: rgba(0, 0, 0, 1)">config created
</span><span style="color: rgba(0, 128, 128, 1)">5</span> #
</span><span style="color: rgba(0, 128, 128, 1)">6</span> # kubectl get configmap special-<span style="color: rgba(0, 0, 0, 1)">config
</span><span style="color: rgba(0, 128, 128, 1)">7</span> <span style="color: rgba(0, 0, 0, 1)">NAME DATA AGE
</span><span style="color: rgba(0, 128, 128, 1)">8</span> special-config <span style="color: rgba(128, 0, 128, 1)">2</span> 23s</pre>
</div>
<p> </p>
<p>查看ConfigMap有哪些数据</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)"> 1</span> # kubectl get configmap special-config -<span style="color: rgba(0, 0, 0, 1)">o yaml ##### 查看方式1
</span><span style="color: rgba(0, 128, 128, 1)"> 2</span> <span style="color: rgba(0, 0, 0, 1)">apiVersion: v1
</span><span style="color: rgba(0, 128, 128, 1)"> 3</span> <span style="color: rgba(0, 0, 0, 1)">data:
</span><span style="color: rgba(0, 128, 128, 1)"> 4</span> <span style="color: rgba(0, 0, 0, 1)">special.how: very
</span><span style="color: rgba(0, 128, 128, 1)"> 5</span> <span style="color: rgba(0, 0, 0, 1)">special.type: charm
</span><span style="color: rgba(0, 128, 128, 1)"> 6</span> <span style="color: rgba(0, 0, 0, 1)">kind: ConfigMap
</span><span style="color: rgba(0, 128, 128, 1)"> 7</span> <span style="color: rgba(0, 0, 0, 1)">metadata:
</span><span style="color: rgba(0, 128, 128, 1)"> 8</span> creationTimestamp: <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">2020-06-07T09:32:04Z</span><span style="color: rgba(128, 0, 0, 1)">"</span>
<span style="color: rgba(0, 128, 128, 1)"> 9</span> name: special-<span style="color: rgba(0, 0, 0, 1)">config
</span><span style="color: rgba(0, 128, 128, 1)">10</span> <span style="color: rgba(0, 0, 0, 1)">namespace: default
</span><span style="color: rgba(0, 128, 128, 1)">11</span> resourceVersion: <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">912702</span><span style="color: rgba(128, 0, 0, 1)">"</span>
<span style="color: rgba(0, 128, 128, 1)">12</span> selfLink: /api/v1/namespaces/default/configmaps/special-<span style="color: rgba(0, 0, 0, 1)">config
</span><span style="color: rgba(0, 128, 128, 1)">13</span> uid: 76698e78-<span style="color: rgba(128, 0, 128, 1)">1380</span>-<span style="color: rgba(128, 0, 128, 1)">4826</span>-b5ac-<span style="color: rgba(0, 0, 0, 1)">d9c81f746eac
</span><span style="color: rgba(0, 128, 128, 1)">14</span> #
</span><span style="color: rgba(0, 128, 128, 1)">15</span> # kubectl describe configmap special-<span style="color: rgba(0, 0, 0, 1)">config ##### 查看方式2
</span><span style="color: rgba(0, 128, 128, 1)">16</span> Name: special-<span style="color: rgba(0, 0, 0, 1)">config
</span><span style="color: rgba(0, 128, 128, 1)">17</span> <span style="color: rgba(0, 0, 0, 1)">Namespace: default
</span><span style="color: rgba(0, 128, 128, 1)">18</span> Labels: <none>
<span style="color: rgba(0, 128, 128, 1)">19</span> Annotations:<none>
<span style="color: rgba(0, 128, 128, 1)">20</span>
<span style="color: rgba(0, 128, 128, 1)">21</span> <span style="color: rgba(0, 0, 0, 1)">Data
</span><span style="color: rgba(0, 128, 128, 1)">22</span> ====
<span style="color: rgba(0, 128, 128, 1)">23</span> <span style="color: rgba(0, 0, 0, 1)">special.how:
</span><span style="color: rgba(0, 128, 128, 1)">24</span> ----
<span style="color: rgba(0, 128, 128, 1)">25</span> <span style="color: rgba(0, 0, 0, 1)">very
</span><span style="color: rgba(0, 128, 128, 1)">26</span> <span style="color: rgba(0, 0, 0, 1)">special.type:
</span><span style="color: rgba(0, 128, 128, 1)">27</span> ----
<span style="color: rgba(0, 128, 128, 1)">28</span> <span style="color: rgba(0, 0, 0, 1)">charm
</span><span style="color: rgba(0, 128, 128, 1)">29</span> Events:<none></pre>
</div>
<p> </p>
<h2 id="通过yaml文件创建">通过yaml文件创建</h2>
<p>yaml文件</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)"> 1</span> # <span style="color: rgba(0, 0, 255, 1)">pwd</span>
<span style="color: rgba(0, 128, 128, 1)"> 2</span> /root/k8s_practice/<span style="color: rgba(0, 0, 0, 1)">storage
</span><span style="color: rgba(0, 128, 128, 1)"> 3</span> # <span style="color: rgba(0, 0, 255, 1)">cat</span><span style="color: rgba(0, 0, 0, 1)"> configmap.yaml
</span><span style="color: rgba(0, 128, 128, 1)"> 4</span> <span style="color: rgba(0, 0, 0, 1)">apiVersion: v1
</span><span style="color: rgba(0, 128, 128, 1)"> 5</span> <span style="color: rgba(0, 0, 0, 1)">kind: ConfigMap
</span><span style="color: rgba(0, 128, 128, 1)"> 6</span> <span style="color: rgba(0, 0, 0, 1)">metadata:
</span><span style="color: rgba(0, 128, 128, 1)"> 7</span> name: configmap-<span style="color: rgba(0, 0, 0, 1)">demo
</span><span style="color: rgba(0, 128, 128, 1)"> 8</span> <span style="color: rgba(0, 0, 0, 1)">data:
</span><span style="color: rgba(0, 128, 128, 1)"> 9</span> <span style="color: rgba(0, 0, 0, 1)"># 类属性键;每一个键都映射到一个简单的值
</span><span style="color: rgba(0, 128, 128, 1)">10</span> player_initial_lives: <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">3</span><span style="color: rgba(128, 0, 0, 1)">"</span>
<span style="color: rgba(0, 128, 128, 1)">11</span> ui_properties_file_name: <span style="color: rgba(128, 0, 0, 1)">'</span><span style="color: rgba(128, 0, 0, 1)">user-interface.properties</span><span style="color: rgba(128, 0, 0, 1)">'</span>
<span style="color: rgba(0, 128, 128, 1)">12</span> <span style="color: rgba(0, 0, 0, 1)">#
</span><span style="color: rgba(0, 128, 128, 1)">13</span> <span style="color: rgba(0, 0, 0, 1)"># 类文件键
</span><span style="color: rgba(0, 128, 128, 1)">14</span> game.properties: |
<span style="color: rgba(0, 128, 128, 1)">15</span> enemy.types=<span style="color: rgba(0, 0, 0, 1)">aliens,monsters
</span><span style="color: rgba(0, 128, 128, 1)">16</span> player.maximum-lives=<span style="color: rgba(128, 0, 128, 1)">5</span>
<span style="color: rgba(0, 128, 128, 1)">17</span> user-interface.properties: |
<span style="color: rgba(0, 128, 128, 1)">18</span> color.good=<span style="color: rgba(0, 0, 0, 1)">purple
</span><span style="color: rgba(0, 128, 128, 1)">19</span> color.bad=<span style="color: rgba(0, 0, 0, 1)">yellow
</span><span style="color: rgba(0, 128, 128, 1)">20</span> allow.textmode=<span style="color: rgba(0, 0, 255, 1)">true</span></pre>
</div>
<p> </p>
<p>创建ConfigMap并查看状态</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)">1</span> # kubectl apply -<span style="color: rgba(0, 0, 0, 1)">f configmap.yaml
</span><span style="color: rgba(0, 128, 128, 1)">2</span> configmap/configmap-<span style="color: rgba(0, 0, 0, 1)">demo created
</span><span style="color: rgba(0, 128, 128, 1)">3</span> # kubectl get configmap configmap-<span style="color: rgba(0, 0, 0, 1)">demo
</span><span style="color: rgba(0, 128, 128, 1)">4</span> <span style="color: rgba(0, 0, 0, 1)">NAME DATA AGE
</span><span style="color: rgba(0, 128, 128, 1)">5</span> configmap-demo <span style="color: rgba(128, 0, 128, 1)">4</span> 2m59s</pre>
</div>
<p> </p>
<p>查看ConfigMap有哪些数据</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)"> 1</span> # kubectl get configmap configmap-demo -<span style="color: rgba(0, 0, 0, 1)">o yaml ##### 查看方式1
</span><span style="color: rgba(0, 128, 128, 1)"> 2</span> <span style="color: rgba(0, 0, 0, 1)">apiVersion: v1
</span><span style="color: rgba(0, 128, 128, 1)"> 3</span> <span style="color: rgba(0, 0, 0, 1)">data:
</span><span style="color: rgba(0, 128, 128, 1)"> 4</span> game.properties: |
<span style="color: rgba(0, 128, 128, 1)"> 5</span> enemy.types=<span style="color: rgba(0, 0, 0, 1)">aliens,monsters
</span><span style="color: rgba(0, 128, 128, 1)"> 6</span> player.maximum-lives=<span style="color: rgba(128, 0, 128, 1)">5</span>
<span style="color: rgba(0, 128, 128, 1)"> 7</span> player_initial_lives: <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">3</span><span style="color: rgba(128, 0, 0, 1)">"</span>
<span style="color: rgba(0, 128, 128, 1)"> 8</span> ui_properties_file_name: user-<span style="color: rgba(0, 0, 0, 1)">interface.properties
</span><span style="color: rgba(0, 128, 128, 1)"> 9</span> user-interface.properties: |
<span style="color: rgba(0, 128, 128, 1)">10</span> color.good=<span style="color: rgba(0, 0, 0, 1)">purple
</span><span style="color: rgba(0, 128, 128, 1)">11</span> color.bad=<span style="color: rgba(0, 0, 0, 1)">yellow
</span><span style="color: rgba(0, 128, 128, 1)">12</span> allow.textmode=<span style="color: rgba(0, 0, 255, 1)">true</span>
<span style="color: rgba(0, 128, 128, 1)">13</span> <span style="color: rgba(0, 0, 0, 1)">kind: ConfigMap
</span><span style="color: rgba(0, 128, 128, 1)">14</span> <span style="color: rgba(0, 0, 0, 1)">metadata:
</span><span style="color: rgba(0, 128, 128, 1)">15</span> <span style="color: rgba(0, 0, 0, 1)">annotations:
</span><span style="color: rgba(0, 128, 128, 1)">16</span> kubectl.kubernetes.io/<span style="color: rgba(0, 0, 255, 1)">last</span>-applied-configuration: |
<span style="color: rgba(0, 128, 128, 1)">17</span> {<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">apiVersion</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">v1</span><span style="color: rgba(128, 0, 0, 1)">"</span>,<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">data</span><span style="color: rgba(128, 0, 0, 1)">"</span>:{<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">game.properties</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">enemy.types=aliens,monsters\nplayer.maximum-lives=5\n</span><span style="color: rgba(128, 0, 0, 1)">"</span>,<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">player_initial_lives</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">3</span><span style="color: rgba(128, 0, 0, 1)">"</span>,<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">ui_properties_file_name</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">user-interface.properties</span><span style="color: rgba(128, 0, 0, 1)">"</span>,<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">user-interface.properties</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">color.good=purple\ncolor.bad=yellow\nallow.textmode=true\n</span><span style="color: rgba(128, 0, 0, 1)">"</span>},<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">kind</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">ConfigMap</span><span style="color: rgba(128, 0, 0, 1)">"</span>,<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">metadata</span><span style="color: rgba(128, 0, 0, 1)">"</span>:{<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">annotations</span><span style="color: rgba(128, 0, 0, 1)">"</span>:{},<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">name</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">configmap-demo</span><span style="color: rgba(128, 0, 0, 1)">"</span>,<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">namespace</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">default</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">}}
</span><span style="color: rgba(0, 128, 128, 1)">18</span> creationTimestamp: <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">2020-06-07T11:36:46Z</span><span style="color: rgba(128, 0, 0, 1)">"</span>
<span style="color: rgba(0, 128, 128, 1)">19</span> name: configmap-<span style="color: rgba(0, 0, 0, 1)">demo
</span><span style="color: rgba(0, 128, 128, 1)">20</span> <span style="color: rgba(0, 0, 0, 1)">namespace: default
</span><span style="color: rgba(0, 128, 128, 1)">21</span> resourceVersion: <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">931685</span><span style="color: rgba(128, 0, 0, 1)">"</span>
<span style="color: rgba(0, 128, 128, 1)">22</span> selfLink: /api/v1/namespaces/default/configmaps/configmap-<span style="color: rgba(0, 0, 0, 1)">demo
</span><span style="color: rgba(0, 128, 128, 1)">23</span> uid: fdad7000-87bd-4b72-be98-<span style="color: rgba(0, 0, 0, 1)">40dd8fe6400a
</span><span style="color: rgba(0, 128, 128, 1)">24</span> #
</span><span style="color: rgba(0, 128, 128, 1)">25</span> #
</span><span style="color: rgba(0, 128, 128, 1)">26</span> # kubectl describe configmap configmap-<span style="color: rgba(0, 0, 0, 1)">demo ##### 查看方式2
</span><span style="color: rgba(0, 128, 128, 1)">27</span> Name: configmap-<span style="color: rgba(0, 0, 0, 1)">demo
</span><span style="color: rgba(0, 128, 128, 1)">28</span> <span style="color: rgba(0, 0, 0, 1)">Namespace: default
</span><span style="color: rgba(0, 128, 128, 1)">29</span> Labels: <none>
<span style="color: rgba(0, 128, 128, 1)">30</span> Annotations:kubectl.kubernetes.io/<span style="color: rgba(0, 0, 255, 1)">last</span>-applied-<span style="color: rgba(0, 0, 0, 1)">configuration:
</span><span style="color: rgba(0, 128, 128, 1)">31</span> {<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">apiVersion</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">v1</span><span style="color: rgba(128, 0, 0, 1)">"</span>,<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">data</span><span style="color: rgba(128, 0, 0, 1)">"</span>:{<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">game.properties</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">enemy.types=aliens,monsters\nplayer.maximum-lives=5\n</span><span style="color: rgba(128, 0, 0, 1)">"</span>,<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">player_initial_lives</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">3</span><span style="color: rgba(128, 0, 0, 1)">"</span>,<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">ui_proper...</span>
<span style="color: rgba(0, 128, 128, 1)">32</span>
<span style="color: rgba(0, 128, 128, 1)">33</span> <span style="color: rgba(0, 0, 0, 1)">Data
</span><span style="color: rgba(0, 128, 128, 1)">34</span> ====
<span style="color: rgba(0, 128, 128, 1)">35</span> <span style="color: rgba(0, 0, 0, 1)">game.properties:
</span><span style="color: rgba(0, 128, 128, 1)">36</span> ----
<span style="color: rgba(0, 128, 128, 1)">37</span> enemy.types=<span style="color: rgba(0, 0, 0, 1)">aliens,monsters
</span><span style="color: rgba(0, 128, 128, 1)">38</span> player.maximum-lives=<span style="color: rgba(128, 0, 128, 1)">5</span>
<span style="color: rgba(0, 128, 128, 1)">39</span>
<span style="color: rgba(0, 128, 128, 1)">40</span> <span style="color: rgba(0, 0, 0, 1)">player_initial_lives:
</span><span style="color: rgba(0, 128, 128, 1)">41</span> ----
<span style="color: rgba(0, 128, 128, 1)">42</span> <span style="color: rgba(128, 0, 128, 1)">3</span>
<span style="color: rgba(0, 128, 128, 1)">43</span> <span style="color: rgba(0, 0, 0, 1)">ui_properties_file_name:
</span><span style="color: rgba(0, 128, 128, 1)">44</span> ----
<span style="color: rgba(0, 128, 128, 1)">45</span> user-<span style="color: rgba(0, 0, 0, 1)">interface.properties
</span><span style="color: rgba(0, 128, 128, 1)">46</span> user-<span style="color: rgba(0, 0, 0, 1)">interface.properties:
</span><span style="color: rgba(0, 128, 128, 1)">47</span> ----
<span style="color: rgba(0, 128, 128, 1)">48</span> color.good=<span style="color: rgba(0, 0, 0, 1)">purple
</span><span style="color: rgba(0, 128, 128, 1)">49</span> color.bad=<span style="color: rgba(0, 0, 0, 1)">yellow
</span><span style="color: rgba(0, 128, 128, 1)">50</span> allow.textmode=<span style="color: rgba(0, 0, 255, 1)">true</span>
<span style="color: rgba(0, 128, 128, 1)">51</span>
<span style="color: rgba(0, 128, 128, 1)">52</span> Events:<none></pre>
</div>
<p> </p>
<h1 id="Pod中使用ConfigMap">Pod中使用ConfigMap</h1>
<p>如何在Pod中使用上述的ConfigMap信息。</p>
<h2 id="当前存在的ConfigMap">当前存在的ConfigMap</h2>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)">1</span> # kubectl get configmap
</span><span style="color: rgba(0, 128, 128, 1)">2</span> <span style="color: rgba(0, 0, 0, 1)">NAME DATA AGE
</span><span style="color: rgba(0, 128, 128, 1)">3</span> configmap-demo <span style="color: rgba(128, 0, 128, 1)">4</span><span style="color: rgba(0, 0, 0, 1)"> 30m
</span><span style="color: rgba(0, 128, 128, 1)">4</span> game-config <span style="color: rgba(128, 0, 128, 1)">2</span><span style="color: rgba(0, 0, 0, 1)"> 5h9m
</span><span style="color: rgba(0, 128, 128, 1)">5</span> game-config-<span style="color: rgba(128, 0, 128, 1)">2</span> <span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)"> 5h1m
</span><span style="color: rgba(0, 128, 128, 1)">6</span> special-config <span style="color: rgba(128, 0, 128, 1)">2</span> 5m48s</pre>
</div>
<p> </p>
<h2 id="使用ConfigMap来替代环境变量">使用ConfigMap来替代环境变量</h2>
<p>yaml文件</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)"> 1</span> # <span style="color: rgba(0, 0, 255, 1)">pwd</span>
<span style="color: rgba(0, 128, 128, 1)"> 2</span> /root/k8s_practice/<span style="color: rgba(0, 0, 0, 1)">storage
</span><span style="color: rgba(0, 128, 128, 1)"> 3</span> # <span style="color: rgba(0, 0, 255, 1)">cat</span><span style="color: rgba(0, 0, 0, 1)"> pod_configmap_env.yaml
</span><span style="color: rgba(0, 128, 128, 1)"> 4</span> <span style="color: rgba(0, 0, 0, 1)">apiVersion: v1
</span><span style="color: rgba(0, 128, 128, 1)"> 5</span> <span style="color: rgba(0, 0, 0, 1)">kind: Pod
</span><span style="color: rgba(0, 128, 128, 1)"> 6</span> <span style="color: rgba(0, 0, 0, 1)">metadata:
</span><span style="color: rgba(0, 128, 128, 1)"> 7</span> name: pod-configmap-<span style="color: rgba(0, 0, 255, 1)">env</span>
<span style="color: rgba(0, 128, 128, 1)"> 8</span> <span style="color: rgba(0, 0, 0, 1)">spec:
</span><span style="color: rgba(0, 128, 128, 1)"> 9</span> <span style="color: rgba(0, 0, 0, 1)">containers:
</span><span style="color: rgba(0, 128, 128, 1)">10</span> -<span style="color: rgba(0, 0, 0, 1)"> name: myapp
</span><span style="color: rgba(0, 128, 128, 1)">11</span> image: registry.cn-beijing.aliyuncs.com/google_registry/<span style="color: rgba(0, 0, 0, 1)">myapp:v1
</span><span style="color: rgba(0, 128, 128, 1)">12</span> command: [<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">/bin/sh</span><span style="color: rgba(128, 0, 0, 1)">"</span>, <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">-c</span><span style="color: rgba(128, 0, 0, 1)">"</span>, <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">env</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">]
</span><span style="color: rgba(0, 128, 128, 1)">13</span> <span style="color: rgba(0, 0, 0, 1)"> ### 引用方式1
</span><span style="color: rgba(0, 128, 128, 1)">14</span> <span style="color: rgba(0, 0, 255, 1)">env</span><span style="color: rgba(0, 0, 0, 1)">:
</span><span style="color: rgba(0, 128, 128, 1)">15</span> -<span style="color: rgba(0, 0, 0, 1)"> name: SPECAIL_HOW_KEY
</span><span style="color: rgba(0, 128, 128, 1)">16</span> <span style="color: rgba(0, 0, 0, 1)"> valueFrom:
</span><span style="color: rgba(0, 128, 128, 1)">17</span> <span style="color: rgba(0, 0, 0, 1)"> configMapKeyRef:
</span><span style="color: rgba(0, 128, 128, 1)">18</span> name: special-<span style="color: rgba(0, 0, 0, 1)">config ### 这个name的值来自 ConfigMap
</span><span style="color: rgba(0, 128, 128, 1)">19</span> <span style="color: rgba(0, 0, 0, 1)"> key: special.how ### 这个key的值为需要取值的键
</span><span style="color: rgba(0, 128, 128, 1)">20</span> -<span style="color: rgba(0, 0, 0, 1)"> name: SPECAIL_TPYE_KEY
</span><span style="color: rgba(0, 128, 128, 1)">21</span> <span style="color: rgba(0, 0, 0, 1)"> valueFrom:
</span><span style="color: rgba(0, 128, 128, 1)">22</span> <span style="color: rgba(0, 0, 0, 1)"> configMapKeyRef:
</span><span style="color: rgba(0, 128, 128, 1)">23</span> name: special-<span style="color: rgba(0, 0, 0, 1)">config
</span><span style="color: rgba(0, 128, 128, 1)">24</span> <span style="color: rgba(0, 0, 0, 1)"> key: special.type
</span><span style="color: rgba(0, 128, 128, 1)">25</span> <span style="color: rgba(0, 0, 0, 1)"> ### 引用方式2
</span><span style="color: rgba(0, 128, 128, 1)">26</span> <span style="color: rgba(0, 0, 0, 1)"> envFrom:
</span><span style="color: rgba(0, 128, 128, 1)">27</span> -<span style="color: rgba(0, 0, 0, 1)"> configMapRef:
</span><span style="color: rgba(0, 128, 128, 1)">28</span> name: game-config-<span style="color: rgba(128, 0, 128, 1)">2</span><span style="color: rgba(0, 0, 0, 1)"> ### 这个name的值来自 ConfigMap
</span><span style="color: rgba(0, 128, 128, 1)">29</span> restartPolicy: Never</pre>
</div>
<p> </p>
<p>启动pod并查看状态</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)">1</span> # kubectl apply -<span style="color: rgba(0, 0, 0, 1)">f pod_configmap_env.yaml
</span><span style="color: rgba(0, 128, 128, 1)">2</span> pod/pod-configmap-<span style="color: rgba(0, 0, 255, 1)">env</span><span style="color: rgba(0, 0, 0, 1)"> created
</span><span style="color: rgba(0, 128, 128, 1)">3</span> #
</span><span style="color: rgba(0, 128, 128, 1)">4</span> # kubectl get pod -<span style="color: rgba(0, 0, 0, 1)">o wide
</span><span style="color: rgba(0, 128, 128, 1)">5</span> <span style="color: rgba(0, 0, 0, 1)">NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
</span><span style="color: rgba(0, 128, 128, 1)">6</span> pod-configmap-<span style="color: rgba(0, 0, 255, 1)">env</span> <span style="color: rgba(128, 0, 128, 1)">0</span>/<span style="color: rgba(128, 0, 128, 1)">1</span> Completed <span style="color: rgba(128, 0, 128, 1)">0</span> 6s <span style="color: rgba(128, 0, 128, 1)">10.244</span>.<span style="color: rgba(128, 0, 128, 1)">2.147</span> k8s-node02 <none> <none></pre>
</div>
<p> </p>
<p>查看打印日志</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)"> 1</span> # kubectl logs pod-configmap-<span style="color: rgba(0, 0, 255, 1)">env</span>
<span style="color: rgba(0, 128, 128, 1)"> 2</span> MYAPP_SVC_PORT_80_TCP_ADDR=<span style="color: rgba(128, 0, 128, 1)">10.98</span>.<span style="color: rgba(128, 0, 128, 1)">57.156</span>
<span style="color: rgba(0, 128, 128, 1)"> 3</span> KUBERNETES_SERVICE_PORT=<span style="color: rgba(128, 0, 128, 1)">443</span>
<span style="color: rgba(0, 128, 128, 1)"> 4</span> KUBERNETES_PORT=tcp:<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">10.96.0.1:443</span>
<span style="color: rgba(0, 128, 128, 1)"> 5</span> MYAPP_SVC_PORT_80_TCP_PORT=<span style="color: rgba(128, 0, 128, 1)">80</span>
<span style="color: rgba(0, 128, 128, 1)"> 6</span> HOSTNAME=pod-configmap-<span style="color: rgba(0, 0, 255, 1)">env</span>
<span style="color: rgba(0, 128, 128, 1)"> 7</span> SHLVL=<span style="color: rgba(128, 0, 128, 1)">1</span>
<span style="color: rgba(0, 128, 128, 1)"> 8</span> MYAPP_SVC_PORT_80_TCP_PROTO=<span style="color: rgba(0, 0, 0, 1)">tcp
</span><span style="color: rgba(0, 128, 128, 1)"> 9</span> HOME=/<span style="color: rgba(0, 0, 0, 1)">root
</span><span style="color: rgba(0, 128, 128, 1)">10</span> SPECAIL_HOW_KEY=<span style="color: rgba(0, 0, 0, 1)">very### 来自ConfigMap
</span><span style="color: rgba(0, 128, 128, 1)">11</span> game.properties=enemies=<span style="color: rgba(0, 0, 0, 1)">aliens### 来自ConfigMap
</span><span style="color: rgba(0, 128, 128, 1)">12</span> lives=<span style="color: rgba(128, 0, 128, 1)">3</span><span style="color: rgba(0, 0, 0, 1)">### 来自ConfigMap
</span><span style="color: rgba(0, 128, 128, 1)">13</span> enemies.cheat=<span style="color: rgba(0, 0, 255, 1)">true</span><span style="color: rgba(0, 0, 0, 1)">### 来自ConfigMap
</span><span style="color: rgba(0, 128, 128, 1)">14</span> enemies.cheat.level=<span style="color: rgba(0, 0, 0, 1)">noGoodRotten### 来自ConfigMap
</span><span style="color: rgba(0, 128, 128, 1)">15</span> secret.code.passphrase=<span style="color: rgba(0, 0, 0, 1)">UUDDLRLRBABAs### 来自ConfigMap
</span><span style="color: rgba(0, 128, 128, 1)">16</span> secret.code.allowed=<span style="color: rgba(0, 0, 255, 1)">true</span><span style="color: rgba(0, 0, 0, 1)">### 来自ConfigMap
</span><span style="color: rgba(0, 128, 128, 1)">17</span> secret.code.lives=<span style="color: rgba(128, 0, 128, 1)">30</span><span style="color: rgba(0, 0, 0, 1)">### 来自ConfigMap
</span><span style="color: rgba(0, 128, 128, 1)">18</span>
<span style="color: rgba(0, 128, 128, 1)">19</span>
<span style="color: rgba(0, 128, 128, 1)">20</span> SPECAIL_TPYE_KEY=<span style="color: rgba(0, 0, 0, 1)">charm### 来自ConfigMap
</span><span style="color: rgba(0, 128, 128, 1)">21</span> MYAPP_SVC_PORT_80_TCP=tcp:<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">10.98.57.156:80</span>
<span style="color: rgba(0, 128, 128, 1)">22</span> NGINX_VERSION=<span style="color: rgba(128, 0, 128, 1)">1.12</span>.<span style="color: rgba(128, 0, 128, 1)">2</span>
<span style="color: rgba(0, 128, 128, 1)">23</span> KUBERNETES_PORT_443_TCP_ADDR=<span style="color: rgba(128, 0, 128, 1)">10.96</span>.<span style="color: rgba(128, 0, 128, 1)">0.1</span>
<span style="color: rgba(0, 128, 128, 1)">24</span> PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/<span style="color: rgba(0, 0, 0, 1)">bin
</span><span style="color: rgba(0, 128, 128, 1)">25</span> KUBERNETES_PORT_443_TCP_PORT=<span style="color: rgba(128, 0, 128, 1)">443</span>
<span style="color: rgba(0, 128, 128, 1)">26</span> KUBERNETES_PORT_443_TCP_PROTO=<span style="color: rgba(0, 0, 0, 1)">tcp
</span><span style="color: rgba(0, 128, 128, 1)">27</span> MYAPP_SVC_SERVICE_HOST=<span style="color: rgba(128, 0, 128, 1)">10.98</span>.<span style="color: rgba(128, 0, 128, 1)">57.156</span>
<span style="color: rgba(0, 128, 128, 1)">28</span> KUBERNETES_SERVICE_PORT_HTTPS=<span style="color: rgba(128, 0, 128, 1)">443</span>
<span style="color: rgba(0, 128, 128, 1)">29</span> KUBERNETES_PORT_443_TCP=tcp:<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">10.96.0.1:443</span>
<span style="color: rgba(0, 128, 128, 1)">30</span> PWD=/
<span style="color: rgba(0, 128, 128, 1)">31</span> KUBERNETES_SERVICE_HOST=<span style="color: rgba(128, 0, 128, 1)">10.96</span>.<span style="color: rgba(128, 0, 128, 1)">0.1</span>
<span style="color: rgba(0, 128, 128, 1)">32</span> MYAPP_SVC_SERVICE_PORT=<span style="color: rgba(128, 0, 128, 1)">80</span>
<span style="color: rgba(0, 128, 128, 1)">33</span> MYAPP_SVC_PORT=tcp:<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">10.98.57.156:80</span></pre>
</div>
<p> </p>
<h2 id="使用ConfigMap设置命令行参数">使用ConfigMap设置命令行参数</h2>
<p>yaml文件</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)"> 1</span> # <span style="color: rgba(0, 0, 255, 1)">pwd</span>
<span style="color: rgba(0, 128, 128, 1)"> 2</span> /root/k8s_practice/<span style="color: rgba(0, 0, 0, 1)">storage
</span><span style="color: rgba(0, 128, 128, 1)"> 3</span> # <span style="color: rgba(0, 0, 255, 1)">cat</span><span style="color: rgba(0, 0, 0, 1)"> pod_configmap_cmd.yaml
</span><span style="color: rgba(0, 128, 128, 1)"> 4</span> <span style="color: rgba(0, 0, 0, 1)">apiVersion: v1
</span><span style="color: rgba(0, 128, 128, 1)"> 5</span> <span style="color: rgba(0, 0, 0, 1)">kind: Pod
</span><span style="color: rgba(0, 128, 128, 1)"> 6</span> <span style="color: rgba(0, 0, 0, 1)">metadata:
</span><span style="color: rgba(0, 128, 128, 1)"> 7</span> name: pod-configmap-<span style="color: rgba(0, 0, 0, 1)">cmd
</span><span style="color: rgba(0, 128, 128, 1)"> 8</span> <span style="color: rgba(0, 0, 0, 1)">spec:
</span><span style="color: rgba(0, 128, 128, 1)"> 9</span> <span style="color: rgba(0, 0, 0, 1)">containers:
</span><span style="color: rgba(0, 128, 128, 1)">10</span> -<span style="color: rgba(0, 0, 0, 1)"> name: myapp
</span><span style="color: rgba(0, 128, 128, 1)">11</span> image: registry.cn-beijing.aliyuncs.com/google_registry/<span style="color: rgba(0, 0, 0, 1)">myapp:v1
</span><span style="color: rgba(0, 128, 128, 1)">12</span> command: [<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">/bin/sh</span><span style="color: rgba(128, 0, 0, 1)">"</span>, <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">-c</span><span style="color: rgba(128, 0, 0, 1)">"</span>, <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">echo \"===$(SPECAIL_HOW_KEY)===$(SPECAIL_TPYE_KEY)===\"</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">]
</span><span style="color: rgba(0, 128, 128, 1)">13</span> <span style="color: rgba(0, 0, 255, 1)">env</span><span style="color: rgba(0, 0, 0, 1)">:
</span><span style="color: rgba(0, 128, 128, 1)">14</span> -<span style="color: rgba(0, 0, 0, 1)"> name: SPECAIL_HOW_KEY
</span><span style="color: rgba(0, 128, 128, 1)">15</span> <span style="color: rgba(0, 0, 0, 1)"> valueFrom:
</span><span style="color: rgba(0, 128, 128, 1)">16</span> <span style="color: rgba(0, 0, 0, 1)"> configMapKeyRef:
</span><span style="color: rgba(0, 128, 128, 1)">17</span> name: special-<span style="color: rgba(0, 0, 0, 1)">config
</span><span style="color: rgba(0, 128, 128, 1)">18</span> <span style="color: rgba(0, 0, 0, 1)"> key: special.how
</span><span style="color: rgba(0, 128, 128, 1)">19</span> -<span style="color: rgba(0, 0, 0, 1)"> name: SPECAIL_TPYE_KEY
</span><span style="color: rgba(0, 128, 128, 1)">20</span> <span style="color: rgba(0, 0, 0, 1)"> valueFrom:
</span><span style="color: rgba(0, 128, 128, 1)">21</span> <span style="color: rgba(0, 0, 0, 1)"> configMapKeyRef:
</span><span style="color: rgba(0, 128, 128, 1)">22</span> name: special-<span style="color: rgba(0, 0, 0, 1)">config
</span><span style="color: rgba(0, 128, 128, 1)">23</span> <span style="color: rgba(0, 0, 0, 1)"> key: special.type
</span><span style="color: rgba(0, 128, 128, 1)">24</span> restartPolicy: Never</pre>
</div>
<p> </p>
<p>启动pod并查看状态</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)">1</span> # kubectl apply -<span style="color: rgba(0, 0, 0, 1)">f pod_configmap_cmd.yaml
</span><span style="color: rgba(0, 128, 128, 1)">2</span> pod/pod-configmap-<span style="color: rgba(0, 0, 0, 1)">cmd created
</span><span style="color: rgba(0, 128, 128, 1)">3</span> #
</span><span style="color: rgba(0, 128, 128, 1)">4</span> # kubectl get pod -<span style="color: rgba(0, 0, 0, 1)">o wide
</span><span style="color: rgba(0, 128, 128, 1)">5</span> <span style="color: rgba(0, 0, 0, 1)">NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
</span><span style="color: rgba(0, 128, 128, 1)">6</span> pod-configmap-cmd <span style="color: rgba(128, 0, 128, 1)">0</span>/<span style="color: rgba(128, 0, 128, 1)">1</span> Completed <span style="color: rgba(128, 0, 128, 1)">0</span> 5s <span style="color: rgba(128, 0, 128, 1)">10.244</span>.<span style="color: rgba(128, 0, 128, 1)">4.125</span> k8s-node01 <none> <none></pre>
</div>
<p> </p>
<p>查看打印日志</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)">1</span> # kubectl logs pod-configmap-<span style="color: rgba(0, 0, 0, 1)">cmd
</span><span style="color: rgba(0, 128, 128, 1)">2</span> ===very===charm===</pre>
</div>
<p> </p>
<h2 id="通过数据卷插件使用ConfigMap【推荐】">通过数据卷插件使用ConfigMap【推荐】</h2>
<p>在数据卷里面使用ConfigMap,最基本的就是将文件填入数据卷,在这个文件中,键就是文件名【第一层级的键】,键值就是文件内容。</p>
<p>yaml文件</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)"> 1</span> # <span style="color: rgba(0, 0, 255, 1)">pwd</span>
<span style="color: rgba(0, 128, 128, 1)"> 2</span> /root/k8s_practice/<span style="color: rgba(0, 0, 0, 1)">storage
</span><span style="color: rgba(0, 128, 128, 1)"> 3</span> # <span style="color: rgba(0, 0, 255, 1)">cat</span><span style="color: rgba(0, 0, 0, 1)"> pod_configmap_volume.yaml
</span><span style="color: rgba(0, 128, 128, 1)"> 4</span> <span style="color: rgba(0, 0, 0, 1)">apiVersion: v1
</span><span style="color: rgba(0, 128, 128, 1)"> 5</span> <span style="color: rgba(0, 0, 0, 1)">kind: Pod
</span><span style="color: rgba(0, 128, 128, 1)"> 6</span> <span style="color: rgba(0, 0, 0, 1)">metadata:
</span><span style="color: rgba(0, 128, 128, 1)"> 7</span> name: pod-configmap-<span style="color: rgba(0, 0, 0, 1)">volume
</span><span style="color: rgba(0, 128, 128, 1)"> 8</span> <span style="color: rgba(0, 0, 0, 1)">spec:
</span><span style="color: rgba(0, 128, 128, 1)"> 9</span> <span style="color: rgba(0, 0, 0, 1)">containers:
</span><span style="color: rgba(0, 128, 128, 1)">10</span> -<span style="color: rgba(0, 0, 0, 1)"> name: myapp
</span><span style="color: rgba(0, 128, 128, 1)">11</span> image: registry.cn-beijing.aliyuncs.com/google_registry/<span style="color: rgba(0, 0, 0, 1)">myapp:v1
</span><span style="color: rgba(0, 128, 128, 1)">12</span> #command: [<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">/bin/sh</span><span style="color: rgba(128, 0, 0, 1)">"</span>, <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">-c</span><span style="color: rgba(128, 0, 0, 1)">"</span>, <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">ls -l /etc/config/</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">]
</span><span style="color: rgba(0, 128, 128, 1)">13</span> command: [<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">/bin/sh</span><span style="color: rgba(128, 0, 0, 1)">"</span>, <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">-c</span><span style="color: rgba(128, 0, 0, 1)">"</span>, <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">sleep 600</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">]
</span><span style="color: rgba(0, 128, 128, 1)">14</span> <span style="color: rgba(0, 0, 0, 1)"> volumeMounts:
</span><span style="color: rgba(0, 128, 128, 1)">15</span> - name: config-<span style="color: rgba(0, 0, 0, 1)">volume
</span><span style="color: rgba(0, 128, 128, 1)">16</span> mountPath: /etc/<span style="color: rgba(0, 0, 0, 1)">config
</span><span style="color: rgba(0, 128, 128, 1)">17</span> <span style="color: rgba(0, 0, 0, 1)">volumes:
</span><span style="color: rgba(0, 128, 128, 1)">18</span> - name: config-<span style="color: rgba(0, 0, 0, 1)">volume
</span><span style="color: rgba(0, 128, 128, 1)">19</span> <span style="color: rgba(0, 0, 0, 1)"> configMap:
</span><span style="color: rgba(0, 128, 128, 1)">20</span> name: configmap-<span style="color: rgba(0, 0, 0, 1)">demo
</span><span style="color: rgba(0, 128, 128, 1)">21</span> restartPolicy: Never</pre>
</div>
<p> </p>
<p>启动pod并查看状态</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)">1</span> # kubectl apply -<span style="color: rgba(0, 0, 0, 1)">f pod_configmap_volume.yaml
</span><span style="color: rgba(0, 128, 128, 1)">2</span> pod/pod-configmap-<span style="color: rgba(0, 0, 0, 1)">volume created
</span><span style="color: rgba(0, 128, 128, 1)">3</span> #
</span><span style="color: rgba(0, 128, 128, 1)">4</span> # kubectl get pod -<span style="color: rgba(0, 0, 0, 1)">o wide
</span><span style="color: rgba(0, 128, 128, 1)">5</span> <span style="color: rgba(0, 0, 0, 1)">NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
</span><span style="color: rgba(0, 128, 128, 1)">6</span> pod-configmap-volume <span style="color: rgba(128, 0, 128, 1)">1</span>/<span style="color: rgba(128, 0, 128, 1)">1</span> Running <span style="color: rgba(128, 0, 128, 1)">0</span> 5s <span style="color: rgba(128, 0, 128, 1)">10.244</span>.<span style="color: rgba(128, 0, 128, 1)">2.153</span> k8s-node02 <none> <none></pre>
</div>
<p> </p>
<p>进入pod并查看</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)"> 1</span> # kubectl exec -it pod-configmap-volume <span style="color: rgba(0, 0, 255, 1)">sh</span>
<span style="color: rgba(0, 128, 128, 1)"> 2</span> / # <span style="color: rgba(0, 0, 255, 1)">ls</span> /etc/<span style="color: rgba(0, 0, 0, 1)">config
</span><span style="color: rgba(0, 128, 128, 1)"> 3</span> game.properties player_initial_lives ui_properties_file_name user-<span style="color: rgba(0, 0, 0, 1)">interface.properties
</span><span style="color: rgba(0, 128, 128, 1)"> 4</span> /<span style="color: rgba(0, 0, 0, 1)"> #
</span><span style="color: rgba(0, 128, 128, 1)"> 5</span> /<span style="color: rgba(0, 0, 0, 1)"> #
</span><span style="color: rgba(0, 128, 128, 1)"> 6</span> /<span style="color: rgba(0, 0, 0, 1)"> #
</span><span style="color: rgba(0, 128, 128, 1)"> 7</span> / # <span style="color: rgba(0, 0, 255, 1)">cat</span> /etc/config/<span style="color: rgba(0, 0, 0, 1)">player_initial_lives
</span><span style="color: rgba(0, 128, 128, 1)"> 8</span> <span style="color: rgba(128, 0, 128, 1)">3</span>/<span style="color: rgba(0, 0, 0, 1)"> #
</span><span style="color: rgba(0, 128, 128, 1)"> 9</span> /<span style="color: rgba(0, 0, 0, 1)"> #
</span><span style="color: rgba(0, 128, 128, 1)">10</span> /<span style="color: rgba(0, 0, 0, 1)"> #
</span><span style="color: rgba(0, 128, 128, 1)">11</span> / # <span style="color: rgba(0, 0, 255, 1)">cat</span> /etc/config/<span style="color: rgba(0, 0, 0, 1)">ui_properties_file_name
</span><span style="color: rgba(0, 128, 128, 1)">12</span> user-interface.properties/<span style="color: rgba(0, 0, 0, 1)"> #
</span><span style="color: rgba(0, 128, 128, 1)">13</span> /<span style="color: rgba(0, 0, 0, 1)"> #
</span><span style="color: rgba(0, 128, 128, 1)">14</span> /<span style="color: rgba(0, 0, 0, 1)"> #
</span><span style="color: rgba(0, 128, 128, 1)">15</span> / # <span style="color: rgba(0, 0, 255, 1)">cat</span> /etc/config/<span style="color: rgba(0, 0, 0, 1)">game.properties
</span><span style="color: rgba(0, 128, 128, 1)">16</span> enemy.types=<span style="color: rgba(0, 0, 0, 1)">aliens,monsters
</span><span style="color: rgba(0, 128, 128, 1)">17</span> player.maximum-lives=<span style="color: rgba(128, 0, 128, 1)">5</span>
<span style="color: rgba(0, 128, 128, 1)">18</span> /<span style="color: rgba(0, 0, 0, 1)"> #
</span><span style="color: rgba(0, 128, 128, 1)">19</span> /<span style="color: rgba(0, 0, 0, 1)"> #
</span><span style="color: rgba(0, 128, 128, 1)">20</span> / # <span style="color: rgba(0, 0, 255, 1)">cat</span> /etc/config/user-<span style="color: rgba(0, 0, 0, 1)">interface.properties
</span><span style="color: rgba(0, 128, 128, 1)">21</span> color.good=<span style="color: rgba(0, 0, 0, 1)">purple
</span><span style="color: rgba(0, 128, 128, 1)">22</span> color.bad=<span style="color: rgba(0, 0, 0, 1)">yellow
</span><span style="color: rgba(0, 128, 128, 1)">23</span> allow.textmode=<span style="color: rgba(0, 0, 255, 1)">true</span></pre>
</div>
<p> </p>
<h1 id="ConfigMap热更新">ConfigMap热更新</h1>
<h2 id="准备工作">准备工作</h2>
<p>yaml文件</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)"> 1</span> # <span style="color: rgba(0, 0, 255, 1)">pwd</span>
<span style="color: rgba(0, 128, 128, 1)"> 2</span> /root/k8s_practice/<span style="color: rgba(0, 0, 0, 1)">storage
</span><span style="color: rgba(0, 128, 128, 1)"> 3</span> # <span style="color: rgba(0, 0, 255, 1)">cat</span><span style="color: rgba(0, 0, 0, 1)"> pod_configmap_hot.yaml
</span><span style="color: rgba(0, 128, 128, 1)"> 4</span> <span style="color: rgba(0, 0, 0, 1)">apiVersion: v1
</span><span style="color: rgba(0, 128, 128, 1)"> 5</span> <span style="color: rgba(0, 0, 0, 1)">kind: ConfigMap
</span><span style="color: rgba(0, 128, 128, 1)"> 6</span> <span style="color: rgba(0, 0, 0, 1)">metadata:
</span><span style="color: rgba(0, 128, 128, 1)"> 7</span> name: log-<span style="color: rgba(0, 0, 0, 1)">config
</span><span style="color: rgba(0, 128, 128, 1)"> 8</span> <span style="color: rgba(0, 0, 0, 1)">namespace: default
</span><span style="color: rgba(0, 128, 128, 1)"> 9</span> <span style="color: rgba(0, 0, 0, 1)">data:
</span><span style="color: rgba(0, 128, 128, 1)">10</span> <span style="color: rgba(0, 0, 0, 1)">log_level: INFO
</span><span style="color: rgba(0, 128, 128, 1)">11</span> ---
<span style="color: rgba(0, 128, 128, 1)">12</span> apiVersion: apps/<span style="color: rgba(0, 0, 0, 1)">v1
</span><span style="color: rgba(0, 128, 128, 1)">13</span> <span style="color: rgba(0, 0, 0, 1)">kind: Deployment
</span><span style="color: rgba(0, 128, 128, 1)">14</span> <span style="color: rgba(0, 0, 0, 1)">metadata:
</span><span style="color: rgba(0, 128, 128, 1)">15</span> name: myapp-<span style="color: rgba(0, 0, 0, 1)">deploy
</span><span style="color: rgba(0, 128, 128, 1)">16</span> <span style="color: rgba(0, 0, 0, 1)">namespace: default
</span><span style="color: rgba(0, 128, 128, 1)">17</span> <span style="color: rgba(0, 0, 0, 1)">spec:
</span><span style="color: rgba(0, 128, 128, 1)">18</span> replicas: <span style="color: rgba(128, 0, 128, 1)">2</span>
<span style="color: rgba(0, 128, 128, 1)">19</span> <span style="color: rgba(0, 0, 0, 1)">selector:
</span><span style="color: rgba(0, 128, 128, 1)">20</span> <span style="color: rgba(0, 0, 0, 1)"> matchLabels:
</span><span style="color: rgba(0, 128, 128, 1)">21</span> <span style="color: rgba(0, 0, 0, 1)"> app: myapp
</span><span style="color: rgba(0, 128, 128, 1)">22</span> <span style="color: rgba(0, 0, 0, 1)"> release: v1
</span><span style="color: rgba(0, 128, 128, 1)">23</span> <span style="color: rgba(0, 0, 0, 1)">template:
</span><span style="color: rgba(0, 128, 128, 1)">24</span> <span style="color: rgba(0, 0, 0, 1)"> metadata:
</span><span style="color: rgba(0, 128, 128, 1)">25</span> <span style="color: rgba(0, 0, 0, 1)"> labels:
</span><span style="color: rgba(0, 128, 128, 1)">26</span> <span style="color: rgba(0, 0, 0, 1)"> app: myapp
</span><span style="color: rgba(0, 128, 128, 1)">27</span> <span style="color: rgba(0, 0, 0, 1)"> release: v1
</span><span style="color: rgba(0, 128, 128, 1)">28</span> <span style="color: rgba(0, 0, 255, 1)">env</span><span style="color: rgba(0, 0, 0, 1)">: test
</span><span style="color: rgba(0, 128, 128, 1)">29</span> <span style="color: rgba(0, 0, 0, 1)"> spec:
</span><span style="color: rgba(0, 128, 128, 1)">30</span> <span style="color: rgba(0, 0, 0, 1)"> containers:
</span><span style="color: rgba(0, 128, 128, 1)">31</span> -<span style="color: rgba(0, 0, 0, 1)"> name: myapp
</span><span style="color: rgba(0, 128, 128, 1)">32</span> image: registry.cn-beijing.aliyuncs.com/google_registry/<span style="color: rgba(0, 0, 0, 1)">myapp:v1
</span><span style="color: rgba(0, 128, 128, 1)">33</span> <span style="color: rgba(0, 0, 0, 1)"> imagePullPolicy: IfNotPresent
</span><span style="color: rgba(0, 128, 128, 1)">34</span> <span style="color: rgba(0, 0, 0, 1)"> ports:
</span><span style="color: rgba(0, 128, 128, 1)">35</span> - containerPort: <span style="color: rgba(128, 0, 128, 1)">80</span>
<span style="color: rgba(0, 128, 128, 1)">36</span> <span style="color: rgba(0, 0, 0, 1)"> volumeMounts:
</span><span style="color: rgba(0, 128, 128, 1)">37</span> - name: config-<span style="color: rgba(0, 0, 0, 1)">volume
</span><span style="color: rgba(0, 128, 128, 1)">38</span> mountPath: /etc/<span style="color: rgba(0, 0, 0, 1)">config
</span><span style="color: rgba(0, 128, 128, 1)">39</span> <span style="color: rgba(0, 0, 0, 1)"> volumes:
</span><span style="color: rgba(0, 128, 128, 1)">40</span> - name: config-<span style="color: rgba(0, 0, 0, 1)">volume
</span><span style="color: rgba(0, 128, 128, 1)">41</span> <span style="color: rgba(0, 0, 0, 1)"> configMap:
</span><span style="color: rgba(0, 128, 128, 1)">42</span> name: log-config</pre>
</div>
<p> </p>
<p>应用yaml文件并查看状态</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)"> 1</span> # kubectl apply -<span style="color: rgba(0, 0, 0, 1)">f pod_configmap_hot.yaml
</span><span style="color: rgba(0, 128, 128, 1)"> 2</span> configmap/log-<span style="color: rgba(0, 0, 0, 1)">config created
</span><span style="color: rgba(0, 128, 128, 1)"> 3</span> deployment.apps/myapp-<span style="color: rgba(0, 0, 0, 1)">deploy created
</span><span style="color: rgba(0, 128, 128, 1)"> 4</span> #
</span><span style="color: rgba(0, 128, 128, 1)"> 5</span> # kubectl get configmap log-<span style="color: rgba(0, 0, 0, 1)">config
</span><span style="color: rgba(0, 128, 128, 1)"> 6</span> <span style="color: rgba(0, 0, 0, 1)">NAME DATA AGE
</span><span style="color: rgba(0, 128, 128, 1)"> 7</span> log-config <span style="color: rgba(128, 0, 128, 1)">1</span><span style="color: rgba(0, 0, 0, 1)"> 21s
</span><span style="color: rgba(0, 128, 128, 1)"> 8</span> #
</span><span style="color: rgba(0, 128, 128, 1)"> 9</span> # kubectl get pod -<span style="color: rgba(0, 0, 0, 1)">o wide
</span><span style="color: rgba(0, 128, 128, 1)">10</span> <span style="color: rgba(0, 0, 0, 1)">NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
</span><span style="color: rgba(0, 128, 128, 1)">11</span> myapp-deploy-58ff9c997-drhwk <span style="color: rgba(128, 0, 128, 1)">1</span>/<span style="color: rgba(128, 0, 128, 1)">1</span> Running <span style="color: rgba(128, 0, 128, 1)">0</span> 30s <span style="color: rgba(128, 0, 128, 1)">10.244</span>.<span style="color: rgba(128, 0, 128, 1)">2.154</span> k8s-node02 <none> <none>
<span style="color: rgba(0, 128, 128, 1)">12</span> myapp-deploy-58ff9c997-n68j2 <span style="color: rgba(128, 0, 128, 1)">1</span>/<span style="color: rgba(128, 0, 128, 1)">1</span> Running <span style="color: rgba(128, 0, 128, 1)">0</span> 30s <span style="color: rgba(128, 0, 128, 1)">10.244</span>.<span style="color: rgba(128, 0, 128, 1)">4.126</span> k8s-node01 <none> <none></pre>
</div>
<p> </p>
<p>查看ConfigMap信息</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)"> 1</span> # kubectl get configmap log-config -<span style="color: rgba(0, 0, 0, 1)">o yaml
</span><span style="color: rgba(0, 128, 128, 1)"> 2</span> <span style="color: rgba(0, 0, 0, 1)">apiVersion: v1
</span><span style="color: rgba(0, 128, 128, 1)"> 3</span> <span style="color: rgba(0, 0, 0, 1)">data:
</span><span style="color: rgba(0, 128, 128, 1)"> 4</span> <span style="color: rgba(0, 0, 0, 1)">log_level: INFO
</span><span style="color: rgba(0, 128, 128, 1)"> 5</span> <span style="color: rgba(0, 0, 0, 1)">kind: ConfigMap
</span><span style="color: rgba(0, 128, 128, 1)"> 6</span> <span style="color: rgba(0, 0, 0, 1)">metadata:
</span><span style="color: rgba(0, 128, 128, 1)"> 7</span> <span style="color: rgba(0, 0, 0, 1)">annotations:
</span><span style="color: rgba(0, 128, 128, 1)"> 8</span> kubectl.kubernetes.io/<span style="color: rgba(0, 0, 255, 1)">last</span>-applied-configuration: |
<span style="color: rgba(0, 128, 128, 1)"> 9</span> {<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">apiVersion</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">v1</span><span style="color: rgba(128, 0, 0, 1)">"</span>,<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">data</span><span style="color: rgba(128, 0, 0, 1)">"</span>:{<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">log_level</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">INFO</span><span style="color: rgba(128, 0, 0, 1)">"</span>},<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">kind</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">ConfigMap</span><span style="color: rgba(128, 0, 0, 1)">"</span>,<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">metadata</span><span style="color: rgba(128, 0, 0, 1)">"</span>:{<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">annotations</span><span style="color: rgba(128, 0, 0, 1)">"</span>:{},<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">name</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">log-config</span><span style="color: rgba(128, 0, 0, 1)">"</span>,<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">namespace</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">default</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">}}
</span><span style="color: rgba(0, 128, 128, 1)">10</span> creationTimestamp: <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">2020-06-07T16:08:11Z</span><span style="color: rgba(128, 0, 0, 1)">"</span>
<span style="color: rgba(0, 128, 128, 1)">11</span> name: log-<span style="color: rgba(0, 0, 0, 1)">config
</span><span style="color: rgba(0, 128, 128, 1)">12</span> <span style="color: rgba(0, 0, 0, 1)">namespace: default
</span><span style="color: rgba(0, 128, 128, 1)">13</span> resourceVersion: <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">971348</span><span style="color: rgba(128, 0, 0, 1)">"</span>
<span style="color: rgba(0, 128, 128, 1)">14</span> selfLink: /api/v1/namespaces/default/configmaps/log-<span style="color: rgba(0, 0, 0, 1)">config
</span><span style="color: rgba(0, 128, 128, 1)">15</span> uid: 7e78e1d7-12de-<span style="color: rgba(128, 0, 128, 1)">4601</span>-<span style="color: rgba(128, 0, 128, 1)">9915</span>-cefbc96ca305</pre>
</div>
<p> </p>
<p>查看pod中的ConfigMap信息</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)">1</span> # kubectl exec -it myapp-deploy-58ff9c997-drhwk -- <span style="color: rgba(0, 0, 255, 1)">cat</span> /etc/config/<span style="color: rgba(0, 0, 0, 1)">log_level
</span><span style="color: rgba(0, 128, 128, 1)">2</span> INFO</pre>
</div>
<p> </p>
<h2 id="热更新">热更新</h2>
<p>修改ConfigMap</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)"> 1</span> # kubectl edit configmap log-<span style="color: rgba(0, 0, 0, 1)">config ### 将 INFO 改为了 DEBUG
</span><span style="color: rgba(0, 128, 128, 1)"> 2</span> # Please edit the <span style="color: rgba(0, 0, 255, 1)">object</span> below. Lines beginning with a <span style="color: rgba(128, 0, 0, 1)">'</span><span style="color: rgba(128, 0, 0, 1)">#</span><span style="color: rgba(128, 0, 0, 1)">'</span><span style="color: rgba(0, 0, 0, 1)"> will be ignored,
</span><span style="color: rgba(0, 128, 128, 1)"> 3</span> # and an empty <span style="color: rgba(0, 0, 255, 1)">file</span> will abort the edit. If an error occurs <span style="color: rgba(0, 0, 255, 1)">while</span> saving this <span style="color: rgba(0, 0, 255, 1)">file</span><span style="color: rgba(0, 0, 0, 1)"> will be
</span><span style="color: rgba(0, 128, 128, 1)"> 4</span> <span style="color: rgba(0, 0, 0, 1)"># reopened with the relevant failures.
</span><span style="color: rgba(0, 128, 128, 1)"> 5</span> <span style="color: rgba(0, 0, 0, 1)">#
</span><span style="color: rgba(0, 128, 128, 1)"> 6</span> <span style="color: rgba(0, 0, 0, 1)">apiVersion: v1
</span><span style="color: rgba(0, 128, 128, 1)"> 7</span> <span style="color: rgba(0, 0, 0, 1)">data:
</span><span style="color: rgba(0, 128, 128, 1)"> 8</span> <span style="color: rgba(0, 0, 0, 1)">log_level: DEBUG
</span><span style="color: rgba(0, 128, 128, 1)"> 9</span> <span style="color: rgba(0, 0, 0, 1)">kind: ConfigMap
</span><span style="color: rgba(0, 128, 128, 1)">10</span> <span style="color: rgba(0, 0, 0, 1)">metadata:
</span><span style="color: rgba(0, 128, 128, 1)">11</span> <span style="color: rgba(0, 0, 0, 1)">annotations:
</span><span style="color: rgba(0, 128, 128, 1)">12</span> kubectl.kubernetes.io/<span style="color: rgba(0, 0, 255, 1)">last</span>-applied-configuration: |
<span style="color: rgba(0, 128, 128, 1)">13</span> {<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">apiVersion</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">v1</span><span style="color: rgba(128, 0, 0, 1)">"</span>,<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">data</span><span style="color: rgba(128, 0, 0, 1)">"</span>:{<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">log_level</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">DEBUG</span><span style="color: rgba(128, 0, 0, 1)">"</span>},<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">kind</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">ConfigMap</span><span style="color: rgba(128, 0, 0, 1)">"</span>,<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">metadata</span><span style="color: rgba(128, 0, 0, 1)">"</span>:{<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">annotations</span><span style="color: rgba(128, 0, 0, 1)">"</span>:{},<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">name</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">log-config</span><span style="color: rgba(128, 0, 0, 1)">"</span>,<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">namespace</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">default</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">}}
</span><span style="color: rgba(0, 128, 128, 1)">14</span> creationTimestamp: <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">2020-06-07T16:08:11Z</span><span style="color: rgba(128, 0, 0, 1)">"</span>
<span style="color: rgba(0, 128, 128, 1)">15</span> name: log-<span style="color: rgba(0, 0, 0, 1)">config
</span><span style="color: rgba(0, 128, 128, 1)">16</span> <span style="color: rgba(0, 0, 0, 1)">namespace: default
</span><span style="color: rgba(0, 128, 128, 1)">17</span> resourceVersion: <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">971348</span><span style="color: rgba(128, 0, 0, 1)">"</span>
<span style="color: rgba(0, 128, 128, 1)">18</span> selfLink: /api/v1/namespaces/default/configmaps/log-<span style="color: rgba(0, 0, 0, 1)">config
</span><span style="color: rgba(0, 128, 128, 1)">19</span> uid: 7e78e1d7-12de-<span style="color: rgba(128, 0, 128, 1)">4601</span>-<span style="color: rgba(128, 0, 128, 1)">9915</span>-cefbc96ca305</pre>
</div>
<p> </p>
<p>查看ConfigMap信息</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)"> 1</span> # kubectl get configmap log-config -<span style="color: rgba(0, 0, 0, 1)">o yaml
</span><span style="color: rgba(0, 128, 128, 1)"> 2</span> <span style="color: rgba(0, 0, 0, 1)">apiVersion: v1
</span><span style="color: rgba(0, 128, 128, 1)"> 3</span> <span style="color: rgba(0, 0, 0, 1)">data:
</span><span style="color: rgba(0, 128, 128, 1)"> 4</span> <span style="color: rgba(0, 0, 0, 1)">log_level: DEBUG
</span><span style="color: rgba(0, 128, 128, 1)"> 5</span> <span style="color: rgba(0, 0, 0, 1)">kind: ConfigMap
</span><span style="color: rgba(0, 128, 128, 1)"> 6</span> <span style="color: rgba(0, 0, 0, 1)">metadata:
</span><span style="color: rgba(0, 128, 128, 1)"> 7</span> <span style="color: rgba(0, 0, 0, 1)">annotations:
</span><span style="color: rgba(0, 128, 128, 1)"> 8</span> kubectl.kubernetes.io/<span style="color: rgba(0, 0, 255, 1)">last</span>-applied-configuration: |
<span style="color: rgba(0, 128, 128, 1)"> 9</span> {<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">apiVersion</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">v1</span><span style="color: rgba(128, 0, 0, 1)">"</span>,<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">data</span><span style="color: rgba(128, 0, 0, 1)">"</span>:{<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">log_level</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">DEBUG</span><span style="color: rgba(128, 0, 0, 1)">"</span>},<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">kind</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">ConfigMap</span><span style="color: rgba(128, 0, 0, 1)">"</span>,<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">metadata</span><span style="color: rgba(128, 0, 0, 1)">"</span>:{<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">annotations</span><span style="color: rgba(128, 0, 0, 1)">"</span>:{},<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">name</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">log-config</span><span style="color: rgba(128, 0, 0, 1)">"</span>,<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">namespace</span><span style="color: rgba(128, 0, 0, 1)">"</span>:<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">default</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">}}
</span><span style="color: rgba(0, 128, 128, 1)">10</span> creationTimestamp: <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">2020-06-07T16:08:11Z</span><span style="color: rgba(128, 0, 0, 1)">"</span>
<span style="color: rgba(0, 128, 128, 1)">11</span> name: log-<span style="color: rgba(0, 0, 0, 1)">config
</span><span style="color: rgba(0, 128, 128, 1)">12</span> <span style="color: rgba(0, 0, 0, 1)">namespace: default
</span><span style="color: rgba(0, 128, 128, 1)">13</span> resourceVersion: <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">972893</span><span style="color: rgba(128, 0, 0, 1)">"</span>
<span style="color: rgba(0, 128, 128, 1)">14</span> selfLink: /api/v1/namespaces/default/configmaps/log-<span style="color: rgba(0, 0, 0, 1)">config
</span><span style="color: rgba(0, 128, 128, 1)">15</span> uid: 7e78e1d7-12de-<span style="color: rgba(128, 0, 128, 1)">4601</span>-<span style="color: rgba(128, 0, 128, 1)">9915</span>-cefbc96ca305</pre>
</div>
<p> </p>
<p>稍后10秒左右,再次查看pod中的ConfigMap信息</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 128, 1)">1</span> # kubectl exec -it myapp-deploy-58ff9c997-drhwk -- <span style="color: rgba(0, 0, 255, 1)">cat</span> /etc/config/<span style="color: rgba(0, 0, 0, 1)">log_level
</span><span style="color: rgba(0, 128, 128, 1)">2</span> DEBUG</pre>
</div>
<p><span style="color: rgba(255, 0, 0, 1)">由此可见,完成了一次热更新</span></p>
<p> </p>
<h1 id="相关阅读">相关阅读</h1>
<p>1、YAML 语言教程与使用案例</p>
<p>2、Kubernetes K8S之通过yaml创建pod与pod文件常用字段详解</p>
<p>3、Kubernetes K8S之存储Secret详解</p>
<p> </p>
<hr>
<p> </p>
<p> </p>
<p style="text-align: center">———END———<br>如果觉得不错就关注下呗 (-^O^-) !</p>
<p style="text-align: center"><img src="https://img2020.cnblogs.com/blog/1395193/202010/1395193-20201015000147429-127213341.png"></p>
<p style="text-align: center"> </p><br><br>
来源:https://www.cnblogs.com/zhanglianghhh/p/13818190.html
頁:
[1]