Docker / Kubernetesによる Cloud Nativeな開発と未来 - Developers Boost at 12/15 / devboost-k8s-cn

Docker / Kubernetesによる Cloud Nativeな開発と未来 - Developers Boost at 12/15 / devboost-k8s-cn

https://event.shoeisha.jp/devboost/20181215/session/1903/

Developers Boost~U30エンジニアの登竜門~

近年Dockerから始まったコンテナ技術やKubernetesは急激に普及し、大手クラウドプロバイダー3社(GCP、Azure、AWS)がマネージドKubernetesサービスをリリースしたことからも、コンテナプラットフォームとしてデファクトスタンダードとなったことを物語っています。
また、Linux FoundationのExecutive DirectorでもあるJim Zemlin氏が「Kubernetes is becoming the Linux of the cloud」とも語っています。

Kubernetesはインフラエンジニアのためだけではなく、ソフトウェアエンジニアが利用するものでもあります。
このセッションでは、今後のCloud Nativeな開発に必要不可欠なKubernetesについて説明し、様々なエンジニアがKubernetesをベースとした開発で得られるメリットと未来について語ります。

De266761b955b2636e454a1bc7a99ed4?s=128

Masaya Aoyama (@amsy810)

December 15, 2018
Tweet

Transcript

  1. Masaya Aoyama CyberAgent adtech studio Docker / KubernetesʹΑΔ Cloud Nativeͳ։ൃͱະདྷ

    Developers Boost at 12/15 MasayaAoyama @amsy810
  2. Cloud Native Days Tokyo co-chair Cloud Native Meetup Tokyo Organizer

    (+ JKD+ KubeCon ) Japan Container Days v18.04 Keynote (+ IPSJ ComSys 2018)   for Kubernetes CKA #138CKAD #2 OpenStack / Kubernetes Contributor Masaya Aoyama (@amsy810) Infrastructure Engineer
  3. Instagramable Kubernetes

  4.  page 04       

    : 10:20 : 2:30    12:10 15:30 18:05 SEA ! Kubernetes Contributors Summit KubeCon + CloudNativeCon NRT!SEA " # NRT   
  5. What is Container (Docker)? Docker Container Orchestration Engine

  6. Docker • Docker-Application Container '0*&  $2 • %(# 

    6531" • DevOps/+4),  / !. page 06
  7. Docker   Immutable Infrastructure page 07 FROM centos:7 RUN

    yum -y install epel-release RUN yum -y install nginx COPY nginx.conf /etc/nginx/ ENTRYPOINT ["nginx", "-g", "daemon off;"] Build Once,    Docker Image
  8. Docker  Immutable Infrastructure page 08 Build Once, Run Anywhere

    Docker Image CentOS 7 (3.x Kernel) Ubuntu 18.04 (4.x Kernel)
  9. Docker Swarm mode Container Orchestration Engine

  10. Container Orchestration Engine (4/0 • 3*Docker2/ • # $ #

    •  $ # / $ $ # • "$ # $ • #-.15 • 6&+!$ # • $ • "$# # • $,')%2/
  11. What is Cloud Native? CNCF and Cloud Native Cloud Native

    Ecosystem
  12. CNCF and The Linux Foundation • Kubernetes The Linux Foundation

    CNCF  •     
  13. Cloud Native page 013 Cloud native technologies empower organizations to

    build and run scalable applications in modern, dynamic environments such as public, private, and hybrid clouds. Containers, service meshes, microservices, immutable infrastructure, and declarative APIs exemplify this approach. These techniques enable loosely coupled systems that are resilient, manageable, and observable. Combined with robust automation, they allow engineers to make high-impact changes frequently and predictably with minimal toil. The Cloud Native Computing Foundation seeks to drive adoption of this paradigm by fostering and sustaining an ecosystem of open source, vendor-neutral projects. We democratize state-of-the-art patterns to make these innovations accessible for everyone. CNCF Cloud Native Defenition v1.0, CNCF, 2018-11-28 (https://github.com/cncf/toc/blob/master/DEFINITION.md)
  14. Cloud Native 8 page 014 Cloud native technologies empower organizations

    to build and run scalable applications in modern, dynamic environments such as public, private, and hybrid clouds. Containers, service meshes, microservices, immutable infrastructure, and declarative APIs exemplify this approach. These techniques enable loosely coupled systems that are resilient, manageable, and observable. Combined with robust automation, they allow engineers to make high-impact changes frequently and predictably with minimal toil. The Cloud Native Computing Foundation seeks to drive adoption of this paradigm by fostering and sustaining an ecosystem of open source, vendor-neutral projects. We democratize state-of-the-art patterns to make these innovations accessible for everyone. CNCF Cloud Native Defenition v1.0, CNCF, 2018-11-28 (https://github.com/cncf/toc/blob/master/DEFINITION.md) • .0  • & • /- • 4*  • + 3 71 )%5 ($6 " !'2 Open Scalable #,
  15. Kubernetes is key product for Cloud Native Computing Cloud Native

    Ecosystem
  16. None
  17. What is doing Kubernetes? Declarative Code & APIs Self-Healing Rolling

    Update – Automation & Immutable Infrastructure ReplicaSet Service – “type: LoadBalancer”
  18.  page 018 •   Pod =  

     
  19. Kubernetes  page 019 Design Principles, Kubernetes Community, 2017-11-04 (https://github.com/kubernetes/community/blob/master/contributors/design-proposals/architecture/principles.md)

    02 03 01 Self Healing  ) #"  Automation & Immutable Infrastructure Immutable Infrastructure& # Declarative Code & API  Manifests$" %'API !( Infrastructure as Code
  20. Declarative Code and APIs page 020 Developer Register YAML Manifest

    Kubernetes Cluster Manifests API  Infrastructure as Code $ kubectl apply –f manifest.yaml
  21.   ReplicaSet      

  22.        Load Balancer

  23. ReplicaSet  Self-Healing page 023 • ReplicaSet  Replica 

    • = Node  Node
  24. ReplicaSet  Rolling Update (Automation) page 024 •  #

    •    • Immutable Infrastructure •  " Load Balancer Developer YAML!
  25. ReplicaSet  Rolling Update (Automation) page 025 •  

    •      • Immutable Infrastructure •   Load Balancer
  26. ReplicaSet  Rolling Update (Automation) •   • 

        • Immutable Infrastructure •   Load Balancer
  27. ReplicaSet  Rolling Update (Automation) page 027 •  

    •      • Immutable Infrastructure •   Load Balancer
  28. Keypoints page 028 • KubernetesGoogle=/A3.  + #(&$,'Borg%,OSS1  →

    ;*,),"25<>1  ?01846 • 7@1 $!*,9-YAML:  → Infrastructure EngineerBOpsC . Server-side Engineer BDevC.
  29. Other topics Microservices and Service Mesh Kubernetes also like framework

    and more extensible Serverless and ML Ops
  30. Microservice Architecture page 030     ProductPage Reviews

    Details Ratings HTTP/gRPC HTTP/gRPC HTTP/gRPC
  31. page 031 500+ microservices The Case of Chaos, Bruce Wong,

    2014-12-19, (https://www.slideshare.net/BruceWong3/the-case-for-chaos) The History of the Service Mesh, The New Stack, 2018-2-13, (https://thenewstack.io/history-service-mesh/)
  32. Service Mesh Architecture (generally) page 032 • Microservice • Microservice

    with Service Mesh (for Observability)
  33. Service Mesh  • Microservice     •

    Traffic Shifting (ex, Canary release) • Circuit Break • Fault Injection • Rate Limit • Retry • mTLS Example of Canary Release
  34. Kubernetes also like framework Developer Register YAML Manifest Create Managed

    Service Instances Create Sharded MySQL Cluster on the Kubernetes Cluster as Container
  35. Kubernetes is more extensible page 035 C A D C

    DBC B DA C A C A A F A D2 F C C BB & A BB C A C A C DBC A & A C 2 A CB A A A & B A AD B &B C D C C DC C C 2 Kubernetes       Boring Kubernetes 
  36. Kubernetes is more extensible page 036 B C B CAB

    A C 2 B B AA & AA 2F B B B D CAB & D 2 B 2BA D 2 & A C A2 &A B C B B 2F CB B B
  37. Future of Kubernetes Kubernetes is becoming de-facto standard in the

    future?
  38. page 038 KubeCon + CloudNativeCon KubeCon + CloudNativeCon Barcelona 2019

    Call for Proposals (CFP) Is Open, CNCF, 2018-11-28 (https://www.cncf.io/blog/2018/11/16/kubecon-barcelona-2019-call-for-proposals-cfp-is-open/)
  39. Google Kubernetes Engine Managed Kubernetes Serivce Azure Kubernetes Service 2014-11

    2017-02 2017-11 Amazon Elastic Container Service for Kubernetes
  40. page 040 CNCFStandardization 01.     " (!)

    OCI v1.0 02.     #  CRI 03.   #  CSI 04. #  CNI
  41. page 041 Kubernetes for Enterprise •    

      Monzo Bank • Kubernetes + Linkerd (Service Mesh) Ref: https://monzo.com/blog/2016/09/19/building-a-modern-bank-backend/
  42. CNCF Community Presentation, CNCF, 2018 (https://github.com/cncf/presentations)

  43. Kubernetes  

  44. 3 I H uNs P /D 6 IBK c a

    io sy P   0 C 1 DD 3 I H W3 I HS M 3 I H & 72 uNs C ID 9 CD H uNs 0BH K L 4 uNs / B 8I uNs /D HI uNs 5 I I uNs uNs N snN s h l o y f fl y s N snr N tk ye & hs c N uNsu ghd v o y /2 /0 fl N s 8 KB 5 HA 3 I H dNkyl 3 I H b
  45. Thank you for your attention follow me: @amsy810