{"id":1351,"date":"2025-05-25T09:28:40","date_gmt":"2025-05-25T00:28:40","guid":{"rendered":"https:\/\/itstudy365.com\/blog\/?p=1351"},"modified":"2025-05-25T09:31:33","modified_gmt":"2025-05-25T00:31:33","slug":"kubernetes-learning-%e7%ac%ac21%e7%ab%a0%ef%bc%9asecret%e3%81%ae%e6%9a%97%e5%8f%b7%e5%8c%96%e3%81%a8%e3%83%9e%e3%82%a6%e3%83%b3%e3%83%88%e6%96%b9%e6%b3%95-%e3%80%9c%e6%a9%9f%e5%af%86%e6%83%85%e5%a0%b1","status":"publish","type":"post","link":"https:\/\/itstudy365.com\/blog\/2025\/05\/25\/kubernetes-learning-%e7%ac%ac21%e7%ab%a0%ef%bc%9asecret%e3%81%ae%e6%9a%97%e5%8f%b7%e5%8c%96%e3%81%a8%e3%83%9e%e3%82%a6%e3%83%b3%e3%83%88%e6%96%b9%e6%b3%95-%e3%80%9c%e6%a9%9f%e5%af%86%e6%83%85%e5%a0%b1\/","title":{"rendered":"Kubernetes Learning \u7b2c21\u7ae0\uff1aSecret\u306e\u6697\u53f7\u5316\u3068\u30de\u30a6\u30f3\u30c8\u65b9\u6cd5 \u301c\u6a5f\u5bc6\u60c5\u5831\u3092\u5b89\u5168\u306b\u6271\u3046Kubernetes\u306e\u57fa\u672c\u301c"},"content":{"rendered":"\n<button id=\"bb1\" type=\"button\" value=\"Play\" class=\"responsivevoice-button\" title=\"ResponsiveVoice Tap to Start\/Stop Speech\"><span>&#128266; Play<\/span><\/button>\n        <script>\n            bb1.onclick = function(){\n                if(responsiveVoice.isPlaying()){\n                    responsiveVoice.cancel();\n                }else{\n                    responsiveVoice.speak(\"Kubernetes\u3067\u306f\u3001**\u6a5f\u5bc6\u6027\u306e\u9ad8\u3044\u60c5\u5831\uff08\u30d1\u30b9\u30ef\u30fc\u30c9\u3001API\u30ad\u30fc\u3001\u8a3c\u660e\u66f8\u306a\u3069\uff09**\u3092\u5b89\u5168\u306b\u7ba1\u7406\u3059\u308b\u305f\u3081\u306b\u3001**Secret\uff08\u30b7\u30fc\u30af\u30ec\u30c3\u30c8\uff09**\u3068\u3044\u3046\u30ea\u30bd\u30fc\u30b9\u304c\u7528\u610f\u3055\u308c\u3066\u3044\u307e\u3059\u3002 ConfigMap\u3068\u4f3c\u3066\u3044\u307e\u3059\u304c\u3001Secret\u306f**\u300c\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u304c\u6c42\u3081\u3089\u308c\u308b\u60c5\u5831\u300d**\u3092\u6271\u3046\u305f\u3081\u3001\u3088\u308a\u614e\u91cd\u306a\u8a2d\u8a08\u3068\u4f7f\u3044\u65b9\u304c\u6c42\u3081\u3089\u308c\u307e\u3059\u3002 \u3053\u306e\u7ae0\u3067\u306f\u3001Secret\u306e\u57fa\u672c\u304b\u3089\u3001\u6697\u53f7\u5316\u306e\u4ed5\u7d44\u307f\u3001Pod\u3078\u306e\u6e21\u3057\u65b9\u307e\u3067\u3092\u89e3\u8aac\u3057\u307e\u3059\u3002 \ud83d\udd10 Secret\u3068\u306f\uff1f Secret\u306f\u3001\u6a5f\u5bc6\u6027\u306e\u3042\u308b\u8a2d\u5b9a\u60c5\u5831\u3092Base64\u3067\u30a8\u30f3\u30b3\u30fc\u30c9\u3057\u3066\u4fdd\u5b58\u3059\u308b\u30ea\u30bd\u30fc\u30b9\u3067\u3059\u3002Kubernetes\u3067\u306f\u3001Pod\u5185\u306b\u76f4\u63a5\u5024\u3092\u57cb\u3081\u8fbc\u307e\u305a\u3001Secret\u3092\u7d4c\u7531\u3057\u3066\u5024\u3092\u6e21\u3059\u3053\u3068\u3067\u3001\u30bb\u30ad\u30e5\u30a2\u306a\u904b\u7528\u3092\u5b9f\u73fe\u3057\u307e\u3059\u3002 \u2611 \u4e3b\u306a\u7528\u9014 \u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306e\u30d1\u30b9\u30ef\u30fc\u30c9 \u5916\u90e8\u30b5\u30fc\u30d3\u30b9\u306eAPI\u30ad\u30fc TLS\u8a3c\u660e\u66f8\uff0f\u9375\u30da\u30a2 \u26a0\ufe0f Base64\u306f\u300c\u6697\u53f7\u5316\u300d\u3067\u306f\u306a\u3044\uff01 Secret\u306e\u5024\u306fYAML\u30d5\u30a1\u30a4\u30eb\u4e0a\u3067\u306fBase64\u3067\u30a8\u30f3\u30b3\u30fc\u30c9\u3055\u308c\u3066\u3044\u307e\u3059\u304c\u3001\u3053\u308c\u306f\u305f\u3060\u306e\u6587\u5b57\u30b3\u30fc\u30c9\u5909\u63db\u3067\u3059\u3002\u8ab0\u3067\u3082\u30c7\u30b3\u30fc\u30c9\u3067\u304d\u307e\u3059\u3002 \u4f8b\uff1a data: password: cGFzc3dvcmQxMjM= \u4e0a\u8a18\u306eBase64\u6587\u5b57\u5217\u306f password123 \u3068\u3044\u3046\u5e73\u6587\u306b\u306a\u308a\u307e\u3059\u3002 \u3057\u305f\u304c\u3063\u3066\u3001Kubernetes\u306eSecret\u306e\u4fdd\u5b58\u5148\u3084\u901a\u4fe1\u7d4c\u8def\u3092\u5b89\u5168\u306b\u4fdd\u3064\u3053\u3068\u304c\u91cd\u8981\u3067\u3059\u3002 \ud83d\udd12 Secret\u306e\u6697\u53f7\u5316\uff08Etcd\u4e0a\u3067\u306e\u4fdd\u8b77\uff09 Kubernetes\u306f\u3001Secret\u306a\u3069\u306e\u30ea\u30bd\u30fc\u30b9\u3092 etcd \u306b\u4fdd\u5b58\u3057\u307e\u3059\u3002\u3053\u308c\u3092\u5b89\u5168\u306b\u3059\u308b\u305f\u3081\u306b\u3001\u6b21\u306e\u3088\u3046\u306a\u4ed5\u7d44\u307f\u304c\u3042\u308a\u307e\u3059\uff1a etcd \u30c7\u30fc\u30bf\u306e\u6697\u53f7\u5316\u3092\u6709\u52b9\u306b\u3059\u308b\uff08Encryption at Rest\uff09 kube-apiserver \u306e\u8a2d\u5b9a\u3067\u6697\u53f7\u5316\u30d7\u30ed\u30d0\u30a4\u30c0\uff08AES-GCM\u306a\u3069\uff09\u3092\u6709\u52b9\u306b\u3057\u307e\u3059\u3002 \u901a\u4fe1\u306e\u6697\u53f7\u5316 Secret\u306e\u9001\u53d7\u4fe1\u306b\u306f TLS \u304c\u4f7f\u308f\u308c\u3066\u3044\u308b\u306e\u3067\u3001\u901a\u4fe1\u8def\u4e0a\u3067\u306f\u79d8\u533f\u6027\u304c\u4fdd\u305f\u308c\u307e\u3059\u3002 RBAC\u3067\u30a2\u30af\u30bb\u30b9\u5236\u9650 Secret\u3078\u306e\u30a2\u30af\u30bb\u30b9\u3092 Role \u3084 ClusterRole \u3067\u3057\u3063\u304b\u308a\u5236\u9650\u3057\u307e\u3057\u3087\u3046\u3002 \ud83d\udee0\ufe0f Secret\u306e\u4f5c\u6210\u65b9\u6cd5 \u2460 CLI\u3067\u4f5c\u6210\uff08\u63a8\u5968\uff09 kubectl create secret generic my-secret \\ --from-literal=username=admin \\ --from-literal=password=pa$$w0rd \u2461 YAML\u3067\u4f5c\u6210\uff08\u6ce8\u610f\uff1aBase64\u624b\u52d5\u30a8\u30f3\u30b3\u30fc\u30c9\uff09 apiVersion: v1 kind: Secret metadata: name: my-secret type: Opaque data: username: YWRtaW4= # admin password: cGEkJHcwcmQ= # pa$$w0rd \u30a8\u30f3\u30b3\u30fc\u30c9\u4f8b\uff1a echo -n &#39;admin&#39; | base64 \ud83d\udce6 Pod\u3078\u306e\u6e21\u3057\u65b9 Secret\u306fPod\u5185\u306b\u4ee5\u4e0b\u306e2\u901a\u308a\u3067\u6e21\u305b\u307e\u3059\u3002 \u2460 \u74b0\u5883\u5909\u6570\u3068\u3057\u3066\u6e21\u3059 env: - name: DB_USER valueFrom: secretKeyRef: name: my-secret key: username \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u5074\u304c\u74b0\u5883\u5909\u6570\u304b\u3089\u8aad\u307f\u53d6\u308b\u69cb\u6210\u306b\u306a\u308a\u307e\u3059\u3002 \u2461 \u30d5\u30a1\u30a4\u30eb\u3068\u3057\u3066\u30de\u30a6\u30f3\u30c8 volumes: - name: secret-volume secret: secretName: my-secret volumeMounts: - name: secret-volume mountPath: \\\"\/etc\/secret\\\" readOnly: true \u3053\u308c\u306b\u3088\u308a \/etc\/secret\/username \u3068\u3044\u3046\u30d5\u30a1\u30a4\u30eb\u306b\u5024\u304c\u66f8\u304d\u8fbc\u307e\u308c\u3001Pod\u5185\u304b\u3089\u8aad\u307f\u53d6\u308c\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002 \ud83d\udccc \u30d5\u30a1\u30a4\u30eb\u306e\u30d1\u30fc\u30df\u30c3\u30b7\u30e7\u30f3\u306f\u30c7\u30d5\u30a9\u30eb\u30c8\u3067 0400\uff08\u8aad\u307f\u53d6\u308a\u5c02\u7528\uff09\u306b\u306a\u3063\u3066\u304a\u308a\u3001\u5b89\u5168\u3067\u3059\u3002 \ud83d\udc6e \u5b89\u5168\u306b\u4f7f\u3046\u305f\u3081\u306e\u30d9\u30b9\u30c8\u30d7\u30e9\u30af\u30c6\u30a3\u30b9 \u9805\u76ee\u8aac\u660eRBACSecret\u3078\u306e\u30a2\u30af\u30bb\u30b9\u6a29\u9650\u3092\u53b3\u3057\u304f\u5236\u9650etcd\u6697\u53f7\u5316kube-apiserver \u3067\u4fdd\u5b58\u30c7\u30fc\u30bf\u306e\u6697\u53f7\u5316\u3092\u6709\u52b9\u5316Git\u306b\u8f09\u305b\u306a\u3044YAML\u306b\u76f4\u63a5\u66f8\u304f\u5834\u5408\u306f\u3001Git\u306a\u3069\u306b\u7d76\u5bfe\u306b\u8f09\u305b\u306a\u3044\u30a4\u30e1\u30fc\u30b8\u3068\u5206\u96e2Secret\u306e\u60c5\u5831\u306f\u5fc5\u305a\u30b3\u30f3\u30c6\u30ca\u30a4\u30e1\u30fc\u30b8\u5916\u3067\u7ba1\u7406\u81ea\u52d5\u66f4\u65b0\u306e\u8003\u616ecert-manager\u306a\u3069\u3092\u4f7f\u3063\u3066\u8a3c\u660e\u66f8Secret\u3092\u81ea\u52d5\u66f4\u65b0\u53ef\u80fd \u2705 \u307e\u3068\u3081 \u9805\u76ee\u8aac\u660e\u7528\u9014\u30d1\u30b9\u30ef\u30fc\u30c9\u3001API\u30ad\u30fc\u306a\u3069\u306e\u6a5f\u5bc6\u60c5\u5831\u306e\u7ba1\u7406\u4f5c\u6210\u65b9\u6cd5CLI\u63a8\u5968\u3002YAML\u3067\u306fBase64\u30a8\u30f3\u30b3\u30fc\u30c9\u304c\u5fc5\u8981Pod\u3078\u306e\u6e21\u3057\u65b9\u74b0\u5883\u5909\u6570 or \u30d5\u30a1\u30a4\u30eb\u30de\u30a6\u30f3\u30c8\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u5bfe\u7b56etcd\u6697\u53f7\u5316\u3001RBAC\u5236\u9650\u3001Git\u975e\u516c\u958b\u306a\u3069\u3092\u5fb9\u5e95\", \"Japanese Female\");\n                }\n            };\n        <\/script>\n    <\/p>\n\n\n\n<p>Kubernetes\u3067\u306f\u3001**\u6a5f\u5bc6\u6027\u306e\u9ad8\u3044\u60c5\u5831\uff08\u30d1\u30b9\u30ef\u30fc\u30c9\u3001API\u30ad\u30fc\u3001\u8a3c\u660e\u66f8\u306a\u3069\uff09**\u3092\u5b89\u5168\u306b\u7ba1\u7406\u3059\u308b\u305f\u3081\u306b\u3001**Secret\uff08\u30b7\u30fc\u30af\u30ec\u30c3\u30c8\uff09**\u3068\u3044\u3046\u30ea\u30bd\u30fc\u30b9\u304c\u7528\u610f\u3055\u308c\u3066\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<p>ConfigMap\u3068\u4f3c\u3066\u3044\u307e\u3059\u304c\u3001Secret\u306f**\u300c\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u304c\u6c42\u3081\u3089\u308c\u308b\u60c5\u5831\u300d**\u3092\u6271\u3046\u305f\u3081\u3001\u3088\u308a\u614e\u91cd\u306a\u8a2d\u8a08\u3068\u4f7f\u3044\u65b9\u304c\u6c42\u3081\u3089\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u3053\u306e\u7ae0\u3067\u306f\u3001Secret\u306e\u57fa\u672c\u304b\u3089\u3001\u6697\u53f7\u5316\u306e\u4ed5\u7d44\u307f\u3001Pod\u3078\u306e\u6e21\u3057\u65b9\u307e\u3067\u3092\u89e3\u8aac\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udd10 Secret\u3068\u306f\uff1f<\/h3>\n\n\n\n<p>Secret\u306f\u3001<strong>\u6a5f\u5bc6\u6027\u306e\u3042\u308b\u8a2d\u5b9a\u60c5\u5831\u3092Base64\u3067\u30a8\u30f3\u30b3\u30fc\u30c9\u3057\u3066\u4fdd\u5b58\u3059\u308b\u30ea\u30bd\u30fc\u30b9<\/strong>\u3067\u3059\u3002Kubernetes\u3067\u306f\u3001Pod\u5185\u306b\u76f4\u63a5\u5024\u3092\u57cb\u3081\u8fbc\u307e\u305a\u3001Secret\u3092\u7d4c\u7531\u3057\u3066\u5024\u3092\u6e21\u3059\u3053\u3068\u3067\u3001\u30bb\u30ad\u30e5\u30a2\u306a\u904b\u7528\u3092\u5b9f\u73fe\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u2611 \u4e3b\u306a\u7528\u9014<\/h3>\n\n\n\n<ul>\n<li>\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306e\u30d1\u30b9\u30ef\u30fc\u30c9<\/li>\n\n\n\n<li>\u5916\u90e8\u30b5\u30fc\u30d3\u30b9\u306eAPI\u30ad\u30fc<\/li>\n\n\n\n<li>TLS\u8a3c\u660e\u66f8\uff0f\u9375\u30da\u30a2<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\u26a0\ufe0f Base64\u306f\u300c\u6697\u53f7\u5316\u300d\u3067\u306f\u306a\u3044\uff01<\/h3>\n\n\n\n<p>Secret\u306e\u5024\u306fYAML\u30d5\u30a1\u30a4\u30eb\u4e0a\u3067\u306fBase64\u3067\u30a8\u30f3\u30b3\u30fc\u30c9\u3055\u308c\u3066\u3044\u307e\u3059\u304c\u3001\u3053\u308c\u306f<strong>\u305f\u3060\u306e\u6587\u5b57\u30b3\u30fc\u30c9\u5909\u63db<\/strong>\u3067\u3059\u3002<strong>\u8ab0\u3067\u3082\u30c7\u30b3\u30fc\u30c9\u3067\u304d\u307e\u3059<\/strong>\u3002<\/p>\n\n\n\n<p>\u4f8b\uff1a<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-scss\" data-lang=\"SCSS\"><code>data:\n  password: cGFzc3dvcmQxMjM=<\/code><\/pre><\/div>\n\n\n\n<p>\u4e0a\u8a18\u306eBase64\u6587\u5b57\u5217\u306f <code>password123<\/code> \u3068\u3044\u3046\u5e73\u6587\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u3057\u305f\u304c\u3063\u3066\u3001Kubernetes\u306eSecret\u306e<strong>\u4fdd\u5b58\u5148\u3084\u901a\u4fe1\u7d4c\u8def\u3092\u5b89\u5168\u306b\u4fdd\u3064\u3053\u3068\u304c\u91cd\u8981<\/strong>\u3067\u3059\u3002<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udd12 Secret\u306e\u6697\u53f7\u5316\uff08Etcd\u4e0a\u3067\u306e\u4fdd\u8b77\uff09<\/h3>\n\n\n\n<p>Kubernetes\u306f\u3001Secret\u306a\u3069\u306e\u30ea\u30bd\u30fc\u30b9\u3092 <code>etcd<\/code> \u306b\u4fdd\u5b58\u3057\u307e\u3059\u3002\u3053\u308c\u3092\u5b89\u5168\u306b\u3059\u308b\u305f\u3081\u306b\u3001\u6b21\u306e\u3088\u3046\u306a\u4ed5\u7d44\u307f\u304c\u3042\u308a\u307e\u3059\uff1a<\/p>\n\n\n\n<ol>\n<li><strong>etcd \u30c7\u30fc\u30bf\u306e\u6697\u53f7\u5316\u3092\u6709\u52b9\u306b\u3059\u308b\uff08Encryption at Rest\uff09<\/strong>\n<ul>\n<li>kube-apiserver \u306e\u8a2d\u5b9a\u3067\u6697\u53f7\u5316\u30d7\u30ed\u30d0\u30a4\u30c0\uff08AES-GCM\u306a\u3069\uff09\u3092\u6709\u52b9\u306b\u3057\u307e\u3059\u3002<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\u901a\u4fe1\u306e\u6697\u53f7\u5316<\/strong>\n<ul>\n<li>Secret\u306e\u9001\u53d7\u4fe1\u306b\u306f TLS \u304c\u4f7f\u308f\u308c\u3066\u3044\u308b\u306e\u3067\u3001\u901a\u4fe1\u8def\u4e0a\u3067\u306f\u79d8\u533f\u6027\u304c\u4fdd\u305f\u308c\u307e\u3059\u3002<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>RBAC\u3067\u30a2\u30af\u30bb\u30b9\u5236\u9650<\/strong>\n<ul>\n<li>Secret\u3078\u306e\u30a2\u30af\u30bb\u30b9\u3092 <code>Role<\/code> \u3084 <code>ClusterRole<\/code> \u3067\u3057\u3063\u304b\u308a\u5236\u9650\u3057\u307e\u3057\u3087\u3046\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udee0\ufe0f Secret\u306e\u4f5c\u6210\u65b9\u6cd5<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\">\u2460 CLI\u3067\u4f5c\u6210\uff08\u63a8\u5968\uff09<\/h4>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-bash\" data-lang=\"Bash\"><code>kubectl create secret generic my-secret \\\n  --from-literal=username=admin \\\n  --from-literal=password=pa$$w0rd<\/code><\/pre><\/div>\n\n\n\n<h4 class=\"wp-block-heading\">\u2461 YAML\u3067\u4f5c\u6210\uff08\u6ce8\u610f\uff1aBase64\u624b\u52d5\u30a8\u30f3\u30b3\u30fc\u30c9\uff09<\/h4>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-scss\" data-lang=\"SCSS\"><code>apiVersion: v1\nkind: Secret\nmetadata:\n  name: my-secret\ntype: Opaque\ndata:\n  username: YWRtaW4=         # admin\n  password: cGEkJHcwcmQ=     # pa$$w0rd<\/code><\/pre><\/div>\n\n\n\n<p>\u30a8\u30f3\u30b3\u30fc\u30c9\u4f8b\uff1a<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-bash\" data-lang=\"Bash\"><code>echo -n &#39;admin&#39; | base64<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udce6 Pod\u3078\u306e\u6e21\u3057\u65b9<\/h3>\n\n\n\n<p>Secret\u306fPod\u5185\u306b\u4ee5\u4e0b\u306e2\u901a\u308a\u3067\u6e21\u305b\u307e\u3059\u3002<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">\u2460 \u74b0\u5883\u5909\u6570\u3068\u3057\u3066\u6e21\u3059<\/h4>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-scss\" data-lang=\"SCSS\"><code>env:\n  - name: DB_USER\n    valueFrom:\n      secretKeyRef:\n        name: my-secret\n        key: username<\/code><\/pre><\/div>\n\n\n\n<p>\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u5074\u304c\u74b0\u5883\u5909\u6570\u304b\u3089\u8aad\u307f\u53d6\u308b\u69cb\u6210\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h4 class=\"wp-block-heading\">\u2461 \u30d5\u30a1\u30a4\u30eb\u3068\u3057\u3066\u30de\u30a6\u30f3\u30c8<\/h4>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-scss\" data-lang=\"SCSS\" data-show-lang=\"0\"><code>volumes:\n  - name: secret-volume\n    secret:\n      secretName: my-secret\n\nvolumeMounts:\n  - name: secret-volume\n    mountPath: &quot;\/etc\/secret&quot;\n    readOnly: true<\/code><\/pre><\/div>\n\n\n\n<p>\u3053\u308c\u306b\u3088\u308a <code>\/etc\/secret\/username<\/code> \u3068\u3044\u3046\u30d5\u30a1\u30a4\u30eb\u306b\u5024\u304c\u66f8\u304d\u8fbc\u307e\u308c\u3001Pod\u5185\u304b\u3089\u8aad\u307f\u53d6\u308c\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<blockquote class=\"wp-block-quote\">\n<p>\ud83d\udccc \u30d5\u30a1\u30a4\u30eb\u306e\u30d1\u30fc\u30df\u30c3\u30b7\u30e7\u30f3\u306f\u30c7\u30d5\u30a9\u30eb\u30c8\u3067 <code>0400<\/code>\uff08\u8aad\u307f\u53d6\u308a\u5c02\u7528\uff09\u306b\u306a\u3063\u3066\u304a\u308a\u3001\u5b89\u5168\u3067\u3059\u3002<\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udc6e \u5b89\u5168\u306b\u4f7f\u3046\u305f\u3081\u306e\u30d9\u30b9\u30c8\u30d7\u30e9\u30af\u30c6\u30a3\u30b9<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>\u9805\u76ee<\/th><th>\u8aac\u660e<\/th><\/tr><\/thead><tbody><tr><td>RBAC<\/td><td>Secret\u3078\u306e\u30a2\u30af\u30bb\u30b9\u6a29\u9650\u3092\u53b3\u3057\u304f\u5236\u9650<\/td><\/tr><tr><td>etcd\u6697\u53f7\u5316<\/td><td><code>kube-apiserver<\/code> \u3067\u4fdd\u5b58\u30c7\u30fc\u30bf\u306e\u6697\u53f7\u5316\u3092\u6709\u52b9\u5316<\/td><\/tr><tr><td>Git\u306b\u8f09\u305b\u306a\u3044<\/td><td>YAML\u306b\u76f4\u63a5\u66f8\u304f\u5834\u5408\u306f\u3001Git\u306a\u3069\u306b\u7d76\u5bfe\u306b\u8f09\u305b\u306a\u3044<\/td><\/tr><tr><td>\u30a4\u30e1\u30fc\u30b8\u3068\u5206\u96e2<\/td><td>Secret\u306e\u60c5\u5831\u306f\u5fc5\u305a\u30b3\u30f3\u30c6\u30ca\u30a4\u30e1\u30fc\u30b8\u5916\u3067\u7ba1\u7406<\/td><\/tr><tr><td>\u81ea\u52d5\u66f4\u65b0\u306e\u8003\u616e<\/td><td>cert-manager\u306a\u3069\u3092\u4f7f\u3063\u3066\u8a3c\u660e\u66f8Secret\u3092\u81ea\u52d5\u66f4\u65b0\u53ef\u80fd<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\u2705 \u307e\u3068\u3081<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>\u9805\u76ee<\/th><th>\u8aac\u660e<\/th><\/tr><\/thead><tbody><tr><td>\u7528\u9014<\/td><td>\u30d1\u30b9\u30ef\u30fc\u30c9\u3001API\u30ad\u30fc\u306a\u3069\u306e\u6a5f\u5bc6\u60c5\u5831\u306e\u7ba1\u7406<\/td><\/tr><tr><td>\u4f5c\u6210\u65b9\u6cd5<\/td><td>CLI\u63a8\u5968\u3002YAML\u3067\u306fBase64\u30a8\u30f3\u30b3\u30fc\u30c9\u304c\u5fc5\u8981<\/td><\/tr><tr><td>Pod\u3078\u306e\u6e21\u3057\u65b9<\/td><td>\u74b0\u5883\u5909\u6570 or \u30d5\u30a1\u30a4\u30eb\u30de\u30a6\u30f3\u30c8<\/td><\/tr><tr><td>\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u5bfe\u7b56<\/td><td>etcd\u6697\u53f7\u5316\u3001RBAC\u5236\u9650\u3001Git\u975e\u516c\u958b\u306a\u3069\u3092\u5fb9\u5e95<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[55],"tags":[56],"_links":{"self":[{"href":"https:\/\/itstudy365.com\/blog\/wp-json\/wp\/v2\/posts\/1351"}],"collection":[{"href":"https:\/\/itstudy365.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/itstudy365.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/itstudy365.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/itstudy365.com\/blog\/wp-json\/wp\/v2\/comments?post=1351"}],"version-history":[{"count":1,"href":"https:\/\/itstudy365.com\/blog\/wp-json\/wp\/v2\/posts\/1351\/revisions"}],"predecessor-version":[{"id":1352,"href":"https:\/\/itstudy365.com\/blog\/wp-json\/wp\/v2\/posts\/1351\/revisions\/1352"}],"wp:attachment":[{"href":"https:\/\/itstudy365.com\/blog\/wp-json\/wp\/v2\/media?parent=1351"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/itstudy365.com\/blog\/wp-json\/wp\/v2\/categories?post=1351"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/itstudy365.com\/blog\/wp-json\/wp\/v2\/tags?post=1351"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}