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

20211014_Alibaba_Cloud_Container_Service_for_Ku...

 20211014_Alibaba_Cloud_Container_Service_for_KubernetesにおけるServerless_Kubernetesの概要とManaged_Kubernetesとの違い.pdf

nezumisannn

October 14, 2021
Tweet

More Decks by nezumisannn

Other Decks in Technology

Transcript

  1. 自己紹介 resource “my_profile” “nezumisannn” { name = “Yuki.Teraoka” nickname =

    “ねずみさん家。” company = “beyond Co., Ltd.” job = “Site Reliability Engineer” twitter = “@yktr_sre” skills = [“Terraform”,”Packer”] }
  2. Agenda • Container Service for Kubernetesの概要 • Container Service for

    Kubernetesのタイプ • Managed Clusterの概要 • Managed Clusterのタイプ • Managed Clusterの機能 • Serverless Clusterの概要 • Serverless Clusterの制約事項 • Serverless Clusterの課金体系 • まとめ
  3. Container Service for Kubernetes(ACK)の概要 • Alibaba Cloudのコンテナ化されたアプリケーションの管理サービス • マネージドなKubernetes Clusterを迅速にセットアップ

    • Cluster自体の管理やコンテナのライフサイクルを管理できる ◦ ネットワーク / ストレージ / ログ / モニタリング • 3つのタイプが存在する
  4. Container Service for Kubernetesのタイプ タイプ Master Worker ユースケース(例) Dedicated Cluster

    自己管理 自己管理 オンプレミスからの移行 Managed Cluster Managed 自己管理 一般的なWebアプリケーション Serverless Cluster Managed Managed より突発的なスケールアウトが求められるア プリケーション / バッチ処理
  5. Managed Clusterの概要 • KubernetesのMaster NodeがACKで管理される ◦ ユーザー側で管理する必要がない • Worker Nodeのみ作成

    / 管理していく ◦ ECSインスタンスとして起動 ◦ インスタンスのサイジング / スケーリング ◦ クラスターの自動スケーリングを有効化できる ▪ Podのリソース要求に基づいて計算される ▪ 予め設定していた閾値に到達するとスケールアウト /インする • 2つのタイプがある
  6. Managed Clusterのタイプ カテゴリ 機能 Standerd Professional Cluster Size(ノード数) - 100(1Cluster)

    1000(最大5000) SLA - 99.90% 99.95% API Server 可用性の監視 無効 有効 etcd 自動バックアップ 無効 有効 Managed node pool - 無効 有効 利用コスト - 無料 $0.09/hour 後からProfessionalに移行できるためまずは Standerdから検討 https://www.alibabacloud.com/help/ja/doc-detail/173290.htm
  7. Managed Clusterの機能 • Service ◦ type: Load BalancerをapplyするとL4のSLBが作成される ◦ annotationsを利用することでプロトコルの指定や

    SSLの終端が可能 • Ingress ◦ L4のSLB + nginx-ingress-controller(POD) が作成される ◦ パスベースルーティングが可能 • ロギング ◦ Log Serviceと統合されている ◦ アプリケーションログなどは基本こちらへ集約 • モニタリング ◦ Cloud Monitorと統合されている ◦ 管理コンソールからメトリクス確認及びアラームの設定が可能
  8. Serverless Clusterの概要 • KubernetesのMaster / Worker Node共にACKで管理される ◦ ユーザー側で管理する必要がない •

    よりアプリケーションの開発のみに注力できる ◦ マニフェストを書いて applyするだけ ◦ (特に) AWS Fargateと仕組みがよく似ている ◦ Worker Nodeを気にすることなくKubernetes互換で管理できるところが大きな特徴
  9. Serverless Clusterの特徴/制約事項 • DaemonSetが利用できない ◦ DatadogやFluentdなどの1ノードに対する単一Podの起動が難しい ◦ モニタリング/ロギング用コンテナはサイドカーとしての起動が必要 ◦ Log

    Serviceと統合されている ▪ aliyun_logs_をプレフィックスとして Podの環境変数を設定する • Service ◦ ユーザーからはWorker Nodeが見えないためNodePortが利用できない • Storage ◦ Alibaba Cloud Disk or ApsaraFile Storage NASをPodにマウントできる ▪ PersistentVolume (PV) / PersistentVolumeClaim(PVC) ▪ https://github.com/AliyunContainerService/serverless-k8s-examples/
  10. Serverless Clusterの課金体系 • 前述の通りWorker Node含めてACK管理になる • Managed Clusterと比較して課金体系が異なる ◦ vCPUとメモリの従量課金

    ◦ (vCPUの数 * vCPUの単価) + (メモリサイズ * メモリの単価)* インスタンスの実行時間 ◦ 2vCPU / 4GBを1ヶ月起動した場合 ▪ ((0.0000077USD/sec * 2) + (0.00000096USD/sec * 4)) * 3600 * 720 ▪ 49.87USD(¥5,650) + SLBなどの利用リソース
  11. まとめ • ACKには3つのタイプがある • 最初にManaged Clusterから検討 ◦ まずはStandardを選択 ◦ (後から変更できるので

    )問題があればProfessionalに • 性能要件を満たせない場合はServerless Clusterも検討