以åã®è¨äºã§ãç°¡åã«ç´¹ä»ããéããä¸ä¼ã§ã¯ãã¢ããªã±ã¼ã·ã§ã³ã®AWS Elastic beanstalkããAmazon EKSã¸ã®ç§»è¡ãé²ãã¦ãã¾ãã
ãã®è¨äºã§ã¯ããã®èæ¯ããå®éã®è¨è¨ãå®éã«Amazon EKSãæ´»ç¨ãã¦ã¿ã¦æ°ä»ããç¹ãå°ã£ãç¹ãä»å¾ã®å±æãç´¹ä»ãããã¨æãã¾ãã
AWS Elastic beanstalkã®è¾ãç¹
æ°ããç°å¢ã®æ§ç¯ãéç¨ã大å¤
ä¸ä¼ã§ã¯AWSã®ãªã½ã¼ã¹ãTerraformã使ã£ã¦ç®¡çãã¦ãã¾ããæ°ããã¦ã§ãã¢ããªã±ã¼ã·ã§ã³ãç«ã¡ä¸ãã¦ãElastic beanstalkã§åããå ´åã以ä¸ã®ä½æ¥ãããå¿ è¦ãããã¾ãã
Terraformã§ãElastic beanstalkã®å®ç¾©ãä½ã£ã¦ãªãªã¼ã¹ããã
- æ°ããã¢ããªã±ã¼ã·ã§ã³ã®ãããã¤ãéç¥ããããã«èªåã§ä½ã£ãAWS lambdaãä¿®æ£ã
- ã¢ããªã±ã¼ã·ã§ã³ã®CI/CDã®æ§ç¯ã
- (å¿ è¦ã«å¿ãã¦)Route53ã®èª¿æ´ã
ãããæ¤è¨¼ç°å¢ã¨æ¬çªç°å¢ã®ä¸¡æ¹ã§å®æ½ããå¿ è¦ãããã¾ããé¢åã§ãã ããã«ãTerraformã¨Elastic beanstalkã¯ãã¾ãç¸æ§ããããªãããã§ãæå³ããªãå¤æ´å·®åãçºçãã¦ãã¾ã£ãããã¾ãã ã¾ããæ°ããã¤ã³ã¹ã¿ã³ã¹ã¿ã¤ããåºã¦ããã¨ãã«ãç°å¢ã«ãã£ã¦ã¯ãå®å ¨ã«åä½æããªãã¨ä½¿ããªãå ´åãããã¾ãã å®éãä¸ä¼ã§ã¯ãc5ç³»ãt3ç³»ã®ã¤ã³ã¹ã¿ã³ã¹ãæ¢åç°å¢ã§ã¯ä½¿ããã«ãããªãã®å·¥æ°ãããã¦ç°å¢ãåæ§ç¯ãã¾ããã EC2ã¨ALBãAutoscalingããªã¾ã§ä½¿ãããElastic beanstalkã使ãã»ããã¯ããã«æ¥½ãªã®ã¯ééããªãã®ã§ããããã£ã¨æ¥½ã«ç°å¢æ§ç¯ãéç¨ãã§ããæ¹æ³ãããã°ããã£ã¡ã«ç§»è¡ãããã
è¨ç®ãªã½ã¼ã¹ãæé©ã«ä½¿ãã¦ããªã
Elastic Beanstalkã®å ´åãâã®ãããªã¢ããªé ç½®ãããªããã°ãªããããã®çµæãè¨ç®ãªã½ã¼ã¹ã®ä½å°ãæ±ãè¾¼ã¾ãããå¾ãªãã§ãã
- ã©ããªã«å°ããã¢ããªã±ã¼ã·ã§ã³ã§ãå¯ç¨æ§ã確ä¿ããããã2å°ã®ec2ã¤ã³ã¹ã¿ã³ã¹ãå²ãå½ã¦ã¦ããã
- 2å°ãªãã¨ãããã¤ããã¨ãã«ãã¦ã³ã¿ã¤ã ãçºçãã¦ãã¾ãã¾ãã
- ã²ã¨ã¤ã®ECã¤ã³ã¹ã¿ã³ã¹ã§ã²ã¨ã¤ã®ã¢ããªã±ã¼ã·ã§ã³ã ããåããã
- å³å¯ã«ããã°è¤æ°ã®ã¢ããªãåãããã¨ãå¯è½ã§ãããè¨è¨çãªç¡çãçãã¾ãã
å®éã«æ¬çªç°å¢ã§åä½ãã¦ãããã¹ã¦ã®EC2ã®CPUå©ç¨çã®å¹³åãç®åºãã¦ã¿ãã®ã§ããã大åã使ããã¦ããªããã¨ããããã¾ãããã¡ã¢ãªãåæ§ã§ãã ãªã¼ãã¹ã±ã¼ã«ã«ä¾åããªãè¨è¨ã«ãã¦ããã®ã§ããªã½ã¼ã¹ã¯ããç¨åº¦ä½è£ããã£ã¦å²ãå½ã¦ã¦ãã¾ãããªã®ã§ãè¨ç®ãªã½ã¼ã¹ã®ä½å°ãããç¨åº¦ããã®ã¯è¨è¨éãããªã®ã§ããããããã«ããªããã£ãããªãã
Amazon EKSã¸ã®ç§»è¡ã«ãã解決
Amazon EKSã¸ç§»è¡ãããã¨ã§ä¸è¿°ã®2ç¹ã¯ä»¥ä¸ã®ããã«è§£æ±ºãããã¨èãã¾ããã
- ç°å¢æ§ç¯ã®Terraformããè±å´ãã¢ããªã±ã¼ã·ã§ã³ã®æ§æãéç¨ã«é¢ããå®ç¾©ã¯ãªãã¹ãã²ã¨ã¤ã®ãªãã¸ããªã«éç´ããã
- ã³ã³ãããªã¼ã±ã¹ãã¬ã¼ã·ã§ã³åºç¤ã§åãããã¨ã§ãECã¤ã³ã¹ã¿ã³ã¹ã¨ã³ã³ããã®é¢ä¿ãã1 対 1ãã å¤ å¯¾ å¤ã«ãªããè¨ç®ãªã½ã¼ã¹ãå¹ççã«ä½¿ããã
ãªãAmazon EKSã«ããã®ã
AWSã®å ´åãECSã使ãã¨ããé¸æè¢ãããã¾ããECSã使ãããEKSã使ããã®2æã«ãªãã¾ãããEKSãé¸ã³ã¾ããã KSã¯Kubernetesã¨ããæ¥çæ¨æºã§ããä»å¾ã大ããé²åãã¦ããä»çµã¿ãæä¾ãããããECSãããã³ãã¥ããã£ãæ¥çã«ããæ¹åã®æ©æµãåãããããã¨èããããã§ãã
æ§æã¨å©ç¨ãã¦ãããã¼ã«ãã¢ããªã³
æ§æã¯ä¸å³ã®éãã§ãã
- ã¯ã©ã¹ã¿ããµãã¤æ§ç¯ããSpinnakerã使ããåãã¢ããªããããã¤ããFastlyã§ãã¼ããã©ã³ã·ã³ã°ãã¾ãã
- AWS ALB Ingress Controller ã¨external-dns(https://github.com/kubernetes-incubator/external-dns)ã使ããã¨ã§ããã¼ããã©ã³ãµã®å®ç¾©ã¨route53ã®è¨å®ãKubernetesã®ç®¡çä¸ã«ç½®ãã¾ãã
- Dockerã¤ã¡ã¼ã¸ã¯AWS ECRã«ç½®ãã¾ãã
eksã¯ã©ã¹ã¿ã®ä½æã«ã¯ãeksctl ãå©ç¨ãã¾ãããå®ç¾©ã¯ä»¥ä¸ã®éãã§ãã
apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: cluster01 region: ap-northeast-1 version: "1.13" vpc: id: "vpc-xxxxxx cidr: "xx.xx.xx.xx/16" subnets: private: ap-northeast-1a: id: "subnet-aaaaaaaa" cidr: "xx.xx.xx.xx/22" ap-northeast-1c: id: "subnet-bbbbbbbb" cidr: "xx.xx.xx.xx/22" ap-northeast-1d: id: "subnet-ccccccccc" cidr: "xx.xx.xx.xx/22" nodeGroups: - name: ng1 labels: {role: workers} tags: {Stack: production, Role: eks-node, k8s.io/cluster-autoscaler/cluster01: owned, k8s.io/cluster-autoscaler/enabled: "true"} instanceType: c5.2xlarge desiredCapacity: 5 maxSize: 8 volumeSize: 100 privateNetworking: true securityGroups: attachIDs: [sg-xxxx,sg-xxxx] withShared: true ssh: allow: true publicKeyPath: xxxxxxx
- EKSä½ææã«æ°è¦ä½æãããå°ç¨VPCã§ã¯ãªãæ¢åã®VPCãå©ç¨ãã¾ãã
- æ°è¦ã§ä½æãããå°ç¨VPCã使ãã¨æ¢åã®VPCã¨ã®æ¥ç¶ãè¨è¨ä¸ã®è¡çªã®è§£æ±ºãªã©ä»éããã¿ã¹ã¯ãå¤ãçºçããã¨èããããã§ãã
- ãµãããããåæ§ã§ãã
- ããã©ã«ãã®ã¾ã¾ã ã¨ãã£ã¹ã¯ã®ãµã¤ãºãå°ããã®ã§
volumeSize: 100
ã«ãããã¨ã§ãããç¨åº¦ã®å¤§ããã確ä¿ãã¾ãã
å©ç¨ããhelmãã£ã¼ã
helmã¯Kubernetesã®ããã±ã¼ã¸(=ãã£ã¼ã)管çãã¼ã«ãhelmã§ã¤ã³ã¹ãã¼ã«ã§ãããã£ã¼ãã¯ãªãã¹ãhelmã§ã¤ã³ã¹ãã¼ã«ããhelmfileã§å®£è¨çãªè¨è¿°ã«ãã¦ç®¡çãã¦ãã¾ãã å©ç¨ãã¦ãããã£ã¼ãã¯ä»¥ä¸ã®éãã§ãã
-
- Kubernetesã®Ingressã¨ãã¦ãALB ã使ããããã«ããã³ã³ããã¼ã©ã§ãã
-
- Kubernetesã®IngressãServiceã«ã¢ã¯ã»ã¹ã§ããããã«DNSãæ§æãã¦ããã¾ãããã¾ãã¾ãªDNSãµã¼ãã¹ã«å¯¾å¿ãã¦ãããroute53ã«ã対å¿ãã¦ãã¾ãã
-
- Podã«å¯¾ãã¦IAMããªã·ã¼ãé©ç¨ããä»çµã¿ãæä¾ãã¾ãã
-
- ä¸ä¼ã¯ãã¢ãã¿ãªã³ã°ã«Datadogã使ã£ã¦ãã¾ããã¾ããAPMããã°ããã¹ã¦Datadogã使ããããç¾å¨ç§»è¡ä½æ¥ãå®æ½ä¸ã§ããKubernetesã§ãå¼ãç¶ã使ã£ã¦ããã¾ãã
- ãã°ã«ã¤ãã¦ã¯å ¨é¨Datadog Logsã«éä¿¡ããã¨ã³ã¹ããé«ãã¤ãã¦ãã¾ãã®ã§ãæ¥ã ã®éç¨ã§æ¤ç´¢ãåæã«ä½¿ããã°ã ããDatadog Logsã«éãã¤ã¤ããã¹ã¦ã®ãã°ãfluentdã使ã£ã¦S3ã«éããä½ããã£ãã¨ãã«å¾ãã調æ»ã§ããããã«ãã¦ããã¾ãã fluentdã¯DeamonSetã§åããã¦ãã¾ãã
- ä¸ä¼ã¯ãã¢ãã¿ãªã³ã°ã«Datadogã使ã£ã¦ãã¾ããã¾ããAPMããã°ããã¹ã¦Datadogã使ããããç¾å¨ç§»è¡ä½æ¥ãå®æ½ä¸ã§ããKubernetesã§ãå¼ãç¶ã使ã£ã¦ããã¾ãã
CI/CDãã©ã®ããã«æ§ç¯ããã
ã¯ã©ã¹ã¿ãéç¨ããã«ããã£ã¦ã管çããå¿ è¦ã®ããå種å®ç¾©ãã¡ã¤ã«ã¯ä»¥ä¸ã®éãã§ãã
- ä¸è¿°ã®eksctlã®ãã©ã¡ã¼ã¿ã¨ãªãã¯ã©ã¹ã¿ã®å®ç¾©ãã¡ã¤ã«
- helmãã£ã¼ããªã©ãã¹ã¦ã®ã¯ã©ã¹ã¿ã«å ±éã®è¨å®
- Kubernetesã®ããã¥ãã§ã¹ããã¡ã¤ã«
- Spinnakerã®ãã¤ãã©ã¤ã³å®ç¾©
ãã®ãã¡ãeksctlã®ãã©ã¡ã¼ã¿ã¨ãªãã¯ã©ã¹ã¿ã®å®ç¾©ãã¡ã¤ã«ã¯ããã»ã©é »ç¹ã«applyãããã®ã§ã¯ãªãã®ã§ãGithubã§ç®¡çãã¤ã¤CI/CDã®ä»çµã¿ã¯æ§ç¯ãã¾ããã§ããã helmãã£ã¼ãã¯ãã¯ã©ã¹ã¿ã«å ±æã®è¨å®ã«ãªãã¾ããããã¯ãã²ã¨ã¤ã®ãªãã¸ããªã«ã¾ã¨ãã¦ãcircleci㧠CI/CDãæ§ç¯ãã¾ããã Kubernetesã®ãªã½ã¼ã¹ã®ããã¥ãã§ã¹ããã¡ã¤ã«ã¨Spinnakerã®ãã¤ãã©ã¤ã³å®ç¾©ã¯ãã¹ã¦ã®ã¢ããªã±ã¼ã·ã§ã³ã®å®ç¾©ãã²ã¨ã¤ã®ãªãã¸ããªã«ã«ã¾ã¨ãã¦CI/CDãæ§ç¯ãã¾ããã ã¢ããªã±ã¼ã·ã§ã³ãã¨ã«å¥ã ã®ãªãã¸ããªã«ããè¨è¨ãã¢ããªã±ã¼ã·ã§ã³ã®ãªãã¸ããªã«å ¥ãã¦ãã¾ãã¨ããããæ¹ãæ¤è¨ãã¾ããããã¾ãã¯ã¾ã¨ãã¦ç®¡çãã¦ã¿ã¦ãé£ç¹ãåºã¦ãããå度æ¤è¨ãããã¨ãããã¨ã«ãã¾ããã ã¾ããã¢ããªã±ã¼ã·ã§ã³ã®ãããã¤ã¯ã³ã³ãããªãã¸ããªã¸ã®Pushãããªã¬ã«ããããã«ãSpinnakerã®ããªã¬ãè¨å®ãã¦ãã¾ããããã«ãã£ã¦ãã¢ããªã±ã¼ã·ã§ã³å´ã¯EKSãæèããå¿ è¦ããªããã¾ããã
è¦å´ããç¹ãæ°ã¥ããç¹
DNSé¢é£ã®èª²é¡
CoreDNSã®ããããè½ã¡ã¾ããã幸ãå°éã®ãã©ãã£ãã¯ãæµãã¦ãã¹ããã¦ããææã ã£ãã®ã§å¤§äºã«ã¯è³ãã¾ããã§ããã åå ã¯ããããªãã®ã§ããã調æ»ãã¦ã¿ãã¨ã以ä¸ã®è¨äºãè¦ã¤ããã¾ããã欧å·ã®ãã¡ãã·ã§ã³ãµã¤ãã§çºçãããDNSèµ·å ã®kubernetesé害ã®æ¯ãè¿ãã®è¨äºã§ãã
kubernetes-on-aws/jan-2019-dns-outage.md at dev · zalando-incubator/kubernetes-on-aws · GitHub
DNSé¢é£ã«æ¬¡ã®ãããªèª²é¡ããããã¨ããããã¾ããã
"ndots 5 problem"
ãã®ã³ã¡ã³ã ã«è©³ããã®ã§ãããkubernetesã§åããã¦ããPodã®ããã©ã«ãã®/etc/resolv.confã¯ã以ä¸ã®éããndots:5
ãæå®ããã¾ãã
nameserver 172.20.0.10 search default.svc.cluster.local svc.cluster.local cluster.local ap-northeast-1.compute.internal options ndots:5
ãã®å ´åã解決対象ã®ååã«å«ã¾ãã¦ãããããã®æ°ã5ããå°ããã¨ãsearch
ã«å«ã¾ãã¦ãããã¡ã¤ã³ãé ã«æ¢ãã¦ãè¦ã¤ãããªãã£ãå ´åã«ãæå¾ã«ä¸ããããååãå®å
¨ä¿®é£¾åã¨ãã¦ãæ¢ãã¾ãã
ä¾ãã°ãwww.ikyu.com
ã解決ãããªããwww.ikyu.com.default.svc.cluster.local
ãæ¢ã => ãªã => www.ikyu.com.svc.cluster.local cluster.local
ãæ¢ã => ãªã ... ãç¹°ãè¿ãã¦ãsearch
ã«æ¸ããã¦ãããã¡ã¤ã³ã§è¦ã¤ãããªã => www.ikyu.com
ã§æ¢ã => ã¿ã¤ãã£ããã¨ããæµãã«ãªãã¾ãããã®çµæãã²ã¨ã¤ã®ã¯ã©ã¹ã¿å¤ã®ååã解決ããã ãã§æ³å®ä»¥ä¸ã®åå解決ãªã¯ã¨ã¹ããçºçãã¾ãã
ãã®åé¡ã¯ãPodã®(dnsConfig)https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-configã«ndots:1
ã«ãªãããã«è¨è¿°ããã¦å¯¾å¦ãã¾ããã
Podã®dnsConfigã¨(dnsPolicy)https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policyãè¨è¿°ãããã¨ã§ã/etc/resolv.confãã«ã¹ã¿ãã¤ãºãããã¨ãã§ãã¾ãã
CoreDNSèªä½ã®ä¿¡é ¼æ§
Amazon EKS(kubernetes 1.13)ã使ãCoreDNSã®ãã¼ã¸ã§ã³ã¯ã1.2.6ã§ãææ°ã®ãã¼ã¸ã§ã³ã¨æ¯ã¹ãã¨å¤ãã§ãã
configmapãè¦ãã¦ãCorefileã®ä¸èº«ãè¦ã¦ã¿ãã¨ãproxy
ãã©ã°ã¤ã³ã使ã£ã¦ããã®ããããã¾ãã
ã§ããã® proxy
ãã©ã°ã¤ã³ã¯ãCoreDNSã®ææ°ã®ãã¼ã¸ã§ã³ã§ã¯ã½ã¼ã¹ã³ã¼ããã¨ãªããªã£ã¦ãã¾ãã
çµç·¯ã¯æ¬¡ã®issueã«è©³ããã§ãã
deprecate plugin/proxy · Issue #1443 · coredns/coredns · GitHub
proxy
ã¯ããã¯ã¨ã³ãã«å¯¾ãããã«ã¹ãã§ãã¯ã«åé¡ããããforward
ãã©ã°ã¤ã³ã®ã»ããã³ã¼ããã·ã³ãã«ã§ã½ã±ããããã£ãã·ã¥ããã®ã§é«éã«åä½ããã
kubernetesã1.14ãã forward
ã使ãããã«ãªã£ã¦ããããã§ããå
¬å¼ã®ã©ã¤ããµã¤ã¯ã«ããå¤æããã¨ãAmazon EKSã1.14ã«å¯¾å¿ããã®ã¯9æããã®åé¡ã«ã¤ãã¦ã¯ãã¼ã¸ã§ã³ã¢ãããããã解決ã®ãããããªããããªã®ã§ãEKSã§1.14ã使ããããã«ãªã£ããéããã«ãã¼ã¸ã§ã³ã¢ãããããã¨ã«ãã¾ããã
ã¾ããEKSã§ã¯ããã©ã«ãã®CoreDNSã®Podã®æ°ã¯2ã¤ã«ãªã£ã¦ãã¾ããå¦çèªä½ã¯2ã¤ã§ååæããã®ã§ãããPodãè½ã¡ãã¨ããç¾è±¡ã«å½ãã£ã¦ãã¾ã£ãã®ã§å®å ¨ãè¦ã¦Podã®æ°ãå¢ããã¾ããã
ã¾ãã以ä¸ãåèã«ããªãããNodelocal DNS Cacheãå°å ¥ãã¦ã¿ãã®ã§ããããªããåå解決ã®é度ãå£åãã¦ãã¾ããå°å ¥ãæ念ãã¾ãããã¾ãã詳ãã調æ»ãã¦ãã£ã¬ã³ã¸ãã¦ã¿ããã¨æãã¾ãã
kubernetes/cluster/addons/dns/nodelocaldns at master · kubernetes/kubernetes · GitHub
Descheduler ã¯å ¥ããã»ãããã
éç¨ãéå§ãã¦ã¿ãã¨Podããã¼ãä¸ã§åãããããã¼ãã¯50%ãè¶ ãã¦ã¡ã¢ãªã使ã£ã¦ããã®ã«å¥ã®ãã¼ãã¯ã¹ã«ã¹ã«ãã¨ãããããªãã¨ãèµ·ãã¾ããã 対çã¨ãã¦descheduler ãCronJobã§åãããã¨ã§ãå®æçã«Podã®åé ç½®ãè¡ãããã¼ãã®ãªã½ã¼ã¹å©ç¨ç¶æ³ãå¹³æºåãã¦ãã¾ãã deschedulerèªä½ã¯ã¨ã¦ãç°¡åã«å°å ¥ã§ãã¾ãã
è² è·è©¦é¨ã¯ãã£ãã»ãããã
æåã¯ãç¾ç¶ã®Elastic Beanstalkã®ãªã½ã¼ã¹ã®å©ç¨ç¶æ³ããªã¯ã¨ã¹ãæ°ãè¦ãªããè¨ç®ããã¦Podæ°ãcpu/memoryã® requests/limits ãå²ãåºãã¦ããã®ã§ãããå®éã«ãªãªã¼ã¹ãã¦ã¿ãã¨æ³å®éããªã¯ã¨ã¹ããæãã¾ããã§ãããããç¨åº¦ããã©ãã£ãã¯ã®ããã¢ããªã±ã¼ã·ã§ã³ã®å ´åã¯ãæºä¸è¨ç®ã ãã§ã¯ãªããã¡ãã¨è² è·è©¦é¨ããã£ãã»ããããããã§ãã
SIGTERMãåãããã°ã¬ã¼ã¹ãã«ã«ã·ã£ãããã¦ã³ããã¢ããªã±ã¼ã·ã§ã³ã«ãã¦ãã
Podã®çµäºã«ã¤ãã¦ã¯ä»¥ä¸ã®è¨äºã大å¤è©³ããã§ãã
Kubernetes: 詳解 Pods の終了 - Qiita
Kubernetesã¯Podå ã®ããã»ã¹ã«SIGTERMãéä¿¡ãããã¨ã§Podãæ¢ãã¾ãã SIGTERMãåãããã°ã¬ã¼ã¹ãã«ã«ã·ã£ãããã¦ã³ããã¢ããªã±ã¼ã·ã§ã³ã«ãã¦ããå¿ è¦ãããã¾ãã
å½åã®ç®çã¯éãããã
åé ã«æ¸ããéãã以ä¸ã®ãµãã¤ãAmazon EKSã¸ã®ç§»è¡ã§è§£æ±ºããã課é¡ã§ããã
- ã¢ããªã±ã¼ã·ã§ã³ã®åä½ç°å¢ã®æ§ç¯ãç°¡åã«ããã
- è¨ç®ãªã½ã¼ã¹ãããå¹ççã«ä½¿ããããã«ããã
1.ã«ã¤ãã¦ã¯ãElastic beanstalkã«æ¯ã¹ã¦ã¯ããã«ç°¡åãã¤ç´ æ©ãã«ç°å¢ãä½ããããã«ãªãã¾ãããããããæããã«ã¯æ £ãã¨ç¿çãå¿ è¦ãªã®ã確ãã§ãã å¤ãã®äººãæ¸ãã¦ãã¾ãããããã¥ãã§ã¹ããã¡ã¤ã«ãç解ããã®ã¯ã©ããã¦ãæéããããã¾ãã ãã¹ã¦ã®ã¨ã³ã¸ãã¢ãç°¡åã«ç°å¢ãæ§ç¯ã§ããããã«ããã®ãªãããªãããã®scaffoldingçãªãã®ãå¿ è¦ã ã¨æãã¾ããã
è¨ç®ãªã½ã¼ã¹ã®å©ç¨ã®å¹çåã¯æããããæãã¦ãã¾ããElastic beanstalkãããã¹ã¦ãEKSã¸ç§»è¡ã§ããã大ããã³ã¹ããã¦ã³ã§ãããã§ãã
ã¾ã¨ãã¨ä»å¾ã®å±æ
ç¾æç¹ã§ãAmazon EKSã§åãã¦ããã®ã¯ãpythonã®webã¢ããªã±ã¼ã·ã§ã³ã¨goã®grpcãµã¼ãã§ãããã®ä»ã®ãä¸ä¼ã§åããã¦ããLinuxç³»ã®ã¢ããªã±ã¼ã·ã§ã³ã¯ãElastic beanstalkæ代ããDockerã§åãã¦ãããããAmazon EKSã¸ã®ç§»è¡ã¯ã¹ã ã¼ãºã«ã§ãããã§ããã§ã«ã移è¡ã®ç®éãç«ã£ã¦ãã¾ãã
ãã¨ã¯ãWindowsç³»ã®ã¢ããªã±ã¼ã·ã§ã³ãã©ãããããã§ãããkubernetes 1.14ããWindowsã®ã³ã³ããããµãã¼ãããã¾ãã ä¸ä¼ã®Windowsç³»ã®ã¢ããªã±ã¼ã·ã§ã³ã¯ã³ã³ããã§ã¯åãã¦ãã¾ãããããããæ©ã«ã³ã³ããåã«ãã£ã¬ã³ã¸ãããã¨èãã¦ãã¾ãã kubernetesã¯è¤æ°ã®ã¯ã©ã¦ããããã¤ãã®å·®ç°ãæ½è±¡åããã¬ã¤ã¤ã¨ãã¦é²åãã¦ããããã«æãã¾ãã ä¾ãã°ãããã¯ã©ã¦ããããã¤ãã§å¤§è¦æ¨¡ãªé害ãèµ·ãã£ã¦ããã«ãã¯ã©ã¦ãã«ãããã¤ããï¼ï¼ã¨ãªã£ãã¨ãã«ãkubernetesã§åä½ãã¦ããã¢ããªã±ã¼ã·ã§ã³ãªããã¯ã©ã¦ããããã¤ãã®éããæèããã«ãã¢ããªã±ã¼ã·ã§ã³ã®ãããã¤ãã§ããã¯ãã§ããå®éã«åä½ããã©ããã¯å¥åé¡ã§ããã ããèããã¨ãWindowsç³»ã®ã¢ããªã±ã¼ã·ã§ã³ãã³ã³ããåãã¦kubernetesã§åãããããã«ãããã¨ã§ãä»å¾ã®ã¯ã©ã¦ã/ã³ã³ããæè¡ã®æ©æµããã£ããåãããããã«ãã¦ããããã¨æãã¦ãã¾ãã ã¾ãããããå®è¡åºç¤ãkubernetesãã¼ã¹ã®ã¸ã§ãã¨ã³ã¸ã³ã«åãæ¿ãããã¨ã§ãå¯ç¨æ§ãä¿¡é ¼æ§ãæ¹åããå¹ççã«ãªã½ã¼ã¹ã使ããããã«ãããã¨ãããã¨ã«ãåãçµãã§ããããã§ãã
æ¡ç¨æ å ±
ä¸ä¼ã§ã¯ãã¯ã©ã¦ã/ã³ã³ããæè¡ã«çµé¨ãããæ¹ or èå³ãããæ¹ãSREãDevopsãéãã¦ä¾¡å¤ãããµã¼ãã¹ãä¸ã«å±ãããæ¹ãåéãã¦ããã¾ãã
ãã®è¨äºã®çè ã«ã¤ãã¦
- ã·ã¹ãã æ¬é¨CTO室æå±ã® å¾³æ¦ ã§ãã
- ãµã¼ãã¹ã®æè¡åºç¤ã®éçºéç¨ãéçºæ¯æ´ãSREãè¡ãªã£ã¦ãã¾ãã