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

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

Ad22fcf5773b906c08330f4d57242212?s=47 Kohei Ota
November 30, 2020

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

Ad22fcf5773b906c08330f4d57242212?s=128

Kohei Ota

November 30, 2020
Tweet

Transcript

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

  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
  3. DO上でSelf hosted Kubernetesを作る

  4. モチベーション • CKS落ちた(しんどい • クラスターのセキュリティ評価用にkube-benchするのに気軽に遊べる環境がほし い • パラメーター好きにいじれてCKSと同じkubeadmベースでついでにシュッといい感 じにLBとかVolume触れるやつなんかないかな~~~? →

    それを満たすやつを作った
  5. https://github.com/inductor/ terraform-do

  6. Digital Oceanについて

  7. Digital Oceanについて • ニューヨークに拠点を構えるクラウドプロバイダー • IaaSを中心とした「便利なVPS」的な機能を提供するクラウドサービス ◦ 日本だとConoHaとかに近い感じの機能が多いかも? • マネージドKubernetesサービスを提供するほか、KubeConでのスポンサー、技術

    ブログでの発信など外部での活躍も多い • 日本にリージョンはなくフォーラムでは何年も前から希望する声も多いがまだ実現 されていない
  8. Digital Ocean & Kubernetes • マネージドKubernetesサービス ◦ DO Droplets(IaaS)をワーカーとしたクラスターが作れる ◦

    Node poolはある(異種混合なノード構成が作りやすい ) ◦ Regional Clusterはない(シングルゾーンのみ ) ◦ 新しいバージョンへの追従がはやい! ◦ Type: Load BalancerとStorageClassがDOのマネージドサービスと連携して使える シンプルな構成で動かすには便利
  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で作る
  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と同じような構成 で作れて楽しかった
  11. デモ

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