- 自動デプロイ、スケーリング、アプリ・コンテナの運用自動化のために設計されたオープンソースのプラットフォーム
- アプリを迅速に予定通りにデプロイする (コンテナをサーバー群へ展開する)
- 稼働中にアプリをスケールする(稼働中にコンテナ数を変更する)
- 新機能をシームレスに提供開始する (稼働中にロールアウトする)
- ハードウェアの利用率を要求に制限する (コンテナで共存させて稼働率を高くする)
- kubernetesはpods, deployments, servicesの基本要素で構成されており、標準的には、serviceにロードバランサーを設定してIPを晒し、外部インターネットからアクセスできるようにします
- しかし、HTTPSにリダイレクトするには内部でnginx-proxyを持つ必要がありますし、service毎にIPアドレスが生成されてしまうという問題がある
データ永続化 †
- Podにおけるデータ永続化とは、Podを削除した後にもデータを保持し続ける仕組みのこと
オンプレミス †
pods †
ingress †
- ingressはHTTPSレイヤーのロードバランサーであり、以下のメリットがある
- IP管理などを個別のserviceではなくingressで管理できる
- Googleが推奨している
クラウド †
AWS †
Azure †
環境構築 †
Windows †
Windowsコンテナ †
- コントロールプレーンノードはLinux
- ワーカーノードはワークロードのニーズに応じてWindowsまたはLinuxで実行
- Windows Server 2019は、サポートされている唯一のWindowsオペレーティングシステムであり、Windows (kubelet、コンテナランタイム、kube-proxyを含む)でKubernetesノードを有効にする
開発 †
ASP.NET Core †
活用方法 †