ApacheKafka

CFK Operator のインストールと運用ガイド(2026年最新版)

ⓘ本ページはプロモーションが含まれています

もっとスキルを活かしたいエンジニアへ

スポンサードリンク
働き方から選べる

無料で使えて良質な案件の情報収集ができるサービス

エンジニアの世界では、「いつでも動ける状態を作っておけ」とよく言われます。
技術やポートフォリオがあっても、自分に合う案件情報を日常的に見れていないと、いざ動こうと思った時に比較や判断が難しくなってしまいます。
普段から案件情報が集まる環境を作っておくと、良い案件が出た時にすぐ動きやすくなりますよ。
筆者自身も、メガベンチャー勤務時代に年収1,500万円を超えた経験があります。振り返ると、技術だけでなく「どんな案件や働き方があるか」を日頃から見ていたことが、キャリアの選択肢を広げるきっかけになりました。
このブログを読んでくれた方に感謝を込めて、実際に使っている情報収集サービスを紹介します。

フルリモート・週3日・高単価、どんな条件も妥協したくないなら

フリーランスボードに無料会員登録する

利用者10万人以上。業界最大規模45万件の案件。AIマッチ機能や無料の相場情報が人気。

年収800万円以上のキャリアアップ・ハイクラス正社員を視野に入れているなら

Beyond Careerに無料相談する

内定獲得率90%以上。紹介先企業とは役員クラスのコネクションがある安心と信頼できるエージェント。


Contents

スポンサードリンク

1. CFK Operator のインストール

このセクションでは、Helmkubectl マニフェスト の2つの方法で CFK Operator をクラスタにデプロイする手順を示します。どちらも公式リポジトリから取得でき、環境や運用方針に合わせて選択してください。

1‑1. Helm Chart を使ったインストール

Helm はバージョン管理とパラメータ化が容易なため、本番環境での利用を推奨します。以下は最新版(2024‑12 時点)の v0.9.0 を例にした手順です。

ポイントwatchNamespaces を空にすると全ネームスペースを監視しますが、セキュリティ要件がある場合は対象の名前空間だけを列挙してください。

1‑2. kubectl マニフェストでのインストール

マニフェスト方式は Helm が利用できない環境(例:Air‑gapped クラスタ)向けです。CRD と Operator デプロイメントを個別に適用します。

前提条件 – cert-manager のインストール

TLS 証明書の自動生成には cert-manager が必須です。以下コマンドでインストールしてください。

cert-manager のバージョンは公式ドキュメントに合わせて適宜更新してください。

CRD と Operator デプロイメントの適用

注意:上記 URL は cfk-operator リポジトリの公式パスです。Strimzi の CRD とは別物であることに留意してください。

1‑3. インストール後の動作確認


2. Kafka CRD 設定例とリソースチューニング

本節では、実運用で推奨される ブローカー数・レプリケーションティアードストレージ、そして CPU/メモリのリクエスト&リミット の具体的な設定例を示します。適切にチューニングすることでスループットとコストのバランスが最適化されます。

2‑1. 基本構成(ブローカー数・レプリケーション)

以下は 3 台構成で、外部ロードバランサー経由の接続を想定した Kafka カスタムリソースです。レプリケーション係数はブローカー数と同等に設定し、単一ノード障害時でもデータ損失が起きないようにします。

2‑2. ティアードストレージ構成

Hot データは高速 NVMe、Cold データはコスト効率の良い SSD に自動分散させる設定例です。クラウドごとのストレージクラス名は環境に合わせて置き換えてください。

2‑3. リソースリクエスト/リミット(ベストプラクティス)

コンポーネント CPU request CPU limit メモリ request メモリ limit
Kafka ブローカー 2 cores 4 cores 8Gi 12Gi
ZooKeeper 0.5 core 1 core 1Gi 2Gi
  • CPU request は安定稼働の最低保証、limit はスパイク時に利用可能な上限です。
  • メモリは JVM ヒープサイズ(-Xmx)を考慮し、余裕を持たせることで GC 頻度が低減します。

Tip:リソース設定はクラスタの実測負荷に合わせて段階的に調整してください。過剰割り当てもコスト増につながります。


3. 認証・認可と TLS 設定

マネージド K8s 環境(GKE / EKS / AKS)では、クラウド固有の IAM と組み合わせた Workload IdentityIRSAAAD Pod Identity が推奨されます。本節ではそれぞれの設定例と、TLS 証明書を cert-manager で自動生成する手順を示します。

3‑1. GKE – Workload Identity と TLS

ServiceAccount の紐付け

cert-manager による証明書自動生成

ポイントcert-manager がインストール済みであることが前提です(セクション 1‑2 の手順参照)。

3‑2. EKS – IRSA と SASL/OAuth

OAuth 認証情報の格納

Kafka CR に認証設定を追加

3‑3. AKS – Azure AD Pod Identity と TLS

Key Vault から証明書取得例(cert-manager 用 Issuer)

落とし穴:Azure AD のアクセストークン有効期限は短いので、TokenRefreshInterval を適切に設定しないと認証エラーが頻発します。


4. モニタリング・アラート(Prometheus/Grafana + Alertmanager)

CFK Operator 本体には Kafka Exporter が同梱されていません。公式ドキュメントでは別途デプロイすることが推奨されています。このセクションでは、Exporter のインストール手順と、Grafana ダッシュボード・Alertmanager ルールの設定例を示します。

4‑1. Kafka Exporter のデプロイ

4‑2. Grafana ダッシュボードのインポート手順

  1. Grafana にログイン → 「+」→「Import」。
  2. Dashboard ID 1860(Confluent Kafka)を入力し、データソースに Prometheus を選択。
  3. インポート後は以下のパネルが自動生成されます:
  4. ISR 同期遅延
  5. ディスク使用率(%)
  6. プロデューサ/コンシューマレイテンシ

4‑3. Alertmanager のルール例

ポイント:Exporter の Service 名(kafka-exporter.monitoring.svc.cluster.local)と job ラベルは Prometheus 設定に合わせて調整してください。


5. スケーリング・リバランス・Zero‑downtime アップグレード

この章では、CFK Operator が提供する 水平スケーリング自動パーティション再配置(KafkaRebalance)、そして ダウンタイムなしのバージョンアップ手順 を具体的に示します。

5‑1. 水平スケーリング

replicas フィールドを変更するだけで新ブローカーが追加されます。Operator が RollingUpdate ポリシーで安全に再起動します。

ベストプラクティス:スケールアウト後は KafkaRebalance ジョブでパーティションの再分配を実行し、リソース使用率を均等化します。

5‑2. 自動パーティション再配置(KafkaRebalance)

Operator が ISR を監視しつつ、均衡が取れるまで再配置を続行します。

5‑3. Zero‑downtime アップグレードフロー(例:v0.9.0 → v1.0.0)

  1. バックアップ確認(ストレージスナップショット取得)。
  2. PodDisruptionBudget (PDB) 作成 で同時停止数を制限。

yaml
apiVersion: policy/v1
kind: PodDisruptionBudget
metadata:
name: kafka-pdb
namespace: cfk-system
spec:
maxUnavailable: 1

  1. Operator のイメージタグ更新(Helm 利用時は helm upgrade、kubectl 時は set image)。

bash
# kubectl 例
kubectl set image deployment/cfk-operator \
cfk-operator=confluentinc/cfk-operator:1.0.0 -n cfk-system

  1. RollingUpdate が自動的に実行され、ブローカーが順次新バージョンへ置き換わります。
  2. アップグレード完了後は PDB を削除し、kubectl get pods -w で正常性を最終確認。

重要ポイント:PDB の maxUnavailable:1 により同時に 2 台以上が停止せず、サービスダウンなしでバージョンアップできます。


6. マルチクラウド連携・コスト最適化・トラブルシューティング

最後に Cluster Linking を用いたマルチクラウドレプリケーション例と、各クラウド別の ノード/永続ボリューム選定指針、そして実務で頻出する障害シナリオのチェックリストをまとめます。

6‑1. Cluster Linking によるデータレプリケーション例(GKE ↔ EKS)

詳細は公式ガイド Confluent Cluster Linking を参照してください。

6‑2. ノードタイプ・永続ボリュームの選定指針と概算月額(2024 年データ)

クラウド 推奨ノードタイプ 永続ボリューム種別 月額概算*
GKE n2-standard-8 (8 vCPU, 32 GiB) PD‑SSD 500 GiB ¥150,000
e2-highcpu-4 (4 vCPU, 16 GiB) PD‑Balanced 1 TiB ¥120,000
EKS m5.large (2 vCPU, 8 GiB) gp3 500 GiB $95
r6g.xlarge (4 vCPU, 32 GiB) io2 1 TiB $180
AKS Dsv4_v5 (8 vCPU, 32 GiB) Premium SSD 500 GiB €140

* :為替レートは執筆時点(2024‑12)での概算です。実際の料金は各クラウドベンダーの価格ページをご確認ください。
- 最新料金はそれぞれの公式サイト → GCP PricingAWS EC2 PricingAzure VM Pricing を参照してください。
- スポット/プリエンプティブインスタンスは最大 80 % の割引がありますが、ノードの 冗長性(最低 3 台)PDB 設定 が必須です。

6‑3. 主な障害シナリオとチェックリスト

障害シナリオ 確認項目 推奨対処
ブローカー起動失敗 kubectl logs <broker-pod>、PVC バインド状態 (kubectl get pvc) ストレージクラス権限確認、リソースリミット緩和
ネットワーク分離(Pod → Service) Pod から内部 DNS 解決テスト (kubectl exec -it <pod> -- nslookup <service>)、Service Endpoints 確認 NetworkPolicy の見直し、クラウド LB 設定再確認
パーティションリーダー不在 メトリクス kafka_partition_leader_missing が 0 以上か KafkaRebalance 実行、ブローカー数増加で ISR 回復

チェックリスト(障害発生時に実施すべき順序)
1. Pod 状態確認kubectl get pods -n cfk-system
2. ログ取得kubectl logs <対象ポッド>
3. PVC バインド状態kubectl get pvc -A
4. ネットワークテストnslookup / curl で Service 到達性確認
5. メトリクス確認 → Prometheus ダッシュボードで該当指標をチェック


おわりに

本稿では、CFK Operator の 最新インストール手順セキュアな認証設定モニタリングとアラートスケーリング・ゼロダウンタイムアップグレード、そして マルチクラウド連携・コスト最適化 までを一貫した流れで紹介しました。実際にハンズオンしながら各設定を検証すれば、GKE・EKS・AKS のいずれの環境でも堅牢かつスケーラブルな Kafka 基盤が構築できます。

次のステップ:本番導入前に必ず テストクラスターでリハーサル を行い、バックアップ・ロールバック手順をドキュメント化しておくことを推奨します。


この記事は 2024‑12 時点の公式情報を元に執筆しています。以降のバージョン更新や価格改定があった場合は、各ベンダーの最新ドキュメントをご参照ください。

スポンサードリンク

もっとスキルを活かしたいエンジニアへ

スポンサードリンク
働き方から選べる

無料で使えて良質な案件の情報収集ができるサービス

エンジニアの世界では、「いつでも動ける状態を作っておけ」とよく言われます。
技術やポートフォリオがあっても、自分に合う案件情報を日常的に見れていないと、いざ動こうと思った時に比較や判断が難しくなってしまいます。
普段から案件情報が集まる環境を作っておくと、良い案件が出た時にすぐ動きやすくなりますよ。
筆者自身も、メガベンチャー勤務時代に年収1,500万円を超えた経験があります。振り返ると、技術だけでなく「どんな案件や働き方があるか」を日頃から見ていたことが、キャリアの選択肢を広げるきっかけになりました。
このブログを読んでくれた方に感謝を込めて、実際に使っている情報収集サービスを紹介します。

フルリモート・週3日・高単価、どんな条件も妥協したくないなら

フリーランスボードに無料会員登録する

利用者10万人以上。業界最大規模45万件の案件。AIマッチ機能や無料の相場情報が人気。

年収800万円以上のキャリアアップ・ハイクラス正社員を視野に入れているなら

Beyond Careerに無料相談する

内定獲得率90%以上。紹介先企業とは役員クラスのコネクションがある安心と信頼できるエージェント。


-ApacheKafka