Member-only story
Kubernetesクラスターイベントを理解する(前半)
今回はKubernetesクラスターに関する記事です。長い記事なので前半と後半の2つに分けて投稿します。APIサーバーについて詳しく見ていきます。
Kubernetesは、多数の疎結合コンポーネントから構築された高度に拡張可能なフレームワークです。 これにより、非常にフレキシビリティが高くなりますが、過去の同じようなシステムのモノリシックソリューションと比較して、オペレーション上で新しい課題がいくつかできました。その課題の1つに、ログ収集とう可観測性が挙げられます。
この記事では、Kubernetesコンポーネントのログを収集する方法について詳しく説明したいと思います。しかしながら、アプリケーション(ワークロード)ログの収集については言及していません。デプロイメントのログを収集する場合は、Banzai Cloud Loggingオペレーターをチェックしてみてください。
Banzai Cloud Loggingオペレーターは、オープンソースプロジェクトです。信頼性があり、簡単にログ収集のコンフィギュアや、集約をデプロイし、オペレートでき、インフラストラクチャーをKubernetesクラスターにフォワードするものです。
Kubernetesには、停止または別のインシデントにつながる一連のイベントを把握するために必要な、イベントを記録するための様々なソリューションを備えた複数のコンポーネントが存在します。
この記事は、本番環境でKubernetesをオペレーションした経験に基づいて書いています。この記事では次のようなことについて主にお話したいと思います。
- ログの最も重要なソース、
- さまざまな目的の有用性に基づいてそのソースを分類する方法
- さまざまなシナリオでそのソースを収集して相関させる方法。
異なるソースからのログは、色々なターゲットグループにとって大切なものです。それらのグループを次のように考えています。
- セキュリティオペレーション
- 開発またはアプリケーションのオペレーション
- インフラストラクチャーのオペレーション
もちろん、これらのグループは常にチームまたは組織単位と直接一致するわけではありませんが、これらの役割に関連するタスクはほとんどの組織のどこかに存在します。
Kubernetesクラスターで最も広く使用されているコンポーネントとそのイベントを見てみましょう。