Platformãã¼ã ã§ã¨ã³ã¸ãã¢ããã¦ããsanposhihoã§ããã¡ã«ã«ãªã®Platformãã¼ã ã§ãªã¼ãã¹ã±ã¼ãªã³ã°å¨ãã®èª²é¡ã®è§£æ±ºãæ å½ãã¦ãããKubernetes Upstreamã§ãSchedulingãAutoscalingå¨ãã®éçºã«åå ãã¦ãã¾ãã
ã¡ã«ã«ãªã§ã¯å
¨ç¤¾çã«FinOpsã«åãçµãã§ãããKubernetesãªã½ã¼ã¹ã¯æé©åã®ä½å°ãããã¨ãªã¢ã§ãã
ã¡ã«ã«ãªã§ã¯Platformãã¼ã ã¨ãµã¼ãã¹ã®éçºãã¼ã ã§æ確ã«è²¬åãåããã¦ãã¾ããPlatformã§ã¯ãµã¼ãã¹æ§ç¯ã«å¿
è¦ãªåºç¤çãªã¤ã³ãã©ã¹ãã©ã¯ãã£ã管çããããããç°¡åã«æ±ãããã®æ½è±¡åãããè¨å®ããã¼ã«ãªã©ã®æä¾ãè¡ã£ã¦ãã¾ãããµã¼ãã¹ã®éçºãã¼ã ã¯ãããããéãã¦ãµã¼ãã¹ãã¨ã®è¦ä»¶ã«å¿ããã¤ã³ãã©ã¹ãã©ã¯ãã£ã®æ§ç¯ãè¡ãã¾ãã
ãµã¼ãã¹ããã¼ã ã®æ°ãå¤ãããã®ãããªç¶æ³ã§ã®å
¨ç¤¾çãªKubernetesãªã½ã¼ã¹ã®æé©åã«ã¯å¤ãã®èª²é¡ãããã¾ããã
ãã®è¨äºã§ã¯ã¡ã«ã«ãªã«ããã¦ãããã¾ã§Platformãè¡ã£ã¦ããKubernetesãªã½ã¼ã¹ã®æé©åã®åãçµã¿ã¨ããã®åãçµã¿ã®èª²é¡ããçã¾ããTortoiseã¨å¼ã°ãããªã¼ãã³ã½ã¼ã¹ã®ãã¼ã«ã®ç´¹ä»ããã¾ãã
ããã¾ã§ã® Kubernetes ãªã½ã¼ã¹ã®æé©åã®åãçµã¿
Kubernetesãªã½ã¼ã¹ã®æé©åã¯ä»¥ä¸ã®2ã¤ã«å解ãããã¨ãã§ãã¾ãã
- Podã¬ãã«ã®æé©å: ãµã¼ãã¹ã®ä¿¡é ¼æ§ãæãªããªãç¯å²ã§ã1Podãããã®ãªã½ã¼ã¹å²ãå½ã¦éãPodæ°ã調ç¯ãããµã¼ãã¹å ¨ä½ã§è¦ãæã®å²ãå½ã¦ããããªã½ã¼ã¹ã®éãæ¸ããã
- Nodeã¬ãã«ã®æé©å: åPodããå²ãå½ã¦è¦æ±ããããªã½ã¼ã¹ãã§ããã ãå®ãã³ã¹ãã§åä½ãããã
å¾è
ã«é¢ãã¦ã¯ãPlatformãKubernetesã¯ã©ã¹ã¿ã¼ã¬ãã«ã®è¨å®ãå¤æ´ãããã¨ã§æé©åãã§ããé¨åã大ãããã¯ã©ã¹ã¿ã¼å
¨ä½ã®ã¹ã±ã¸ã¥ã¼ãªã³ã°ã®èª¿ç¯(bin packing)ãä¾¡æ ¼ã®å®ãã¤ã³ã¹ã¿ã³ã¹(spot instance)ã¸ã®ç§»è¡ãªã©ãææ³ã¨ãã¦åå¨ãã¾ããç´è¿ã®ã¡ã«ã«ãªã«ãããæ½çã ã¨ãInstance Typeã®T2Dã¸ã®å¤æ´ãããã¾ããã
対ãã¦åè
ã®Podã¬ãã«ã®æé©åã§ã¯ããµã¼ãã¹ãã¨ã®ãªã½ã¼ã¹ã®ä½¿ç¨ã®ä»æ¹ã®ç¹æ§ã«å¿ãã¦ãResource Request/Limitãå¤æ´ãããããªã¼ãã¹ã±ã¼ã©ã¼ã®è¨å®ã調æ´ããå¿
è¦ãããã¾ãã
ãªã½ã¼ã¹æé©åã«ã¯ããµã¼ãã¹ã®ä¿¡é ¼æ§ãæãªããã¨ãªãããªã½ã¼ã¹ã®ä½¿ç¨ãå¹çåãããã¨ãæ±ãããããã®ããã«å®å ¨ãªæé©åãè¡ãããã«ã¯ãã°ãã°Kubernetesã«é¢ããæ·±ãç¥èãå¿ è¦ã§ãã
ä»æ¹ãã¡ã«ã«ãªã§ã¯ãã¤ã¯ããµã¼ãã¹ã®ã¢ã¼ããã¯ãã£ã¼ãæ¡ç¨ãã¦ãããã¨ãããã1000以ä¸ã®Deploymentãåå¨ãããã¤ã¯ããµã¼ãã¹ãã¨ã«éçºãã¼ã ãç¬ç«ãã¦åå¨ãã¦ãã¾ãã
ãã®ãããªç¶æ³ã§åã ã®ãµã¼ãã¹ã®éçºè ã«Kubernetesã®æ·±ãç¥èãè¦æ±ããã®ã¯é£ããããã®ä¸æ¹ã§Platformãåãµã¼ãã¹ãã¨ã«æé©åãã¦åãã«ã¯éçãããã¾ãã
ãã®ãããPlatformãã¼ã ããã¼ã«ã®æä¾ãã¬ã¤ãã©ã¤ã³ã®çå®ãè¡ãæé©åãã§ããã ãç°¡ç¥åããããããã®ãµã¼ãã¹ã®éçºãã¼ã ã¯ãããã«æ²¿ã£ã¦æé©åãè¡ããã¨ããå½¢ãåãå ¨ç¤¾çãªKubernetesãªã½ã¼ã¹ã®æé©åãæ¨é²ãã¦ãã¾ããã
ã¡ã«ã«ãªã«ããããªã¼ãã¹ã±ã¼ã©ã¼ã®ç¾ç¶
Kubernetesãå ¬å¼ã«æä¾ãã¦ãããªã¼ãã¹ã±ã¼ã©ã¼ã«ã¯ä»¥ä¸ã®äºã¤ãåå¨ãã¾ãã
- Horizontal Pod Autoscaler(HPA): Podã®ãªã½ã¼ã¹ä½¿ç¨éã«å¿ãã¦ãPodã®æ°ãå¢æ¸ããã
- Vertical Pod Autoscaler(VPA): Podã®ãªã½ã¼ã¹ä½¿ç¨éã«å¿ãã¦ãPodã使ç¨ã§ãããªã½ã¼ã¹éãå¢æ¸ããã
ã¡ã«ã«ãªã§ã¯HPAãããªãæ®åãã¦ãããããç¨åº¦ã®è¦æ¨¡ãæã£ãDeploymentã¯ã»ã¼å ¨ã¦HPAã§ç®¡çããã¦ãã¾ãã対ãã¦ãVPAã«é¢ãã¦ã¯ã»ã¨ãã©ä½¿ç¨ããã¦ãã¾ãããHPAã¯CPUã«å¯¾ãã¦ã®ã¿è¨å®ããã¦ãããã¨ãå¤ããMemoryã¯æåã§ç®¡çããã¦ããã±ã¼ã¹ãã»ã¨ãã©ã§ãã
è¨äºã®ç解ãé²ã¿ãããããã«ãHPAã®è¨å®ã«ã¤ãã¦ã®ã¿è»½ãç´¹ä»ãã¾ãã
HPAã§ã¯ããããã®ã³ã³ããã®ããããã®ãªã½ã¼ã¹ã«å¯¾ãã¦ãçæ³ã®ãªã½ã¼ã¹ä½¿ç¨ç(é¾å¤)ãè¨å®ãããã¨ãã§ãã¾ãã以ä¸ã®ä¾ã§ã¯ãapplication
ã¨ããååã®ã³ã³ããã®CPUã«å¯¾ãã¦ãçæ³ã®ä½¿ç¨çã60%ã¨å®ç¾©ãã¦ãããHPAã¯Podã®æ°ããªã½ã¼ã¹ä½¿ç¨çã60%ã«è¿ããªãããã«èª¿æ´ãã¾ãã
apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
name: <HPA_NAME>
namespace: <NAMESPACE_NAME>
//â¦
metrics:
type: ContainerResource
containerResource:
name: cpu
container: application
target:
type: Utilization
averageUtilization: 60
ãã®ä»ãminReplicas
ã¨å¼ã°ãããPodã®æä½æ°ã決ãããã©ã¡ã¼ã¿ãªã©ãå¤ãã®è£å©çãªãã©ã¡ã¼ã¿ãåå¨ãã¾ãããã詳細ãªå
容ã¯å
¬å¼ã®ããã¥ã¡ã³ããåç
§ãã¦ãã ããã
Resource Recommender Slack Bot
ãªã½ã¼ã¹ã®æé©åã«å¯¾ãã¦ãã¡ã«ã«ãªã®Platformãå é¨ã§ç¬èªã«æä¾ãã¦ãã代表çãªãã¼ã«ãResource Recommenderã¨å¼ã°ãããã®ã§ããããã¯Slack Botã§æã«ä¸åº¦æé©ãªãªã½ã¼ã¹ã®ãµã¤ãº (Resource Request) ãè¨ç®ãããµã¼ãã¹éçºãã¼ã ã«ãç¥ãããã¾ããããã«ãããªã½ã¼ã¹ã®æé©åãç°¡ç¥åãããã¨ãç®çã«ãã¦ãã¾ãã
å é¨çã«ã¯åè¿°ã®VPAã使ç¨ãã¦ãããéå»æ°ã¶æã®VPAã®æ¨å¥¨å¤ããæé©ã§å®å ¨ãªå¤ãç®åºãã¦ãã¾ãã
ãã ããã®Resource Recommenderã«ã¯ããã¤ãã®èª²é¡ç¹ãããã¾ããã
ã¾ãã¯ãæ¨å¥¨å¤ã®å®å ¨æ§ã§ããæ¨å¥¨å¤ã¯æ¬æ¥éãããç¬éãè³å³æéã§ãæéãçµã¤ã»ã©æ¨å¥¨å¤ã®æ£ç¢ºæ§ã¯èãã¦ããã¾ããã¢ããªã±ã¼ã·ã§ã³ã®å®è£ ã®å¤æ´ããã©ãã£ãã¯ã®ãã¿ã¼ã³ã®å¤åã«ãã£ã¦ãæ¨å¥¨å¤ã大ããå¤ããå¯è½æ§ããããOOMKilledãªã©ã®å±éºãªç¶æ³ã«ã¤ãªããå±éºæ§ãããã¾ããã
ããã¦ããµã¼ãã¹éçºè ããããã®æ¨å¥¨å¤ãé©å¿ãã¦ãããã¨ã¯éããªãç¹ã§ããåè¿°ã®å±éºæ§ã®è¦³ç¹ãããéçºè ã¯æ¨å¥¨å¤ãé©å¿ããåã«ãã®æ¨å¥¨å¤ãå®å ¨ããé©å¿å¾ã«ä½ãåé¡ãèµ·ãã£ã¦ããªããã注ææ·±ã確èªããå¿ è¦ããããã¨ã³ã¸ãã¢ã®æéãå°ãªãããåã£ã¦ãã¾ããã¨ã«ãªãã¾ããã¾ããä¾ãã°ã¡ã¢ãªã3 GBãã1 GBã«æ¸ããããã«æ¨å¥¨å¤ãéããã¦ããå ´åã段éçã«2GBãé©å¿ãããã¨ãã£ãã±ã¼ã¹ããããåç´ã«æ¨å¥¨å¤ãã©ãã»ã©å½¹ã«ç«ã£ã¦ããã®ãã®è¨æ¸¬ãé£ããã¨ãã観ç¹ãããã¾ããã
æå¾ã«ãæé©åã¯ãµã¼ãã¹ãåãç¶ããéãçµãããªãç¹ã§ããåè¿°ã®ããã«æ§ã ãªç¶æ³ã®å¤åã«ãããæ¨å¥¨ãããå¤ã¨ããã®ã¯å¤åãç¶ãã¾ããéçºè ã¯ä¸åº¦Resource Recommenderã«å³ãã¦Resource Requestã調æ´ãããæé©åãçµäºããã®ã§ã¯ãªããå®æçã«èª¿æ´ãç¶ããå¿ è¦ãããã¾ãã
HPA ã®æé©å
ä¸è¨ã®Resource Recommenderã®èª²é¡ã¨ã¯å¥ã«ã大ããªåé¡ç¹ã¨ãªã£ã¦ããã®ãHPAã®æé©åã§ãã
HPAã«ç®¡çããã¦ãããªã½ã¼ã¹ã«é¢ãã¦ã¯ãåºæ¬çã«ãªã½ã¼ã¹ã®ãµã¤ãºã§ã¯ãªããHPAã®è¨å®ãæé©åããå¿
è¦ãããã¾ããããããResource Recommenderã¯HPAã®è¨å®ã®æ¨å¥¨å¤ã®ç®åºã«å¯¾å¿ãã¦ãã¾ããã
åè¿°ã®ããã«ãã¡ã«ã«ãªã§ã¯è¦æ¨¡ã®å¤§ããªãµã¼ãã¹ã¯ã»ã¼HPAãæã£ã¦ãããCPUãã¿ã¼ã²ããã«ãã¦ãããã¨ãããã¯ã©ã¹ã¿ã¼ã§ä½¿ç¨ããã¦ããCPUã®ã»ã¨ãã©ã¯Resource Recommenderã«ãã£ã¦æé©åã§ããªããã¨ãæå³ãã¦ãã¾ãã
ã¾ããæé©åã®ããã«ã¯HPAã«è¨å®ãã¦ããçæ³ã®ãªã½ã¼ã¹ä½¿ç¨ç(é¾å¤)ããµã¼ãã¹ã®ä¿¡é ¼æ§ãæãªããªãç¯å²ã§ä¸ããå¿
è¦ãããã¾ãã
ã¾ããè¨å®ãããé¾å¤ãååã«é«ãã¨ãã¦ããå®éã®ãªã½ã¼ã¹ä½¿ç¨çãé¾å¤ã«éãã¦ããªãã¨ããã·ããªãªã¯å¤ãåå¨ãããã®å ´åé¾å¤ä»¥å¤ã®ãã©ã¡ã¼ã¿ãResource Requestãªã©ã調ç¯ããå¿
è¦ãåºã¦ãã¾ãã
HPAã®æé©åã¯ããªã奥ãæ·±ããå¥ã§ããä¸æ¬è¨äºãããããããã«ã¯ããªãã®ç¥èãè¦ãã¾ããï¼ãã®ã¹ã©ã¤ãã§ã¯HPAã®æé©åã«ã¤ãã¦é£ããã¨èæ
®ãã¹ãã·ããªãªã軽ã説æããã¦ãã¾ããèå³ã®ããæ¹ã¯ç¢ºèªãã¦ã¿ã¦ãã ãããï¼
ãã®è¤éæ§ããResource Recommenderã«åç´ã«çµã¿è¾¼ããã¨ã¯é£ãããã¨ã¯ããè¨å¤§ãªæ°ã®HPAã«å¯¾ãã¦å¤ãã®ãã¼ã ã«å®æçã«æåã®æé©åãè¡ãç¶ãã¦ããããã¨ããã®ã¯ç¾å®çã§ã¯ããã¾ããã
â¦ããã¾ã§è¾¿ãçãã¦ç§ãã¡ã¯æ°ãã¤ãã¾ããããâ¦ç¡çãããï¼ãã¨ã
ç¾ç¶ã®HPAã¨Resource Recommenderã®æ§æã§ã¯ãã¯ã©ã¹ã¿ã¼ãæé©åãããç¶æ ã«ç¶æããã«ã¯ã©ããã¦ãæåã§è¤éãªä½æ¥ãå ¨ã¦ã®ãã¼ã ã§å®æçã«ãããã¦æ°¸é ã«å¿ è¦ã«ãªãã¾ãã
Tortoiseãç¨ãããªã½ã¼ã¹æé©å
ããã§éçºãããã®ããTortoiseã§ãã(Tortoise: æ¥æ¬èªã§ãªã¯ã¬ã¡ã®æå³ã§ã)
ãã®Tortoiseã¯å¯æãã ãã§ã¯ãªããKubernetesã®ãªã½ã¼ã¹ç®¡çã¨æé©åãå ¨ã¦èªåã§è¡ãªã£ã¦ãããããã«è¨ç·´ããã¦ãã¾ãã
Tortoiseã¯éå»ã®ãªã½ã¼ã¹ã®ä½¿ç¨éãéå»ã®ã¬ããªã«ã®æ°ãè¨é²ãã¦ããããããå ã«HPAãResource Request/Limitãæé©åãç¶ãã¾ãã詳ãããªã³ã¡ã³ãã¼ã·ã§ã³ã®ãã¸ãã¯ãç¥ãããæ¹ã¯ãå ¬éããã¦ããããã¥ã¡ã³ããåç §ãã¦ã¿ã¦ãã ãããTortoiseãåãªãHPAãVPAã®ã©ããã¼ã§ã¯ãªããã¨ãç解ã§ããã¨æãã¾ãã
åè¿°ã®ããã«ããã¾ã§ãµã¼ãã¹ã®éçºãã¼ã ããªã½ã¼ã¹/HPAã®è¨å®ãæé©åãè¡ãªã£ã¦ãã¾ããããTortoiseã¯ãããã®è²¬åããµã¼ãã¹ã®éçºãã¼ã ããPlatformãã¼ã ã«å®å
¨ã«ç§»ããã¨ãæå³ãã¦ãã¾ãããµã¼ãã¹éçºãã¼ã ã¯Tortoiseãä¸åº¦ã»ããã¢ãããããã¨ã§ãªã½ã¼ã¹ã®ç®¡çã®ãã¨ãå®å
¨ã«å¿ãããã¨ãã§ããããTortoiseã«ãã£ã¦ååã«æé©åããã¦ããªããã¤ã¯ããµã¼ãã¹ãããã°PlatformãTortoiseã®æ¹åãè¡ãã¾ãã
Platformã§ã¯ãã¡ã«ã«ãªã®å
¨ã¦ã®PodãTortoiseã«ãã£ã¦æçµçã«ç®¡çãããã¨ãç®æ¨ã«ãã¦ãã¾ãã
ã¦ã¼ã¶ã¼ã¯ä»¥ä¸ã®ããã«CRDãéãã¦ãTortoiseãè¨å®ãã¾ãã
apiVersion: autoscaling.mercari.com/v1beta3
kind: Tortoise
metadata:
name: lovely-tortoise
namespace: zoo
spec:
updateMode: Auto
targetRefs:
scaleTargetRef:
kind: Deployment
name: sample
Tortoiseã¯é常ã«ã·ã³ãã«ãªã¦ã¼ã¶ã¼ã¤ã³ã¿ã¼ãã§ã¼ã¹ã«ãã¶ã¤ã³ããã¦ãããã»ã¨ãã©ã®ãµã¼ãã¹ã«å¯¾ããè¨å®ã¯ä¸è¨ã§å®äºãã¾ãããã®å¾ãTortoiseã¯èªåã§HPAãVPAãªã©ã®å¿ è¦ãªãã®ãä½æãããªã¼ãã¹ã±ã¼ã«ãéå§ãã¾ãã
HPAã¯è¤æ°ã®ãã©ã¡ã¼ã¿ã¼ãã¦ã¼ã¶ã¼ã«å¯¾ãã¦å
¬éããã¦ãã¾ããããã¯ã¦ã¼ã¶ã¼ã«å¯¾ãã¦æè»ãªè¨å®ãå¯è½ã«ããä¸æ¹ãç¾ç¶ã®ã¡ã«ã«ãªã®ããã«ãHPAã®è¨å®ãResource Requestãæ¹åããªãã¨HPAãæ¬æ¥ã®ãã¯ã¼ãçºæ®ã§ããªããã¨ããç¶æ³ã«ç¹ããå¾ã¾ãã
ã¡ã«ã«ãªã§ã¯éã®è¯ããã¨ã«ãã»ã¨ãã©ã®ãã¤ã¯ããµã¼ãã¹ãGoã§æ¸ããã¦ãããgRPC/HTTP ãµã¼ãã¼ã§ãããå
é¨ã§å
¬éããã¦ãããã¤ã¯ããµã¼ãã¹ã®ãã³ãã¬ã¼ãããã¼ã¹ã«ä½æããã¦ãã¾ãããã®ãããHPAã®è¨å®ãã»ã¨ãã©ã®ãµã¼ãã¹ã§é常ã«ä¼¼ã¦ããããµã¼ãã¹ã®ãªã½ã¼ã¹ä½¿ç¨éã®å¤åãã¬ããªã«æ°ã®å¤åãªã©ã®ç¹æ§ãé常ã«ä¼¼ã¦ãã¾ãã
ãã®ãããHPAã®è¤æ°ã®ãã©ã¡ã¼ã¿ã¼ãTortoiseã®èå¾ã«é ããTortoiseå´ã§å
±éã®ããã©ã«ãå¤ãä¸ããå
é¨ã®ãªã³ã¡ã³ãã¼ã·ã§ã³ã®ãã¸ãã¯ãéãã¦ããããæé©åããç¶ãããã¨ããã®ããã¾ãåãã¦ãã¾ãã
ã¾ããã·ã³ãã«ãªã¦ã¼ã¶ã¼ã¤ã³ã¿ã¼ãã§ã¼ã¹(CRD)ã¨ã¯æã£ã¦å¤ãããTortoiseã¯ã¯ã©ã¹ã¿ã¼ç®¡çè
åãã®å¤ãã®è¨å®ãåãã¦ãã¾ãã
ããã«ãã£ã¦ããã®ã¯ã©ã¹ã¿ã¼ã«ããããµã¼ãã¹ã®æ¯ãèããå
ã«ãã¯ã©ã¹ã¿ã¼ç®¡çè
ãå
¨ã¦ã®Tortoiseã®æåã管çããã¨ãããã¨ãå¯è½ã«ãªã£ã¦ãã¾ãã
Tortoiseã¸ã®å®å ¨ãªç§»è¡ã¨æ¤è¨¼
åè¿°ã®ããã«Tortoiseã¯HPAãVPAã®ä»£æ¿ã¨ãªããã¼ã«ã§ããTortoiseãä½æãããã¨ã§HPAã¯å¿
è¦ããªããªãä¸æ¹ã§ãåè¿°ã®ããã«Mercariã«ã¯é常ã«å¤ãã®æ°ã®DeploymentãHPAã¨å
±ã«ãã§ã«åä½ãã¦ãã¾ãã
ãã®ç¶æ³ã§HPAããTortoiseã«ç§»è¡ããã«ã¯ãTortoiseã®ä½æããHPAã®åé¤ãªã©ãç
©éãªãªã½ã¼ã¹æä½ãå®å
¨ã«è¡ãå¿
è¦ãããã¾ããã
ãã®ãããªç§»è¡ãã§ããã ãç°¡ç¥åãå®å ¨ãªç§»è¡ã確ä¿ããããã«ãTortoiseã«ã¯ãæ¢åã®HPAãTortoiseã«ç®¡çããããããã®æ©è½ãå®è£ ããã¦ãã¾ãã
apiVersion: autoscaling.mercari.com/v1beta3
kind: Tortoise
metadata:
name: lovely-tortoise
namespace: zoo
spec:
updateMode: Auto
targetRefs:
# æ¢åã®HPAãæå®ãããã¨ã§ãTortoiseã¯æ°ããªHPAãä½æãã代ããã«ããã®HPAãæé©åãç¶ããã
horizontalPodAutoscalerName: existing-hpa
scaleTargetRef:
kind: Deployment
name: sample
horizontalPodAutoscalerName
ã使ç¨ãããã¨ã§ãæ¢åã®HPAãTortoise-managedãªHPAã«ã·ã¼ã ã¬ã¹ã«ç§»è¡ãããã¨ãã§ãã移è¡ã®ã³ã¹ããä¸ãã¦ãã¾ãã
ç¾å¨ç§ãã¡ã¯ã¡ã«ã«ãªã®éçºç°å¢ã§è¤æ°ã®ãµã¼ãã¹ãTortoiseã«ç§»è¡ãã¦ãå®å
¨æ§ã®æ¤è¨¼ãè¡ã£ã¦ãã¾ããTortoiseã¯DryRunãè¡ãããã®updateMode: Off
ãåãã¦ãããTortoise Controllerããå
¬éããã¦ããã¡ããªã¯ã¹ãéãã¦ãæ¨å¥¨å¤ã®å¦¥å½æ§ãæ¤è¨¼ãããã¨ãã§ãã¾ãã
éçºç°å¢ã§ã¯ãããªãå¤ãã®æ°ã®ãµã¼ãã¹ã§ãã§ã«Offã¢ã¼ãã®Tortoiseã«ããæ¤è¨¼ãå§ã¾ã£ã¦ããã50ã»ã©ã®ãµã¼ãã¹ã§ã¯ãã§ã«Tortoiseãç¨ãããªã¼ãã¹ã±ã¼ãªã³ã°ã使ç¨ããå§ãã¦ãã¾ãã
æ¬çªç°å¢ã§ã®æ¤è¨¼ãããã¦Tortoiseã¸ã®ç§»è¡ãè¿ãå°æ¥ã«è¨ç»ããã¦ãããTortoiseã¯ããæ´ç·´ããããã¼ã«ã¨ãªã£ã¦ãããã¨ã§ãããã
ã¾ã¨ã
ãã®è¨äºã§ã¯ã¡ã«ã«ãªã®ããã¾ã§ã®Kubernetesãªã½ã¼ã¹æé©åã®åãçµã¿ã¨ãããã«è¦ãã課é¡ããçã¾ããTortoiseã¨å¼ã°ãããã¼ã«ãç´¹ä»ãã¾ããã
ã¡ã«ã«ãªã§ã¯Platformã§ä¸ç·ã«åã仲éãæ¢ãã¦ãã¾ãã
ä¸ç·ã«CI/CDãæ¹åããããæ½è±¡åãè²ã
ä½ã£ããããªã¯ã¬ã¡ã飼è²ããã(!?)ãã¾ãããï¼
èå³ã®ããæ¹ã¯ãã¡ãããã©ããï¼