{"id":12875,"date":"2023-11-22T09:40:56","date_gmt":"2023-11-22T00:40:56","guid":{"rendered":"https:\/\/jennifersoft.com\/ko\/?p=12875"},"modified":"2024-03-28T15:14:48","modified_gmt":"2024-03-28T06:14:48","slug":"2023-11-22-kubernetes-12","status":"publish","type":"post","link":"https:\/\/jennifersoft.com\/ko\/blog\/kubernetes\/2023-11-22-kubernetes-12\/","title":{"rendered":"12. \ud5ec\ub984 Starter Packs \ubc0f \ud5ec\ub984 Diff \uc774\uc6a9"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">\uc774\ubc88 \uc7a5\uc740 \uc0ac\ub0b4\uc5d0\uc11c \uc790\uccb4 \uac1c\ubc1c\ud55c \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \ucfe0\ubc84\ub124\ud2f0\uc2a4 \ud658\uacbd\uc5d0 \uc124\uce58\ud558\uae30 \uc704\ud574\uc11c \ud5ec\ub984 \ud15c\ud50c\ub9bf\uc744 \uc774\uc6a9\ud558\ub294 \ubc29\ubc95\uc744 \uc54c\uc544\ubcf4\uaca0\uc2b5\ub2c8\ub2e4. \ud5ec\ub984 Starter Packs\ub97c \uc774\uc6a9\ud558\uba74 \ucee4\uc2a4\ud140 \ud15c\ud50c\ub9bf\uc744 \ud3b8\ub9ac\ud558\uac8c \uc0ac\uc6a9\ud560 \uc218 \uc788\uc5b4 \ud3b8\uc758\uc131\uacfc \ubcf4\uc548\uc744 \ub192\uc77c \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uadf8\ub9ac\uace0 \uc6b4\uc601 \ud658\uacbd\uc5d0\uc11c \ud5ec\ub984 \uc5c5\uadf8\ub808\uc774\ub4dc\ub97c \uc548\uc804\ud558\uac8c \uc791\uc5c5\ud560 \uc218 \uc788\ub294 \ud5ec\ub984 Diff \uba85\ub839\uc5b4\ub97c \uc2e4\uc2b5\uacfc \ud568\uaed8 \uc54c\uc544\ubcf4\uaca0\uc2b5\ub2c8\ub2e4.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\uc8fc\uc694 \ub0b4\uc6a9<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>\uac01 \ud68c\uc0ac, \uac1c\uc778 \ud658\uacbd\uc5d0 \ub530\ub77c \uc0ac\uc804 \uc815\uc758\ud55c \ud5ec\ub984 \ud15c\ud50c\ub9bf\uc744 \uc0ac\uc6a9\ud558\ub294 \ud5ec\ub984 Starter Packs\ub97c \uc0ac\uc6a9\ud558\uc5ec \ud6a8\uc728\uc801\uc73c\ub85c \ud5ec\ub984 \ucc28\ud2b8\ub97c \uad00\ub9ac\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.&nbsp;<\/li><li>\ud5ec\ub984 diff\ub97c \uc0ac\uc6a9\ud558\uba74 \uc5c5\uadf8\ub808\uc774\ub4dc \uc791\uc5c5 \uc2dc \ubcc0\uacbd \uc0ac\ud56d\uc744 \ubbf8\ub9ac \ud655\uc778\ud560 \uc218 \uc788\uc5b4 \uc7a5\uc560\ub97c \uc608\ubc29\ud558\ub294\ub370 \ub9ce\uc740 \ub3c4\uc6c0\uc774 \ub429\ub2c8\ub2e4.<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\uc2e4\uc2b5 \uacfc\uc81c<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>\ud5ec\ub984 Starter Packs\ub97c \uc774\uc6a9\ud55c \ud5ec\ub984 \ud15c\ud50c\ub9bf \ucc28\ud2b8 \uc0dd\uc131<\/li><li>\ud5ec\ub984 \uc5c5\uadf8\ub808\uc774\ub4dc \uc791\uc5c5 &#8211; \ud5ec\ub984 diff \uba85\ub839\uc5b4\ub97c \uc0ac\uc6a9\ud558\uc5ec \ud5ec\ub984 \ucc28\ud2b8 \uc5c5\uadf8\ub808\uc774\ub4dc \uc791\uc5c5 \uc804 \ubcc0\uacbd \ub0b4\uc5ed \uc0ac\uc804 \ud655\uc778<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\uae43\ud5d9 \ub9c1\ud06c<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/github.com\/junghoon2\/k8s-class\/tree\/main\/helm-starter-template\">https:\/\/github.com\/junghoon2\/k8s-class\/tree\/main\/helm-starter-template<\/a>&nbsp;<\/li><li><a href=\"https:\/\/github.com\/junghoon2\/k8s-class\/tree\/main\/foo\">https:\/\/github.com\/junghoon2\/k8s-class\/tree\/main\/foo<\/a>&nbsp;<\/li><\/ul>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>1. \uae30\ubcf8 \uc124\uc815\uc73c\ub85c \ud5ec\ub984 \ucc28\ud2b8 \uc0dd\uc131 &#8211; Helm Create<\/strong><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">\uc0ac\uc6a9\uc790 \uc815\uc758 \ud5ec\ub984 \ucc28\ud2b8\ub97c \uc0dd\uc131\ud558\ub294 \uae30\ubcf8 \uba85\ub839\uc5b4\ub294 \u2018helm create\u2019\uc785\ub2c8\ub2e4.&nbsp;<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\uc0c8 Helm \ucc28\ud2b8\ub97c \uc2dc\uc791\ud560 \ub54c, helm create \uba85\ub839\uc5b4\ub294 \ube60\ub974\uac8c \uc2dc\uc791\ud560 \uc218 \uc788\ub294 \ud45c\uc900 \ub514\ub809\ud1a0\ub9ac \uad6c\uc870\uc640 \ud568\uaed8 \ud544\uc694\ud55c \ud30c\uc77c \uc138\ud2b8\ub97c \uc81c\uacf5\ud569\ub2c8\ub2e4. \uc774 \uba85\ub839\uc5b4\ub97c \uc2e4\ud589\ud558\uba74, Helm\uc740 \uac1c\ubc1c\uc790\uac00 \uc218\uc815\ud558\uace0 \uc790\uc2e0\uc758 \uc560\ud50c\ub9ac\ucf00\uc774\uc158 \uc694\uad6c \uc0ac\ud56d\uc5d0 \ub9de\uac8c \ucc44\uc6cc\ub123\uc744 \uc218 \uc788\ub294 \uae30\ubcf8 \ud15c\ud50c\ub9bf\uc744 \uc0dd\uc131\ud569\ub2c8\ub2e4. \ud574\ub2f9 \ud15c\ud50c\ub9bf\uc5d0 \ud544\uc694\ud55c values.yaml \ud30c\uc77c\uc744 \ubcc0\uacbd\ud558\uc5ec \uac01 \uc0ac\uc6a9\uc790\uac00 \ud544\uc694\ud55c \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \ub9cc\ub4e4 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\uac04\ub2e8\ud55c \uc2e4\uc2b5\uc73c\ub85c \uc0c1\uc138 \ub0b4\uc6a9\uc744 \uc54c\uc544\ubcf4\uaca0\uc2b5\ub2c8\ub2e4. \uc0ac\uc6a9\ud558\ub294 \ubc84\uc804\uc5d0 \ub530\ub77c \uc57d\uac04 \ucc28\uc774\uac00 \uc788\uc744 \uc218 \uc788\uc73c\ubbc0\ub85c \ud5ec\ub984 \ubc84\uc804\uc744 \ud655\uc778\ud569\ub2c8\ub2e4. \uc800\ub294 \u2018v3.12.3\u2019 \ubc84\uc804\uc744 \uc0ac\uc6a9\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">(latte-prod:kube-system)k8s-class$ helm version\nversion.BuildInfo{Version:\"v3.12.3\", GitCommit:\"3a31588ad33fe3b89af5a2a54ee1d25bfe6eaa5e\", GitTreeState:\"clean\", GoVersion:\"go1.20.7\"}<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uc0c8\ub85c\uc6b4 \ud5ec\ub984 \ucc28\ud2b8\ub97c \uc0dd\uc131\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">$ (\u2388 |switch-singapore-test:argocd) helm create foo-chart\nCreating foo-chart<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">foo-chart\ub77c\ub294 \uc0c8\ub85c\uc6b4 \ub514\ub809\ud1a0\ub9ac\uac00 \uc0dd\uc131\ub418\uba70 \uc544\ub798\uc640 \uac19\uc740 \uad6c\uc870\ub85c \ud30c\uc77c\uc774 \ub9cc\ub4e4\uc5b4\uc9d1\ub2c8\ub2e4.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">$ (\u2388 |switch-singapore-test:argocd) ls foo-chart \nChart.yaml  charts      templates   values.yaml<\/pre>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">$ (\u2388 |switch-singapore-test:argocd) tree -L 2 foo-chart\nfoo-chart\n\u251c\u2500\u2500 Chart.yaml\n\u251c\u2500\u2500 charts\n\u251c\u2500\u2500 templates\n\u2502   \u251c\u2500\u2500 NOTES.txt\n\u2502   \u251c\u2500\u2500 _helpers.tpl\n\u2502   \u251c\u2500\u2500 deployment.yaml\n\u2502   \u251c\u2500\u2500 hpa.yaml\n\u2502   \u251c\u2500\u2500 ingress.yaml\n\u2502   \u251c\u2500\u2500 service.yaml\n\u2502   \u251c\u2500\u2500 serviceaccount.yaml\n\u2502   \u2514\u2500\u2500 tests\n\u2514\u2500\u2500 values.yaml\n\n4 directories, 9 files<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uae30\ubcf8\uc73c\ub85c \ud3ec\ud568\ub41c templates \ub514\ub809\ud1a0\ub9ac, values.yaml, Chart.yaml\uc744 \uc218\uc815\ud558\uc5ec \uc6d0\ud558\ub294 \ucc28\ud2b8\ub97c \ub9cc\ub4e4 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ud558\uc9c0\ub9cc \uc2e4\uc81c \uc6b4\uc601 \ud658\uacbd\uc5d0\uc11c \ub9ce\uc774 \uc0ac\uc6a9\ud558\ub294 ConfigMap, Secret \ub4f1\uc758 \ub9ac\uc18c\uc2a4 \ud30c\uc77c\uc774 \ud3ec\ud568\ub418\uc9c0 \uc54a\ub294 \ub4f1 \uc218\ub3d9\uc73c\ub85c \ud574\uc57c \ud560 \uc791\uc5c5\uc774 \ub9ce\uc774 \uc788\uc2b5\ub2c8\ub2e4.&nbsp;<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\uae30\ubcf8 \ud15c\ud50c\ub9bf\uc744 \uae30\uc900\uc73c\ub85c \uc218\uc815\uc744 \uc644\ub8cc\ud558\uba74 \u2018helm package\u2019 \uba85\ub839\uc5b4\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc804\uccb4 \ud5ec\ub984 \ucc28\ud2b8\ub97c \uc555\ucd95 \ud30c\uc77c\ub85c \ub9cc\ub4e4 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">$ (\u2388 |switch-singapore-test:argocd) helm package foo-chart \nSuccessfully packaged chart and saved it to: \/Users\/jerry\/private\/k8s-class\/foo-chart-0.1.0.tgz\n\n$ (\u2388 |switch-singapore-test:argocd) ls foo-chart-0.1.0.tgz \nfoo-chart-0.1.0.tgz<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\ud574\ub2f9 \uc555\ucd95 \ud30c\uc77c\ub85c \ud5ec\ub984 \ucc28\ud2b8\ub97c \uacf5\uc720\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.&nbsp;<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\ud558\uc9c0\ub9cc \uc5b8\uae09\ud558\uc600\ub4ef\uc774 \uc704\uc640 \uac19\uc740 \ubc29\ubc95\uc73c\ub85c \ud5ec\ub984 \ucc28\ud2b8\ub97c \uc0dd\uc131\ud558\uba74 \ub9e4\ubc88 values.yaml, templates \ub514\ub809\ud1a0\ub9ac\ub97c \uc0c8\ub86d\uac8c \uc218\uc815\ud574\uc57c \ud558\ub294 \ubc88\uac70\ub85c\uc6c0\uc774 \uc788\uc2b5\ub2c8\ub2e4. \ud574\ub2f9 \uc791\uc5c5\uc744 \ub9e4\ubc88 \uc0ac\ub78c\uc774 \ud574\uc57c \ud558\ubbc0\ub85c \uc2e4\uc218\uac00 \ubc1c\uc0dd\ud560 \uc218 \uc788\uace0 \ucd94\uac00 \uc2dc\uac04\uc774 \uc18c\uc694\ub429\ub2c8\ub2e4.&nbsp;<br>\ucee4\uc2a4\ud140 \ucc28\ud2b8\ub97c \uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 \ud5ec\ub984 Starter Packs \uc635\uc158\uc744 \uc54c\uc544\ubd05\ub2c8\ub2e4.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>2. \ud5ec\ub984 Starter Packs\ub97c \uc774\uc6a9\ud55c \ucee4\uc2a4\ud140 \uc560\ud50c\ub9ac\ucf00\uc774\uc158 \uc124\uce58 \uc2e4\uc2b5<\/strong><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">\uae30\ubcf8\uc73c\ub85c \uc81c\uacf5\ud558\ub294 \ud5ec\ub984 \ucc28\ud2b8\ub294 ConfigMap, Secret, \ubcf4\uc548 \uc124\uc815 \ub4f1\uc774 \ubd80\uc871\ud569\ub2c8\ub2e4. \ud5ec\ub984 Starter Packs \ud15c\ud50c\ub9bf\uc740 \ucfe0\ubc84\ub124\ud2f0\uc2a4 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \ub354 \ube60\ub974\uace0 \ud3b8\ub9ac\ud558\uac8c \uac1c\ubc1c\ud558\uace0 \ubc30\ud3ec\ud558\uae30 \uc704\ud574 \uc0ac\uc6a9\ub418\ub294 \ud15c\ud50c\ub9bf \uc138\ud2b8\uc785\ub2c8\ub2e4. \uac01 \ud68c\uc0ac \ud639\uc740 \uac1c\uc778\uc774 \ubcc4\ub3c4\ub85c \ud15c\ud50c\ub9bf\uc744 \uc9c0\uc815\ud558\uace0 \ud574\ub2f9 \ud15c\ud50c\ub9bf\uc744 \uae30\uc900\uc73c\ub85c \uc0c8\ub85c\uc6b4 \ud5ec\ub984 \ucc28\ud2b8\ub97c \ub9cc\ub4e4 \uc218 \uc788\ub294 \uc635\uc158\uc785\ub2c8\ub2e4.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Starter Packs\ub294 \uac01 \ud504\ub85c\uc81d\ud2b8\ub97c \uc2dc\uc791\ud558\ub294 \ub370 \ud544\uc694\ud55c \uae30\ubcf8 \uad6c\uc131\uacfc \uc124\uc815\uc744 \ud3ec\ud568\ud560 \uc218 \uc788\uc5b4 \uac1c\ubc1c\uc790\uc640 \uc6b4\uc601\uc790\uac00 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \uc27d\uac8c \uc2dc\uc791\ud558\uace0 \uad00\ub9ac\ud560 \uc218 \uc788\uac8c \ub3c4\uc640\uc90d\ub2c8\ub2e4. \uac01 \uc870\uc9c1\uacfc \uac1c\uc778 \ubcc4 \uc560\ud50c\ub9ac\ucf00\uc774\uc158 \uac1c\ubc1c\uacfc \ubc30\ud3ec\uc5d0 \ud544\uc694\ud55c \ud45c\uc900\ud654\ub41c \uad6c\uc870\ub97c \uc81c\uacf5\ud558\uc5ec \ud300 \uac04\uc758 \uc77c\uad00\uc131\uc744 \uc720\uc9c0\ud558\uace0 \uc560\ud50c\ub9ac\ucf00\uc774\uc158 \ud504\ub85c\uc81d\ud2b8\uc758 \uc720\uc9c0 \ubcf4\uc218\ub97c \uc6a9\uc774\ud558\uac8c \ud569\ub2c8\ub2e4.&nbsp;<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\uadf8\ub9ac\uace0 \uae30\ubcf8\uc801\uc778 \ucfe0\ubc84\ub124\ud2f0\uc2a4 \ub9ac\uc18c\uc2a4 \ubc0f Helm Chart \uad6c\uc870\ub97c \uc81c\uacf5\ud558\uc5ec \uc0c8\ub85c\uc6b4 \ud504\ub85c\uc81d\ud2b8\ub97c \uc2dc\uc791\ud560 \ub54c \ubcf5\uc7a1\ud55c \uc124\uc815 \uc791\uc5c5 \uc5c6\uc774 \ubc14\ub85c \uc560\ud50c\ub9ac\ucf00\uc774\uc158 \uac1c\ubc1c\uc5d0 \uc9d1\uc911\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ubcf4\uc548 \ubc0f \ubca0\uc2a4\ud2b8 \ud504\ub799\ud2f0\uc2a4 \uae30\ubc18\uc73c\ub85c \uc791\uc131\ud558\uc5ec \ubcf4\uc548 \uc704\ud5d8\uc744 \ucd5c\uc18c\ud654\ud558\uace0 \uc6b4\uc601\uc758 \ud6a8\uc728\uc131\uc744 \ub192\uc785\ub2c8\ub2e4.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&#8211;starter(\uc2dc\uc791\uc790) \uc635\uc158\uc744 \uc0ac\uc6a9\ud558\uba74 \ub9d0 \uadf8\ub300\ub85c \uc2dc\uc791\ud558\ub294 \ud30c\uc77c\uc744 \uc784\uc758\ub85c \uc9c0\uc815\ud558\uc5ec \ud574\ub2f9 \ud15c\ud50c\ub9bf \ud30c\uc77c\uc744 \uae30\uc900\uc73c\ub85c \ud5ec\ub984 \ucc28\ud2b8\ub97c \uc791\uc131\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ud15c\ud50c\ub9bf \ud30c\uc77c\uc5d0 \uc0ac\uc804\uc5d0 \ud544\uc694\ud55c \ubcf4\uc548 \uad6c\uc131, ConfigMap \ub4f1\uc744 \ud3ec\ud568\ud558\uba74 \ud68c\uc0ac\uc758 \ubcf4\uc548 \uc815\ucc45 \ub4f1\uc744 \uc900\uc218\ud558\ub294 \ud5ec\ub984 \ucc28\ud2b8\ub97c \ub9cc\ub4e4 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\ud544\uc790\uac00 \uc0ac\uc6a9\ud558\ub294 Starter Packs \ud15c\ud50c\ub9bf \ub514\ub809\ud1a0\ub9ac\uc785\ub2c8\ub2e4. \uae43\ud5d9\uc5d0\uc11c \uc804\uccb4 \ud30c\uc77c\uc744 \ub0b4\ub824 \ubc1b\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/github.com\/junghoon2\/k8s-class\/tree\/main\/helm-starter-template\">helm-starter-template<\/a>&nbsp;<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">$ (\u2388 |SWITCH-SEOUL-PROD:nlp) tree -L 2 helm-starter-template \nhelm-starter-template\n\u251c\u2500\u2500 Chart.yaml\n\u251c\u2500\u2500 ci\n\u2502   \u2514\u2500\u2500 values.yaml\n\u2514\u2500\u2500 templates\n    \u251c\u2500\u2500 NOTES.txt\n    \u251c\u2500\u2500 _helpers.tpl\n    \u251c\u2500\u2500 deployment.yaml\n    \u251c\u2500\u2500 env-cm.yaml\n    \u251c\u2500\u2500 hpa.yaml\n    \u251c\u2500\u2500 ingress.yaml\n    \u251c\u2500\u2500 service.yaml\n    \u251c\u2500\u2500 serviceaccount.yaml\n    \u251c\u2500\u2500 servicemonitor.yaml\n    \u2514\u2500\u2500 tests\n\n4 directories, 11 files<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">. ci\/values.yaml<br>\uae30\ubcf8 values.yaml \ud30c\uc77c\uc744 ci \ub514\ub809\ud1a0\ub9ac\ub85c \uc774\ub3d9\ud558\uc600\uc2b5\ub2c8\ub2e4. \ud658\uacbd \uad6c\uc131\uc5d0 \ub530\ub77c values.yaml \ud30c\uc77c\uc744 \ubcf5\uc0ac\ud558\uc5ec test-values.yaml, dev\/stage\/prod-values.yaml \ub4f1\uc73c\ub85c \ud5ec\ub984 values \ud30c\uc77c\uc744 \ucd94\uac00\ud558\uc5ec \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">. templates \ud30c\uc77c \uc218\uc815<br>\uae30\ubcf8 \ud15c\ud50c\ub9bf\uc5d0 \ud3ec\ud568\ub418\uc9c0 \uc54a\uc558\ub358 servicemonitor, ingress, env-cm(configMap) \ub4f1\uc758 \ud30c\uc77c\uc744 \ucd94\uac00\ud558\uc600\uace0 \uae30\ubcf8 deployment.yaml \ud30c\uc77c\uc5d0 terminationGracePeriodSeconds \ub4f1\uc758 \ucee4\uc2a4\ud140 \uc124\uc815\uc744 \ucd94\uac00\ud558\uc600\uc2b5\ub2c8\ub2e4.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\uadf8\ub7fc \uc0c1\uc138\ud55c \uc124\uc815\uc744 \uc54c\uc544\ubd05\ub2c8\ub2e4. \uc218\uc815\ud55c \ud5ec\ub984 values \ud30c\uc77c\uc785\ub2c8\ub2e4.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/github.com\/junghoon2\/k8s-class\/blob\/main\/helm-starter-template\/ci\/values.yaml\">ci\/values.yaml<\/a><\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">image:\n  repository: pengbai\/docker-supermario\n  pullPolicy: Always\n  tag: \"latest\" # \uc774\ubbf8\uc9c0 \ud0dc\uadf8\ub97c \uc9c0\uc815\ud569\ub2c8\ub2e4.\n\nenv: {}\n# \uc704\uc5d0 {}\ub97c \uc9c0\uc6b0\uace0 &lt;\ud658\uacbd\ubcc0\uc218>: &lt;\uac12>\uc744 \uc4f0\uc138\uc694\n# e.g.\n# SERVER_PORT: 8080\n# SERVER_HOST: atlas-default\n# ...\n\nsecrets: {}\n# \uc704\uc5d0 {}\ub97c \uc9c0\uc6b0\uace0 &lt;\ud658\uacbd\ubcc0\uc218>: &lt;\uac12>\uc744 \uc4f0\uc138\uc694\n# e.g.\n# PostgreSQL_PASSWORD: cGFzc3dvcmQ=\n# ...\n\nterminationGracePeriodSeconds: 30\n\nmetrics:\n  enabled: false # \uba54\ud2b8\ub9ad\uc744 \uc0ac\uc6a9\ud560\uc9c0 \uacb0\uc815\ud569\ub2c8\ub2e4\n  path: \/metrics # \uba54\ud2b8\ub9ad \uacbd\ub85c\ub97c \uc9c0\uc815\ud569\ub2c8\ub2e4.\n\nprobes:\n  liveness:\n    enabled: false\n    path: \/ # liveness \uacbd\ub85c\ub97c \ubc14\uafc0 \uc218 \uc788\uc2b5\ub2c8\ub2e4 e.g. \/healthz\n  readiness:\n    enabled: false\n    path: \/ # readiness \uacbd\ub85c\ub97c \ubc14\uafc0 \uc218 \uc788\uc2b5\ub2c8\ub2e4 e.g. \/healthz\n\nimagePullSecrets: []\nnameOverride: \"\"\nfullnameOverride: \"\"\n\n# Authentication\nserviceAccount:\n  create: false\n  annotations: {}\n  name: \"\"\n\npodAnnotations: {}\n\n# Security\npodSecurityContext: {}\nsecurityContext:\n  allowPrivilegeEscalation: false\n  privileged: false\n  capabilities:\n    drop:\n    - ALL\n  readOnlyRootFilesystem: true\n\n# Networking\ncontainer:\n  port: 8080\n\nservice:\n  type: ClusterIP\n  port: 80\n\ningress:\n  enabled: false\n  className: \"\"\n  annotations: {}\n  hosts:\n  - host: chart-example.local\n    paths:\n    - path: \/\n      pathType: ImplementationSpecific\n  tls: []\n\n# Conatiner resources\nresources:\n  limits:\n  # memory: 128Mi\n  requests:\n    cpu: 10m\n    memory: 128Mi\n\n# HPA\nautoscaling:\n  enabled: false\n  minReplicas: 1\n  maxReplicas: 10\n  targetCPUUtilizationPercentage: 80\n\n# Scheduling\nnodeSelector: {}\ntolerations: []\naffinity: {}<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">. image.repository<br>\uc0ac\ub0b4(Harbor) \ud639\uc740 \uc678\ubd80 \uc774\ubbf8\uc9c0 \uc800\uc7a5\uc18c(ECR)\uc758 \uc8fc\uc18c\ub97c \uc9c0\uc815\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">. image.pullPolicy: Always<br>\ubcf4\uc548 \uc0c1 \uae30\ubcf8 \u2018IfNotPresent\u2019 \ubcf4\ub2e4\ub294 \u2018Always\u2019 \uc0ac\uc6a9\uc744 \uad8c\uace0\ud569\ub2c8\ub2e4. \ub9e4\ubc88 \uc774\ubbf8\uc9c0\ub97c \ub0b4\ub824\ubc1b\uc544 \ub124\ud2b8\uc6cc\ud06c \ud2b8\ub798\ud53d\uc774 \uc99d\uac00\ud558\uace0 \ud30c\ub4dc\uac00 \uc2e4\ud589\ud558\ub294 \uc18d\ub3c4\ub294 \ub2a6\uc5b4\uc9c8 \uc218 \uc788\uc9c0\ub9cc \uc545\uc131 \uc0ac\uc6a9\uc790\uac00 \ub85c\uceec\uc5d0 \ub2e4\uc6b4\ubc1b\uc740 \uc774\ubbf8\uc9c0\ub97c \ubcc0\uacbd\ud558\uc5ec \uc545\uc131 \ucf54\ub4dc \ub4f1\uc744 \ucd94\uac00\ud558\ub294 \uacf5\uaca9\uc744 \uc608\ubc29\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. Prod \ud658\uacbd\uc5d0\uc11c\ub294 \u2018Always\u2019, Dev\/Stage \ud658\uacbd\uc5d0\uc11c\ub294 \u2018\u2018IfNotPresent\u2019 \uc0ac\uc6a9\ud558\ub294 \uac83\uc774 \uc77c\ubc18\uc801\uc785\ub2c8\ub2e4. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u2018latest\u2019 \ubc84\uc804\uc744 \uc0ac\uc6a9\ud558\uace0 \u2018\u2018IfNotPresent\u2019 \uc635\uc158\uc744 \uc0ac\uc6a9\ud558\uba74 \uc774\ubbf8\uc9c0 \ubcc0\uacbd \uc0ac\ud56d\uc774 \ubc18\uc601\ub418\uc9c0 \uc54a\ub294 \ubb38\uc81c\uac00 \ubc1c\uc0dd\ud560 \uc218 \uc788\uc73c\ubbc0\ub85c \ucee8\ud14c\uc774\ub108 \uc774\ubbf8\uc9c0 \ubc84\uc804\uc740 \u2018latest\u2019\ub97c \uc0ac\uc6a9\ud558\uc9c0 \uc54a\ub294 \uac83\uc744 \uad8c\uace0\ud569\ub2c8\ub2e4.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">. env, secrets<br>\ucee8\ud14c\uc774\ub108 \uc774\ubbf8\uc9c0 \ub0b4\uc758 \uad6c\uc131 \uc815\ubcf4\ub97c \ud558\ub4dc\ucf54\ub529\ud558\uc9c0 \uc54a\ub3c4\ub85d \ud544\uc218\ub85c \uc0ac\uc6a9\ud558\ub294 ConfigMap, Secret\uc73c\ub85c \ubcc4\ub3c4\ub85c \ubd84\ub9ac\ud558\uc600\uc2b5\ub2c8\ub2e4. \ud658\uacbd \ubcc0\uc218\ub85c \ubd84\ub9ac\ud558\uc5ec Dev\/Stage\/Prod \ub4f1 \ud658\uacbd\uc5d0 \ub530\ub77c \ub2ec\ub77c\uc9c0\uc9c0 \uc54a\ub294 \ubd88\ubcc0 \uc774\ubbf8\uc9c0\ub97c \uc0ac\uc6a9\ud558\ub294 \uac83\uc744 \uc801\uadf9 \uad8c\uace0\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\ubb3c\ub860 Secret \ud30c\uc77c\uc740 \ubbfc\uac10\ud55c \uc815\ubcf4\ub97c \ud3ec\ud568\ud558\ubbc0\ub85c base64 \uc778\ucf54\ub529 \ub0b4\uc6a9\uc744 \uadf8\ub300\ub85c \uc0ac\uc6a9\ud558\ub294 \uac83\uc744 \uad8c\uace0\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \uc2e4\uc81c \uc6b4\uc601 \ud658\uacbd\uc5d0\uc11c\ub294 Vault, Sealed Secret, SOPS \ub4f1\uc744 \uc0ac\uc6a9\ud558\ub294 \uac83\uc744 \uad8c\uc7a5\ud569\ub2c8\ub2e4.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">. terminationGracePeriodSeconds<br>\uc11c\ube44\uc2a4 \uc548\uc815\uc131\uc744 \uc704\ud558\uc5ec Grace Shutdown \uc124\uc815\uc744 \ubcc4\ub3c4\ub85c \ubd84\ub9ac\ud558\uc600\uc2b5\ub2c8\ub2e4. \uc0ac\uc6a9\ud558\ub294 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0 \ub530\ub77c \uc11c\ube44\uc2a4\uac00 \ube44\uc815\uc0c1 \uc885\ub8cc\ub418\uc9c0 \uc54a\uace0 \uc548\uc815\uc801\uc73c\ub85c \uc885\ub8cc\ud560 \uc218 \uc788\ub3c4\ub85d \ud544\uc694\ud55c \uc2dc\uac04\uc744 \uc9c0\uc815\ud569\ub2c8\ub2e4. \ud544\uc790\ub294 \u201814400\u2019(4\uc2dc\uac04)\ub3c4 \ub9ce\uc774 \uc9c0\uc815\ud558\uc600\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">. metrics<br>\uac01 \uc560\ud50c\ub9ac\ucf00\uc774\uc158 \ub9c8\ub2e4 \ubcc4\ub3c4\ub85c Custom \uba54\ud2b8\ub9ad\uc744 \uc0ac\uc6a9\ud558\ub294 \uacbd\uc6b0 ServiceMonitor CRD\uc5d0 \ub4f1\ub85d\ub2c8\ub2e4. ServiceMonitor\ub294 Prometheus Operator\ub97c \uc0ac\uc6a9\ud558\uc5ec \ucee4\uc2a4\ud140 \uba54\ud2b8\ub9ad\uc744 \uc218\uc9d1\ud558\uace0 \ucfe0\ubc84\ub124\ud2f0\uc2a4 \ud658\uacbd\uc5d0\uc11c \uc11c\ube44\uc2a4\ub97c \ubaa8\ub2c8\ud130\ub9c1\ud558\ub294\ub370 \uc0ac\uc6a9\ud569\ub2c8\ub2e4. ServiceMonitor \ub9ac\uc18c\uc2a4\ub294 Prometheus Operator\uac00 \uad00\ub9ac\ud558\ub294 Prometheus \uc778\uc2a4\ud134\uc2a4\uc5d0 \uc758\ud574 \uc790\ub3d9\uc73c\ub85c \ubc1c\uacac\ub418\uba70, \uc774\ub294 \uba54\ud2b8\ub9ad \uc218\uc9d1\uc744 \uc704\ud55c \ud0c0\uac9f \uc11c\ube44\uc2a4\uc758 \ubaa9\ub85d\uc744 \ub3d9\uc801\uc73c\ub85c \uc5c5\ub370\uc774\ud2b8\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">. probes<br>\ucee8\ud14c\uc774\ub108\uac00 \uc815\uc0c1\uc801\uc73c\ub85c \ub3d9\uc791\ud558\uace0 \uc788\ub294\uc9c0 \uc5ec\ubd80\ub97c \ud655\uc778\ud558\ub294 \ub370 \uc0ac\uc6a9\ud558\ub294 Liveness Probe\uc640 \ucee8\ud14c\uc774\ub108\uac00 \uc694\uccad\uc744 \ucc98\ub9ac\ud560 \uc900\ube44\uac00 \ub418\uc5c8\ub294\uc9c0 \uc5ec\ubd80\ub97c \ud655\uc778\ud558\ub294 \ub370 \uc0ac\uc6a9\ud558\ub294 Readiness Probe \uc124\uc815\uc744 \ucd94\uac00\ud558\uc600\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">. securityContext<br>\ud68c\uc0ac\uc758 \ucee8\ud14c\uc774\ub108 \ubcf4\uc548 \uc815\ucc45\uc744 \ucd94\uac00\ud558\uc600\uc2b5\ub2c8\ub2e4. \ubcf4\uc548\uc774 \ud56d\uc0c1 \uadf8\ub807\ub4ef\uc774 \ucc98\uc74c\ubd80\ud130 \uc815\ucc45\uc73c\ub85c \uc81c\uacf5\ud558\uc9c0 \uc54a\uc73c\uba74 \uc774 \ud6c4 \uc218\uc815\ud558\uae30 \uc5b4\ub835\uc2b5\ub2c8\ub2e4. \ud30c\ub4dc \uc2e4\ud589 \uc2dc \uac15\uc81c\ud558\ub3c4\ub85d \ud5ec\ub984 \ucc28\ud2b8\uc5d0 \uae30\ubcf8\uc73c\ub85c \ud3ec\ud568\ud558\uc600\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">. securityContext.allowPrivilegeEscalation<br>\u2018allowPrivilegeEscalation\u2019 \uc635\uc158\uc774 \u2018true\u2019\ub85c \uc124\uc815\ub418\uba74 \ucee8\ud14c\uc774\ub108 \ud504\ub85c\uc138\uc2a4\uac00 \ub354 \ub192\uc740 \uad8c\ud55c\uc744 \uc5bb\uc744 \uc218 \uc788\ub294 \uc870\uac74\uc774 \ub429\ub2c8\ub2e4. \uc774\ub294 \uc8fc\ub85c \ucee8\ud14c\uc774\ub108\uac00 \uc2e4\ud589\ub418\ub294 \ud504\ub85c\uc138\uc2a4\uac00 set-user-ID \ub610\ub294 set-group-ID \uad8c\ud55c\uc744 \uac00\uc9c4 \uc2e4\ud589 \ud30c\uc77c\uc744 \uc0ac\uc6a9\ud560 \ub54c \ubc1c\uc0dd\ud569\ub2c8\ub2e4. \uc774\ub7ec\ud55c \uc2e4\ud589 \ud30c\uc77c\uc744 \uc0ac\uc6a9\ud558\uba74 \ud504\ub85c\uc138\uc2a4\ub294 \ud30c\uc77c\uc744 \uc18c\uc720\ud55c \uc0ac\uc6a9\uc790\ub098 \uadf8\ub8f9\uc758 \uad8c\ud55c\uc73c\ub85c \uc2e4\ud589\ub420 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u2018false\u2019 \uc635\uc158\uc73c\ub85c \uc9c0\uc815\ud558\uba74 \uad8c\ud55c \uc0c1\uc2b9, \uc989 \u2018root\u2019 \uc2e4\ud589\uc744 \ubc29\uc9c0\ud558\uc5ec \uc880 \ub354 \uc548\uc804\ud558\uac8c \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ubcf4\uc548 \uad8c\uace0 \uc0ac\ud56d\uc785\ub2c8\ub2e4.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">. securityContext.privileged<br>Kubernetes\uc758 securityContext \uc124\uc815\uc5d0\uc11c privileged \uc635\uc158\uc740 \ucee8\ud14c\uc774\ub108\uac00 \ud638\uc2a4\ud2b8 \uc2dc\uc2a4\ud15c\uc758 \ubaa8\ub4e0 \uc7a5\uce58\uc5d0 \ub300\ud574 \uc561\uc138\uc2a4\ud560 \uc218 \uc788\ub3c4\ub85d \ud5c8\uc6a9\ud558\ub294 \uc124\uc815\uc785\ub2c8\ub2e4. \uc774 \uc635\uc158\uc774 true\ub85c \uc124\uc815\ub418\uba74, \ucee8\ud14c\uc774\ub108 \ub0b4\uc758 \ud504\ub85c\uc138\uc2a4\ub294 \ud638\uc2a4\ud2b8 \uc2dc\uc2a4\ud15c\uc5d0\uc11c \uac70\uc758 \ubaa8\ub4e0 \uc791\uc5c5\uc744 \uc218\ud589\ud560 \uc218 \uc788\ub294 \uad8c\ud55c\uc744 \uac16\uac8c \ub429\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">privileged \ubaa8\ub4dc\ub85c \uc2e4\ud589\ub418\ub294 \ucee8\ud14c\uc774\ub108\ub294 \ud638\uc2a4\ud2b8 \uba38\uc2e0\uc758 \ucee4\ub110 \uae30\ub2a5\uc5d0 \ub300\ud574 \ub354 \ub192\uc740 \uc218\uc900\uc758 \uc811\uadfc \uad8c\ud55c\uc744 \uac00\uc9c0\uac8c \ub418\uba70, \uc774\ub294 \uc77c\ubc18 \ucee8\ud14c\uc774\ub108\ubcf4\ub2e4 \ud6e8\uc52c \ub354 \ub9ce\uc740 \uad8c\ud55c\uc744 \ubd80\uc5ec\ubc1b\uc2b5\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uc5b4, \ud638\uc2a4\ud2b8\uc758 \ub124\ud2b8\uc6cc\ud06c \uc2a4\ud0dd\uc744 \uc870\uc791\ud558\uac70\ub098 \ub2e4\ub978 \ucee8\ud14c\uc774\ub108\uc5d0 \uc601\ud5a5\uc744 \ubbf8\uce58\ub294 \ub4f1\uc758 \uc791\uc5c5\uc744 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\uba85\uc2dc\uc801\uc73c\ub85c \u2018false\u2019 \uc124\uc815\uc744 \uad8c\uace0\ud569\ub2c8\ub2e4.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">. securityContext.capabilities<br>capabilities\ub294 Linux \uae30\ub2a5(capabilities)\uc744 \ucee8\ud14c\uc774\ub108 \ud504\ub85c\uc138\uc2a4\uc5d0 \ucd94\uac00\ud558\uac70\ub098 \uc0ad\uc81c\ud558\ub294 \uac83\uc744 \uad00\ub9ac\ud569\ub2c8\ub2e4. Linux \uae30\ub2a5\uc740 \uc804\ud1b5\uc801\uc778 \ub8e8\ud2b8 \uad8c\ud55c\uc744 \ub354 \uc138\ubd84\ud654\ud558\uc5ec, \ud2b9\uc815 \uad8c\ud55c\uc744 \ud504\ub85c\uc138\uc2a4\uc5d0 \ubd80\uc5ec\ud560 \uc218 \uc788\uac8c \ud558\ub294 \uc2dc\uc2a4\ud15c\uc785\ub2c8\ub2e4. \ub9cc\uc57d \ucd94\uac00 \uad8c\ud55c\uc774 \ud544\uc694\ud558\ub2e4\uba74 \ud544\uc694\ud55c \uae30\ub2a5\ub9cc \uba85\uc2dc\uc801\uc73c\ub85c \uc9c0\uc815\ud558\uc5ec \uc2e4\ud589\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">. container.port: 8080<br>\ucee8\ud14c\uc774\ub108\uac00 \uc2e4\ud589\ud558\ub294 port \uc785\ub2c8\ub2e4. \uc2dc\uc2a4\ud15c \uc0ac\uc6a9\uc790\uac00 \uc0ac\uc6a9\ud558\ub294 \u20181024\u2019 \uc774\ud6c4\uc758 \ud3ec\ud2b8\ub97c \uc0ac\uc6a9\ud558\ub294 \uac83\uc744 \uad8c\uace0\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">. service.port: 80<br>\uc678\ubd80 \ud30c\ub4dc \ud639\uc740 \uc0ac\uc6a9\uc790\uac00 \uc811\uc18d\ud558\ub294 \uc11c\ube44\uc2a4 \ud3ec\ud2b8\uc785\ub2c8\ub2e4. \ucee8\ud14c\uc774\ub108 \ub0b4\ubd80 \ud3ec\ud2b8\uac00 \uc544\ub2c8\ub77c \uc678\ubd80\uc5d0\uc11c \uc811\uc18d\ud558\ub294 \ud3ec\ud2b8\uc774\ubbc0\ub85c \uc77c\ubc18 \uc6f9\uc5d0\uc11c \uc0ac\uc6a9\ud558\ub294 \uac83\uacfc \ub3d9\uc77c\ud558\uac8c \u201880\u2019 \ud3ec\ud2b8\ub97c \uc0ac\uc6a9\ud558\ub294 \uac83\uc774 \ud3b8\ub9ac\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">. ingress<br>\ud30c\ub4dc\uac00 \uc678\ubd80 \uc811\uadfc\uc774 \ud544\uc694\ud558\uba74 \uc778\uadf8\ub808\uc2a4\ub97c \uc774\uc6a9\ud558\ub3c4\ub85d \uc778\uadf8\ub808\uc2a4 \uc124\uc815\uc744 \ucd94\uac00\ud558\uc600\uc2b5\ub2c8\ub2e4. Annotations, Host \uc815\ubcf4 \ub4f1\uc744 \ucd94\uac00\ud558\uba74 \ud5ec\ub984 \ucc28\ud2b8 \ubc30\ud3ec \uc2dc \uc778\uadf8\ub808\uc2a4 \ub9ac\uc18c\uc2a4\uac00 \uac19\uc774 \ubc30\ud3ec\ub429\ub2c8\ub2e4. External DNS Controller\ub97c \ud568\uaed8 \uc0ac\uc6a9\ud558\ub294 Host \uc815\ubcf4\ub97c \uae30\uc900\uc73c\ub85c \uc790\ub3d9\uc73c\ub85c Route 53\uc758 \ub3c4\uba54\uc778\uae4c\uc9c0 \ub4f1\ub85d\ud558\ubbc0\ub85c \ucd94\uac00 \uc791\uc5c5\uc774 \ud544\uc694\uc5c6\uc73c\ubbc0\ub85c \ud3b8\ub9ac\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">. resources<br>\uae30\ubcf8 \uc124\uc815\uc5d0 \uac04\uacfc\ud558\uae30 \uc26c\uc6b4 \uc790\uc6d0\uc758 Requests, Limits \uc124\uc815\uc744 \ud3ec\ud568\ud569\ub2c8\ub2e4. \ucc38\uace0\ub85c \ud544\uc790\ub294 \uc790\uc6d0\uc744 \ud6a8\uacfc\uc801\uc73c\ub85c \uc0ac\uc6a9\ud558\uae30 \uc704\ud558\uc5ec CPU\ub294 Limit \uc124\uc815\uc744 \ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">. autoscaling<br>\ud5ec\ub984 \ucc28\ud2b8\uc5d0 HPA \ub9ac\uc18c\uc2a4\ub3c4 \uac19\uc774 \ubc30\ud3ec\ud560 \uc218 \uc788\ub3c4\ub85d autoscaling \uc124\uc815\uc744 \ud3ec\ud568\ud558\uc600\uc2b5\ub2c8\ub2e4. \ud544\uc694\uc5d0 \ub530\ub77c \u2018true\u2019, \u2018false\u2019 \uc635\uc158\uc744 \uc9c0\uc815\ud569\ub2c8\ub2e4.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">. tolerations, affinity<br>Advanced Scheduling \uad00\ub828 \uc124\uc815\uc744 \ucd94\uac00\ud558\uc600\uc2b5\ub2c8\ub2e4. taint \uc124\uc815\ub41c \ub178\ub4dc\uc5d0 \uc2a4\ucf00\uc904\ub9c1 \uac00\ub2a5\ud558\uac8c toleration \uc124\uc815\uc744 \ucd94\uac00\ud569\ub2c8\ub2e4. podAffinity, nodeAffinity \uc124\uc815\uc73c\ub85c \ud544\uc694\ud55c \ud30c\ub4dc\uc640 \ub178\ub4dc\uc5d0 \uc2e4\ud589\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\uadf8\ub7fc \ud574\ub2f9 Starter Packs \ucc28\ud2b8\ub97c \uae30\uc900\uc73c\ub85c \uc0c8\ub85c\uc6b4 \ucc28\ud2b8\ub97c \ub9cc\ub4e4\uc5b4\ubcf4\uaca0\uc2b5\ub2c8\ub2e4. helm create \uc635\uc158\uc5d0 &#8211;starter\ub97c \ucd94\uac00\ud558\uc5ec \uc704\uc5d0\uc11c \uc0dd\uc131\ud55c Starter Packs \ub514\ub809\ud1a0\ub9ac \uc704\uce58\ub97c \uc9c0\uc815\ud569\ub2c8\ub2e4. <br><\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">$ (\u2388 |SWITCH-SEOUL-PROD:nlp) helm create foo --starter ~\/private\/k8s-class\/helm-starter-template \nCreating foo<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uc0c8\ub85c\uc6b4 foo \ud5ec\ub984 \ucc28\ud2b8\uac00 \uc0dd\uc131\ub418\uc5c8\uc2b5\ub2c8\ub2e4. (<a href=\"https:\/\/github.com\/junghoon2\/k8s-class\/tree\/main\/foo\">\ud544\uc790 \uae43\ud5d9 \ud30c\uc77c<\/a>) \ud574\ub2f9 \ucc28\ud2b8\uc5d0 \uc6d0\ud558\ub294 \uc124\uc815\uc744 \ud3ec\ud568\ud558\uc5ec \uc0c8\ub85c\uc6b4 \ud5ec\ub984 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \ubc30\ud3ec\ud569\ub2c8\ub2e4.&nbsp;<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\uae30\uc874 values.yaml \ud30c\uc77c\uc5d0 ConfigMap\uacfc Secret \ubd80\ubb38\uc744 \uc544\ub798\uc640 \uac19\uc774 \ubcc0\uacbd\ud569\ub2c8\ub2e4. \u2018secrets\u2019\uc5d0 \ub4f1\ub85d\ud55c \ubcc0\uc218\ub294 base64 \uc778\ucf54\ub529\ub41c \uac12\uc73c\ub85c \ub4f1\ub85d\ud569\ub2c8\ub2e4.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">ci\/values.yaml<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">env:\n  SERVER_PORT: 8080\n\nsecrets:\n  PostgreSQL_PASSWORD: cGFzc3dvcmQ=<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\ud5ec\ub984 \ucc28\ud2b8\ub97c \uc124\uce58\ud569\ub2c8\ub2e4.<br><\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">(jerry-test:default)foo$ cd foo\n(jerry-test:default)foo$ k ns default\n(jerry-test:default)foo$ helm install foo -f ci\/values.yaml .\nNAME: foo\nLAST DEPLOYED: Wed Nov  8 05:34:21 2023\nNAMESPACE: default\nSTATUS: deployed\nREVISION: 1\nNOTES:\n1. Get the application URL by running these commands:\n  export POD_NAME=$(kubectl get pods --namespace default -l \"app.kubernetes.io\/name=foo,app.kubernetes.io\/instance=foo\" -o jsonpath=\"{.items[0].metadata.name}\")\n  export CONTAINER_PORT=$(kubectl get pod --namespace default $POD_NAME -o jsonpath=\"{.spec.containers[0].ports[0].containerPort}\")\n  echo \"Visit http:\/\/127.0.0.1:8080 to use your application\"\n  kubectl --namespace default port-forward $POD_NAME 8080:$CONTAINER_PORT\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\ud5ec\ub984 Starter \ucc28\ud2b8\uc5d0 \ud3ec\ud568\ub41c \uc124\uc815\uc774 ConfigMap, Secret \ub9ac\uc18c\uc2a4\ub85c \uc815\uc0c1 \uc124\uce58\ub429\ub2c8\ub2e4.<br><\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">(jerry-test:default)foo$ k get pod,cm,secret\nNAME                            READY   STATUS        RESTARTS   AGE\npod\/foo-655c44d96b-gtzqb        1\/1     Running       0          97s\n\nNAME                         DATA   AGE\nconfigmap\/foo-env            1      98s\n\nNAME                               TYPE                 DATA   AGE\nsecret\/foo-secret                  Opaque               1      98s<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uc2e4\ud589\ub41c \ud30c\ub4dc\uc5d0 \uc811\uc18d\ud558\uc5ec \ud658\uacbd \ubcc0\uc218\ub97c \ud655\uc778\ud558\uba74 ConfigMap, Secret\uc5d0 \ub4f1\ub85d\ud55c \ub0b4\uc6a9\uc744 \ud655\uc778\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. base64\ub85c \uc778\ucf54\ub529\ub41c \ubb38\uc790\uc5f4\uc774 \ud3c9\ubb38\uc73c\ub85c \ubcc0\ud658\ub418\uc5b4 \uc815\uc0c1\uc73c\ub85c \ucd9c\ub825\ub429\ub2c8\ub2e4.<br><\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">$ (\u2388 |switch-singapore-test:default) k exec -it foo-starter-6f9d56858c-rtkxm -- sh\n$ echo $SERVER_PORT\n8080\n$ echo $PostgreSQL_PASSWORD\npassword<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uac04\ub2e8\ud788 port-forwarding \uba85\ub839\uc5b4\ub97c \uc774\uc6a9\ud558\uc5ec \uc6f9 \ud398\uc774\uc9c0\uc5d0 \uc811\uc18d\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<br><\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">(jerry-test:default)foo$ k get svc foo\nNAME   TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)   AGE\nfoo    ClusterIP   172.20.107.67   &lt;none>        80\/TCP    3m7s\n\n(jerry-test:default)foo$ k port-forward svc\/foo 8080:80\nForwarding from 127.0.0.1:8080 -> 8080\nForwarding from [::1]:8080 -> 8080<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uc11c\ube44\uc2a4 \uc774\ub984\uc744 \uae30\uc900\uc73c\ub85c port-forwarding \uba85\ub839\uc5b4\ub97c \uc2e4\ud589\ud569\ub2c8\ub2e4. \ud544\uc790\uac00 \uae30\ubcf8 \uc774\ubbf8\uc9c0\ub85c \uc9c0\uc815\ud55c \uc288\ud37c\ub9c8\ub9ac\uc624\uac00 \uc815\uc0c1\uc73c\ub85c \uc2e4\ud589\ub418\ub294 \uac83\uc744 \ud655\uc778\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<br><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-us.googleusercontent.com\/bVZ7jO5v-bmgFFsNBu9aCPkx3u_vjp7NLiBogBupiFmFz2VzllYtSCVdi6oWzZqwcMZ3kwsPN2AoOQMuBZVoYJtymenAB1t-9iK-vaG6IQIG8-xMwFgxG8Xe-O_GmHsx1gPnK5Te20CDuxC5xf-D6O8\" alt=\"\"\/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">3. \ud5ec\ub984 Diff \uba85\ub839\uc5b4\ub97c \uc774\uc6a9\ud558\uc5ec \uc548\uc804\ud558\uac8c \ud5ec\ub984 \uc5c5\uadf8\ub808\uc774\ub4dc \ud558\uae30<br><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">\uc2e4\uc81c \ucfe0\ubc84\ub124\ud2f0\uc2a4\ub97c \uc6b4\uc601\ud558\uba74 \ud5ec\ub984 \ucc28\ud2b8\ub85c \uc124\uce58\ud55c \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \ubcc0\uacbd\ud574\uc57c \ud558\ub294 \uacbd\uc6b0\uac00 \ub9ce\uc2b5\ub2c8\ub2e4. Helm \ucc28\ud2b8\ub97c \uc5c5\uadf8\ub808\uc774\ub4dc\ud560 \ub54c\ub294 \uc608\uae30\uce58 \uc54a\uc740 \ubcc0\uacbd \uc0ac\ud56d\uc73c\ub85c \uc778\ud55c \ubb38\uc81c\ub97c \ud53c\ud558\uae30 \uc704\ud574 \uc8fc\uc758\uac00 \ud544\uc694\ud569\ub2c8\ub2e4. \uc5ec\uae30\uc11c Helm Diff \ud50c\ub7ec\uadf8\uc778\uc758 \uc5ed\ud560\uc774 \uc911\uc694\ud574\uc9d1\ub2c8\ub2e4. Helm Diff \uba85\ub839\uc5b4\ub97c \uc0ac\uc6a9\ud558\uc5ec Helm \ucc28\ud2b8\ub97c \uc548\uc804\ud558\uac8c \uc5c5\uadf8\ub808\uc774\ub4dc \ud558\ub294 \ubc29\ubc95\uc744 \uc54c\uc544\ubd05\ub2c8\ub2e4.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\ubaa8\ub4e0 \uc791\uc5c5\uc774 \uc720\uc0ac\ud558\uc9c0\ub9cc \ud56d\uc0c1 \uc791\uc5c5\uc744 \ud558\uae30 \uc804\uc5d0\ub294 \ud574\ub2f9 \uc791\uc5c5\uc758 \ubcc0\uacbd \uc0ac\ud56d\uc744 \uc815\ud655\ud558\uac8c \ud30c\uc545\ud558\ub294 \uac83\uc774 \ud544\uc694\ud55c\ub370, Helm Diff\uac00 \ub9ce\uc740 \ub3c4\uc6c0\uc774 \ub429\ub2c8\ub2e4. \uc720\uc0ac\ud558\uac8c argocd diff, terraform plan \ub4f1\ub3c4 \uaf2d \ud544\uc694\ud569\ub2c8\ub2e4. CI Process\uc5d0 \ubcc0\uacbd \uc0ac\ud56d\uc744 \uccb4\ud06c\ud558\ub294 \ubd80\ubd84\uc744 \uc790\ub3d9\ud654\ud558\uc5ec \uc0ac\ub78c\uc758 \uc2e4\uc218\ub97c \ubc29\uc9c0\ud558\ub294 \uac83\ub3c4 \uc544\uc8fc \uc88b\uc740 \ubc29\ubc95\uc785\ub2c8\ub2e4.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\ud544\uc790\ub3c4 Helm Diff\ub97c \uc0ac\uc6a9\ud55c \uc774 \ud6c4\ub85c \uc7a5\uc560\ub97c \ub9ce\uc774 \uc904\uc77c \uc218 \uc788\uc5c8\uc2b5\ub2c8\ub2e4.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Helm Diff \ud50c\ub7ec\uadf8\uc778\uc740 \ud604\uc7ac \ubc30\ud3ec\ub41c \ub9b4\ub9ac\uc2a4\uc640 \ubcc0\uacbd\ud558\ub824\ub294 \ucc28\ud2b8 \ubc84\uc804 \uac04\uc758 \ucc28\uc774\uc810\uc744 \uc2dc\uac01\uc801\uc73c\ub85c \ube44\uad50\ud560 \uc218 \uc788\uac8c \ud574\uc8fc\ub294 \ub3c4\uad6c\uc785\ub2c8\ub2e4. \uc774\ub97c \uc0ac\uc6a9\ud558\ub294 \uc774\uc720\ub294 \ub2e4\uc74c\uacfc \uac19\uc2b5\ub2c8\ub2e4:<br><\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>\ubcc0\uacbd \uc0ac\ud56d \ud30c\uc545: \uc5c5\uadf8\ub808\uc774\ub4dc \uc804\uc5d0 \ubcc0\uacbd\ub420 \ub9ac\uc18c\uc2a4\uc758 \uc815\ud655\ud55c \ub0b4\uc6a9\uc744 \ud655\uc778\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/li><li>\ubb38\uc81c \uc608\ubc29: \uc2e4\uc218\ub85c \ubc1c\uc0dd\ud560 \uc218 \uc788\ub294 \uad6c\uc131 \uc624\ub958\ub97c \ubbf8\ub9ac \uac10\uc9c0\ud558\uace0 \uc218\uc815\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/li><li>\uac80\ud1a0 \ubc0f \uc2b9\uc778 \ud504\ub85c\uc138\uc2a4: \ubcc0\uacbd \uc0ac\ud56d\uc5d0 \ub300\ud55c \ub3d9\ub8cc\uc758 \uac80\ud1a0\ub97c \ubc1b\uac70\ub098 \uc2b9\uc778 \ud504\ub85c\uc138\uc2a4\ub97c \uac70\uce60 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Helm Diff\ub294 \ud5ec\ub984\uc5d0 \ubd80\uac00\uc801\uc73c\ub85c \uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 \ud50c\ub7ec\uadf8\uc778\uc73c\ub85c \uc544\ub798\uc640 \uac19\uc774 \uc124\uce58\ud569\ub2c8\ub2e4.<br><\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">helm plugin install https:\/\/github.com\/databus23\/helm-diff<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uadf8\ub7fc \uc2e4\uc2b5\uc744 \uc9c4\ud589\ud569\ub2c8\ub2e4. \uc2e4\ubb34\uc5d0\uc11c Resource Request, Limit\uc744 \ubcc0\uacbd\ud558\ub294 \uc791\uc5c5\uc740 \uc790\uc8fc \ubc1c\uc0dd\ud558\ub294\ub370 \ud574\ub2f9 \ucf00\uc774\uc2a4 \uae30\uc900\uc73c\ub85c \uc124\uba85\ub4dc\ub9bd\ub2c8\ub2e4.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\uc55e\uc11c \uc124\uc815\ud55c foo \ud5ec\ub984 \ucc28\ud2b8\uc758 Memory Limit\ub97c Request\uc640 \ub3d9\uc77c\ud558\uac8c 128Mi\ub85c \uc124\uc815\ud558\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Before<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\"># Container resources\nresources:\n  limits:\n  # memory: 128Mi\n  requests:\n    cpu: 10m\n    memory: 128Mi<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">After<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\"># Container resources\nresources:\n  limits:\n    memory: 128Mi\n  requests:\n    cpu: 10m\n    memory: 128Mi<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uc6b4\uc601 \ud658\uacbd\uc5d0\uc11c\ub294 \uba54\ubaa8\ub9ac Request, Limit\ub97c \ub3d9\uc77c\ud558\uac8c \uc124\uc815\ud558\ub294 \uac83\uc744 \uad8c\uace0\ud569\ub2c8\ub2e4. Limit\uc744 \uc124\uc815\ud558\uc9c0 \uc54a\uac70\ub098 Request \ubcf4\ub2e4 \ub192\uac8c \uc124\uc815\ud55c \uacbd\uc6b0 \ud574\ub2f9 \ud30c\ub4dc\uc758 \uc0ac\uc6a9\ub7c9\uc774 \uc99d\uac00\ud558\uba74 \uac19\uc740 \ub178\ub4dc\uc5d0 \uc788\ub294 \ub2e4\ub978 \ud30c\ub4dc\uc5d0 \uc601\ud5a5\uc744 \ub07c\uce60 \uc218 \uc788\uc5b4 OOM(Out Of Memory) \uc7a5\uc560\uac00 \ubc1c\uc0dd\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\uadf8\ub7fc \u2018helm diff\u2019 \uba85\ub839\uc5b4\ub85c \ubcc0\uacbd \uc0ac\ud56d\uc744 \ud655\uc778\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">(jerry-test:default)foo$ helm diff upgrade foo -f ci\/values.yaml .\ndefault, foo, Deployment (apps) has changed:\n  # Source: foo\/templates\/deployment.yaml\n(...)\n-             limits: null\n+             limits:\n+               memory: 128Mi<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uc758\ub3c4\ud55c\ub300\ub85c limits \uc124\uc815\ub9cc \ubcc0\uacbd\ub418\uc5c8\uc2b5\ub2c8\ub2e4. limits: null \uc124\uc815\uc774 \uc81c\uc678\ub418\uace0 limits: memory: 128Mi \uc124\uc815\uc774 \ucd94\uac00\ub429\ub2c8\ub2e4. \ub9cc\uc57d limits \uc124\uc815 \ubcc0\uacbd \uc774 \uc678 \ub2e4\ub978 \ubcc0\uacbd \uc0ac\ud56d\uc774 \uc788\uc73c\uba74 \ud604\uc7ac \ucf54\ub4dc\uc640 \uc2e4\uc81c \ucfe0\ubc84\ub124\ud2f0\uc2a4 \uc2e4\ud589\ub418\ub294 \uc0c1\ud0dc\uac00 \uc11c\ub85c \ub2e4\ub984\uc744 \uc54c \uc218 \uc788\uc2b5\ub2c8\ub2e4. \u2018k edit\u2019 \ub4f1\uc73c\ub85c \uc784\uc758\ub85c \ubcc0\uacbd\ud558\uace0 \uc18c\uc2a4\ub97c \uc218\uc815\ud558\uc9c0 \uc54a\ub294 \uacbd\uc6b0\uac00 \ub300\ud45c\uc801\uc785\ub2c8\ub2e4.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\uc2e4\ubb34\uc5d0\uc11c\ub294 \ub2e4\ub978 \uc0ac\uc6a9\uc790\uac00 \uae43\ud5c8\ube0c \uc18c\uc2a4 \ucf54\ub4dc\uc758 Commit \uc5c6\uc774 \uc784\uc758\ub85c \ubcc0\uacbd\ud55c \uacbd\uc6b0 \u2018helm diff\u2019\ub85c \ud655\uc778\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. helm diff \uba85\ub839\uc5b4\ub85c \ud655\uc778\ud558\uc9c0 \uc54a\uace0 \ubc14\ub85c \uc5c5\uadf8\ub808\uc774\ub4dc \uc791\uc5c5\uc744 \uc9c4\ud589\ud558\uba74 \ubcc0\uacbd\ub41c \uc0ac\ud56d\uc774 \ub2e4\uc2dc \uc774\uc804 \uc124\uc815\uc73c\ub85c \uc6d0\ubcf5\ub418\uc5b4 \uc7a5\uc560\ub85c \uc774\uc5b4\uc9c0\ub294 \uc0ac\ud0dc\ub97c \ubbf8\ub9ac \ub9c9\uc744 \uc218 \uc788\uc5b4 \ub9e4\uc6b0 \uc720\uc6a9\ud569\ub2c8\ub2e4.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\ubcc0\uacbd \uc0ac\ud56d\uc744 \ud655\uc778\ud558\uace0 \uc5c5\uadf8\ub808\uc774\ub4dc \uc791\uc5c5\uc744 \uc9c4\ud589\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">(jerry-test:default)foo$ helm upgrade foo -f ci\/values.yaml .\nRelease \"foo\" has been upgraded. Happy Helming!\nNAME: foo\nLAST DEPLOYED: Thu Nov  9 09:14:49 2023\nNAMESPACE: default\nSTATUS: deployed\nREVISION: 2\nNOTES:\n1. Get the application URL by running these commands:\n  export POD_NAME=$(kubectl get pods --namespace default -l \"app.kubernetes.io\/name=foo,app.kubernetes.io\/instance=foo\" -o jsonpath=\"{.items[0].metadata.name}\")\n  export CONTAINER_PORT=$(kubectl get pod --namespace default $POD_NAME -o jsonpath=\"{.spec.containers[0].ports[0].containerPort}\")\n  echo \"Visit http:\/\/127.0.0.1:8080 to use your application\"\n  kubectl --namespace default port-forward $POD_NAME 8080:$CONTAINER_PORT<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uc0c8\ub86d\uac8c \uc0dd\uc131\ud55c \ud30c\ub4dc\uc758 \uc124\uc815\uc744 grep -A(after) 5 \uba85\ub839\uc5b4\ub85c \ud655\uc778\ud558\uba74 \uc6d0\ud558\ub294 \uc124\uc815\uc774 \uc815\uc0c1\uc73c\ub85c \ubc18\uc601\ub418\uc5c8\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">(jerry-test:default)foo$ k get pod foo-7d46f9cb5b-t67kd -oyaml |grep -i -A 5 resources\n    resources:\n      limits:\n        memory: 128Mi\n      requests:\n        cpu: 10m\n        memory: 128Mi<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uc704\uc640 \uac19\uc774 \ud5ec\ub984 upgrade \uc791\uc5c5 \uc2dc \uaf2d diff \uba85\ub839\uc5b4\ub85c \uba3c\uc800 \ud655\uc778\ud558\ub294 \uc2b5\uad00\uc744 \ub4e4\uc774\uba74 \uc0ac\uc804\uc5d0 \uc7a5\uc560\ub97c \ub9ce\uc774 \uc608\ubc29\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc774\ubc88 \uc7a5\uc758 \uc2e4\uc2b5\uc744 \uc644\ub8cc\ud558\uc600\uc2b5\ub2c8\ub2e4. \uad00\ub828 \uc790\uc6d0\uc744 \uc0ad\uc81c\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">(jerry-test:default)foo$ helm ls\nhelmNAME        NAMESPACE       REVISION        UPDATED                                 STATUS          CHART           APP VERSION\nfoo     default         2               2023-11-09 09:14:49.182849 +0900 KST    deployed        foo-0.1.0       0.1.0      \n\n(jerry-test:default)foo$ helm delete foo\nrelease \"foo\" uninstalled<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\ud5ec\ub984 \ub9ac\uc2a4\ud2b8\ub97c \uba3c\uc800 \ud655\uc778\ud558\uace0(ls) \ub9ac\uc18c\uc2a4\ub97c \uc0ad\uc81c\ud569\ub2c8\ub2e4.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774\ubc88 \uc7a5\uc5d0\uc11c \ud5ec\ub984 Starter Packs\uc640 \ud5ec\ub984 Diff\uc5d0 \uad00\ud558\uc5ec \uc54c\uc544\ubcf4\uc558\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>\ud574\ub2f9 \uae30\uc220 \ube14\ub85c\uadf8\uc5d0 \uc9c8\ubb38\uc774 \uc788\uc73c\uc2dc\uba74 \uc5b8\uc81c\ub4e0\uc9c0 \ubb38\uc758\ud574 \uc8fc\uc138\uc694. \uc9c1\uc811 \ub2f5\ubcc0\ud574 \ub4dc\ub9bd\ub2c8\ub2e4.<br>k8sqna@jennifersoft.com<\/p><\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\" style=\"font-size:11px\">1.\ud5ec\ub984 Starter Packs \uacf5\uc2dd \ud648\ud398\uc774\uc9c0 : <a href=\"https:\/\/helm.sh\/docs\/topics\/charts\/#chart-starter-packs\">https:\/\/helm.sh\/docs\/topics\/charts\/#chart-starter-packs<\/a> <br>2.&nbsp;\ud5ec\ub984 diff \uacf5\uc2dd \ud648\ud398\uc774\uc9c0 : <a href=\"https:\/\/github.com\/databus23\/helm-diff\">https:\/\/github.com\/databus23\/helm-diff<\/a> <br><br><\/p>\n","protected":false},"excerpt":{"rendered":"\uc774\ubc88 \uc7a5\uc740 \uc0ac\ub0b4\uc5d0\uc11c \uc790\uccb4 \uac1c\ubc1c\ud55c \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \ucfe0\ubc84\ub124\ud2f0\uc2a4 \ud658\uacbd\uc5d0 \uc124\uce58\ud558\uae30 \uc704\ud574\uc11c \ud5ec\ub984 \ud15c\ud50c\ub9bf\uc744 \uc774\uc6a9\ud558\ub294 \ubc29\ubc95\uc744 \uc54c\uc544\ubcf4\uaca0\uc2b5\ub2c8\ub2e4. \ud5ec\ub984 Starter Packs\ub97c \uc774\uc6a9\ud558\uba74 \ucee4\uc2a4\ud140&#8230;","protected":false},"author":34,"featured_media":12880,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[386],"tags":[296,238,299,144,294,55,256,237,257,320],"class_list":["post-12875","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-kubernetes","tag-aws-eks","tag-k8s","tag-k8sedu","tag-kubernetes","tag-msa","tag-55","tag-256","tag-237","tag-257","tag-320"],"acf":[],"_links":{"self":[{"href":"https:\/\/jennifersoft.com\/ko\/wp-json\/wp\/v2\/posts\/12875","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jennifersoft.com\/ko\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jennifersoft.com\/ko\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jennifersoft.com\/ko\/wp-json\/wp\/v2\/users\/34"}],"replies":[{"embeddable":true,"href":"https:\/\/jennifersoft.com\/ko\/wp-json\/wp\/v2\/comments?post=12875"}],"version-history":[{"count":3,"href":"https:\/\/jennifersoft.com\/ko\/wp-json\/wp\/v2\/posts\/12875\/revisions"}],"predecessor-version":[{"id":12878,"href":"https:\/\/jennifersoft.com\/ko\/wp-json\/wp\/v2\/posts\/12875\/revisions\/12878"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/jennifersoft.com\/ko\/wp-json\/wp\/v2\/media\/12880"}],"wp:attachment":[{"href":"https:\/\/jennifersoft.com\/ko\/wp-json\/wp\/v2\/media?parent=12875"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jennifersoft.com\/ko\/wp-json\/wp\/v2\/categories?post=12875"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jennifersoft.com\/ko\/wp-json\/wp\/v2\/tags?post=12875"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}