ãå³è§£ã§æ¯èŒãKubernetes vs Docker Compose â ã³ã³ãã管çããŒã«ã®éãã培åºè§£èª¬
DockerãšKubernetesã£ãŠããäžç·ã«èããã©ãäœãéãã®ïŒ
ãã質åã ãããŸãDockerã¯ãã³ã³ãããäœã£ãŠåãããããŒã«ã§ãDocker Composeã¯ãè€æ°ã®ã³ã³ããããŸãšããŠç®¡çãããããŒã«ãªãã ãäžæ¹ã®Kubernetesã¯ã倧éã®ã³ã³ãããè€æ°ã®ãµãŒããŒã«ãŸããã£ãŠéçšãããããã®ãªãŒã±ã¹ãã¬ãŒã·ã§ã³ããŒã«ã ãã
Docker Composeã ããããã¡ãªã®ïŒããããKubernetesã䜿ãçç±ãããããªããªâŠã
Docker Composeã¯1å°ã®ãµãŒããŒã§åããã®ãåºæ¬ãªãã ãdocker-compose.ymlãšãããã¡ã€ã«ã«ãWebãµãŒããŒããããŒã¿ããŒã¹ãããã£ãã·ã¥ãã¿ããã«ãµãŒãã¹ãæžããŠã`docker compose up` ã§äžçºèµ·åã§ãããã·ã³ãã«ã§åŠç¿ã³ã¹ããäœãã®ãé åã ãã
ããã§ååãªæ°ããããã©ãKubernetesã¯ã©ããããšãã«å¿ èŠã«ãªãã®ïŒ
ããšãã°ã¢ã¯ã»ã¹ãæ¥å¢ãããšãã«èªåã§ã³ã³ãããå¢ããããïŒãªãŒãã¹ã±ãŒãªã³ã°ïŒãã³ã³ãããèœã¡ããèªåã§åèµ·åãããïŒã»ã«ãããŒãªã³ã°ïŒãè€æ°ãµãŒããŒã«è² è·ã忣ãããããããã£ãæ¬çªéçšã«å¿ èŠãªæ©èœãKubernetesã«ã¯æšæºã§åãã£ãŠãããã ãDocker Composeã ãšããããèªåã§å®çŸããã®ã¯ããªãé£ãããã
ãªãã»ã©âŠããããKubernetesã®ã»ãã髿©èœãªãã ããã§ãèŠããããšãå€ããâŠã
ãã®ãšãããKubernetesã¯ãPodããServiceããDeploymentããIngressããConfigMapããªã©ç¬èªã®æŠå¿µããããããã£ãŠãåŠç¿ã³ã¹ãã¯ããªãé«ããã ãDocker Composeãªã1ã€ã®YAMLãã¡ã€ã«ã§å®çµãããã©ãKubernetesã¯è€æ°ã®ãããã§ã¹ããã¡ã€ã«ãæžãå¿ èŠããããã
ããããã©ã䜿ãåããã®ãããã®ïŒ
ãã£ããèšããšãéçºç°å¢ãå人ãããžã§ã¯ããå°èŠæš¡ãµãŒãã¹ãªãDocker Composeã§ååãæ¬çªç°å¢ã§é«å¯çšæ§ãå¿ èŠã ã£ããããã€ã¯ããµãŒãã¹ãå€§èŠæš¡ã«éçšãããªãKubernetesãšããæ£²ã¿åãã ããå®éãéçºã¯Docker Composeãæ¬çªã¯Kubernetesãšããçµã¿åããã®ããŒã ãå€ããã
Kubernetesãèªåã§ãµãŒããŒã«å ¥ããã®ã¯å€§å€ãªã®ïŒ
èªåã§æ§ç¯ïŒã»ã«ããã¹ãïŒããã®ã¯ããªã倧å€ã ããã ããå€ãã®äŒæ¥ã¯ã¯ã©ãŠãã®ãããŒãžãKubernetesã䜿ã£ãŠãããã ãAWSãªãEKSãGoogle CloudãªãGKEãAzureãªãAKSãã³ã³ãããŒã«ãã¬ãŒã³ïŒãã¹ã¿ãŒããŒãïŒã®ç®¡çãã¯ã©ãŠãã«ä»»ãããããããéçšè² è·ããã£ãšäžãããã
Kubernetesã®YAMLããããããã£ãŠå€§å€ã£ãŠèãããã©ã楜ã«ããæ¹æ³ã¯ããã®ïŒ
Helmãã£ãŒããšããããã±ãŒãžãããŒãžã£ãŒãããããããããæ§æããã³ãã¬ãŒãåããŠãå€ãå€ããã ãã§ãããã€ã§ããä»çµã¿ãªãã ãããšãã°ãPostgreSQLãKubernetesã«ãããã€ãããããªããå ¬åŒã®Helmãã£ãŒãã䜿ãã°æ°ã³ãã³ãã§æ§ç¯ã§ãããã
Docker Swarmã£ãŠããã®ãæãã£ãããïŒããã¯ã©ããªã£ãã®ïŒ
ããççŒç¹ã ããDocker Swarmã¯Docker瀟ãäœã£ããªãŒã±ã¹ãã¬ãŒã·ã§ã³ããŒã«ã§ãDocker Composeãšã®äºææ§ãé«ããŠåŠç¿ã³ã¹ããäœãã£ããã ãã§ãKubernetesãããã¡ã¯ãã¹ã¿ã³ããŒãã«ãªã£ãŠãDocker瀟èªèº«ãKubernetesããµããŒãããæ¹åã«èµãåã£ããä»ã§ã¯æ°èŠã§Swarmãéžã¶ã±ãŒã¹ã¯ã»ãŒãªããã
Kubernetesã¯ããããã©ããã£ãšè»œã代æ¿ããŒã«ã£ãŠãªãã®ïŒ
ããããk3sã¯Kubernetesã®è»œéçã§ããšããžããã€ã¹ãIoTã§ãåãã»ã©ã³ã³ãã¯ããªãã ãããšHashiCorpã®Nomadã¯Kubernetesããèšå®ãã·ã³ãã«ã§ãã³ã³ãã以å€ã®ã¯ãŒã¯ããŒãã管çã§ãããããã«Kubernetesã®äžçã«ã¯ãOperator ãã¿ãŒã³ããšããä»çµã¿ããã£ãŠãããŒã¿ããŒã¹ãããã«ãŠã§ã¢ã®éçšãKubernetesãèªååããŠãããã«ã¹ã¿ã ã³ã³ãããŒã©ãŒãäœãããã ãMySQLãPostgreSQLã®ãã§ã€ã«ãªãŒããŒããèªååã§ããã®ã¯ããªããªãå¥¥ãæ·±ãäžçã ãã
çšéã«åãããŠéžã¶ã®ã倧äºãªãã ãïŒ
ããããããšãããšããããKubernetesãã¯éçšã³ã¹ããé«ãããããããã£ãšDocker Composeãã ãšã¹ã±ãŒã«ã®å£ã«ã¶ã€ãããèªåã®ãããžã§ã¯ãã®èŠæš¡ãšæé·ãèŠæ®ããŠéžã¶ã®ãæ£è§£ã ãã