Dockerの登場によって、コンテナはユーティリティ化しました。
当初は開発環境やテスト環境等で使われることが多かったですが、主要クラウドベンダーのKubernetesサポートもあり、今や商用環境でコンテナ技術が使われるのが当たり前になりました。
ここでは、コンテナ技術に関する記事をまとめていきます。
Kubernetesチュートリアル
#コンテナオーケストレーションツールとしてデファクトスタンダードとなったKubernetesは、クラウド環境のみならずオンプレ環境でも利用が進んでおり、コンテナ実行基盤としての確固たる地位を築いています。
ここでは、そんなKubernetesの環境構築から開発・運用までで必要な作業をハンズオン形式で実施することで、初心者レベルからの脱却を目指します。
環境構築編
#Kubernetesクラスタ構築
Ingress導入
- NGINX Ingress Controller
- AWS Load Balancer Controller
- カスタムドメイン管理(external-dns)
- HTTPS通信(Cert Manager)
ストレージ(CSI)導入
アプリケーション開発編
#ローカル開発環境準備
Kubernetesマニフェスト作成
クラスタ環境デプロイ
継続的デリバリ編
#クラスタ運用編
#スケーリング/スケジューラ
モニタリング
- メトリクス収集・可視化(Prometheus / Grafana)
- メトリクス収集・可視化(OpenTelemetry / CloudWatch)
- ログ収集・分析(Fluent Bit / AWS OpenSearch)
- ログ収集・分析(Fluent Bit / Cloud Watch)
- 分散トレーシング(OpenTelemetry / Jaeger)
- 分散トレーシング(OpenTelemetry / AWS X-Ray)
バックアップ・リストア
Kubernetes活用編
#Kubernetes活用例の記事を抜粋しました。Kubernetesを様々なユースケースに適用してみましょう。
- Kubernetes ネイティブなワークフローエンジン Argo Workflows
- Karpenterのオートスケールを試してみました
- Dapr on Jetson Nano with k3s
- KubernetesのPod Security(PSS/PSA)
- Mizu(水)でマイクロサービスのトラフィックを分析する
- Flagger と Ingress Nginx でカナリアリリースをする
- Flagger と Ingress Nginx でA/Bテストをする
- Strimzi - Kubernetes で Kafka を運用するための Operators
- Telepresence - EKSのワークロードをローカル環境でデバッグする
- SealedSecretsでKubernetesコンテナのシークレット情報をGit管理する
- Secrets Store CSI DriverでKubernetesのシークレット情報を管理する
- Camunda Platform のモダンなプロセスオーケストレーター Zeebe による開発環境を構築する
- Ingressを強化したKubernetes Gateway APIを試してみる
- kubectl debugを使ってKubernetesのコンテナをデバッグする
- EKS Blueprints(CDK)ですぐ使える実用的なEKSクラスタ環境を簡単に手に入れる
- Knative EventingのKafka BrokerでリトライとDead Letter Sink(DLS)を試す
- AWS Controllers for Kubernetes(ACK): AWSサービスをKubernetesカスタムリソースで管理する
その他コンテナ関連のブログ記事
#- AWSが公開したFinchでコンテナ実行/イメージビルドをする
- OrbStack - macOS 専用の高速軽量なコンテナ & Linux VM 環境
- 今さら聞けないMaven – コンテナのビルドと一緒にpushもMavenでしたい。
- Podman Desktopがv1.0になったのでwindows版を試してみたところ、気付いたらv1.1に上がるくらいに機能豊富だった話