Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Digital Oceanで始める お手軽Cloud Provider生活 / Cloud Provider 101 with Digital Ocean

Kohei Ota
November 30, 2020

Digital Oceanで始める お手軽Cloud Provider生活 / Cloud Provider 101 with Digital Ocean

Kohei Ota

November 30, 2020
Tweet

More Decks by Kohei Ota

Other Decks in Technology

Transcript

  1. Digital Oceanで始める
    お手軽Cloud Provider生活
    inductor

    View full-size slide

  2. じこしょうかい
    apiVersion: inductor.apps/v1
    kind: Person
    metadata:
    name: “Kohei Ota”
    Twitter: “@_inductor_”
    GitHub: “@inductor”
    org: “HPE”
    role: “Solutions Architect”
    community: “CNCF Ambassador, CloudNative Days organizer, Docker Meetup
    Tokyo organizer”
    spec:
    replicas: 1

    View full-size slide

  3. DO上でSelf hosted
    Kubernetesを作る

    View full-size slide

  4. モチベーション
    ● CKS落ちた(しんどい
    ● クラスターのセキュリティ評価用にkube-benchするのに気軽に遊べる環境がほし

    ● パラメーター好きにいじれてCKSと同じkubeadmベースでついでにシュッといい感
    じにLBとかVolume触れるやつなんかないかな~~~?
    → それを満たすやつを作った

    View full-size slide

  5. https://github.com/inductor/
    terraform-do

    View full-size slide

  6. Digital Oceanについて

    View full-size slide

  7. Digital Oceanについて
    ● ニューヨークに拠点を構えるクラウドプロバイダー
    ● IaaSを中心とした「便利なVPS」的な機能を提供するクラウドサービス
    ○ 日本だとConoHaとかに近い感じの機能が多いかも?
    ● マネージドKubernetesサービスを提供するほか、KubeConでのスポンサー、技術
    ブログでの発信など外部での活躍も多い
    ● 日本にリージョンはなくフォーラムでは何年も前から希望する声も多いがまだ実現
    されていない

    View full-size slide

  8. Digital Ocean & Kubernetes
    ● マネージドKubernetesサービス
    ○ DO Droplets(IaaS)をワーカーとしたクラスターが作れる
    ○ Node poolはある(異種混合なノード構成が作りやすい )
    ○ Regional Clusterはない(シングルゾーンのみ )
    ○ 新しいバージョンへの追従がはやい!
    ○ Type: Load BalancerとStorageClassがDOのマネージドサービスと連携して使える
    シンプルな構成で動かすには便利

    View full-size slide

  9. Cloud Provider(Cloud Controller Manager)
    ● クラウドとKubernetesの世界をつなげるためのコンポーネント
    ○ Nodeリソースとクラウドの IaaS
    ○ Serviceリソースとクラウドのネットワーク、マネージド LB
    ● in-tree providerとしてAWS、GCPなどが実装済み
    ○ 現在新しいCloud Providerを使う場合は外部プロバイダとして実装してクラウドコントローラーを動
    かせばよい
    ● Digital OceanのプロバイダはOSSで公開
    ○ https://github.com/digitalocean/digitalocean-cloud-controller-manager
    ○ CSIはCSIプラグインとして別途提供
    ● ↑とkubeadmを組み合わせて、LBとPVCが使えるクラスターをSelf Hostedで作る

    View full-size slide

  10. クラスター構成
    ● 2Core 4GB master x 1
    ● 4Core 8GB worker x 3
    ● DO DropletsはパブリックIP、プライベートIPが1つずつ付与されるので、ノード間通
    信は内部NW
    ● Ansibleとか触る時間がなかったのでTerraformとShell scriptで実装
    ● Cloud ControllerとCSIを入れたらだいたいマネージドKubernetesと同じような構成
    で作れて楽しかった

    View full-size slide

  11. まとめ
    ● DOはVPCとインフラだけのシンプルな構成なので入門しやすい
    ● クラウドコントローラーの実装も全部OSSで分割されているので困った時に読みや
    すい
    ● Terraformで作って潰すのがかんたんにできるのでkube-benchの検証とかCKSの
    勉強のついでに最近遊びはじめました(おうちにラックがないので・・・

    View full-size slide