Member-only story
ローカルのKubernetesクラスター上でJenkinsを稼働させる方法
Jenkinsは、様々なタスクを管理することができる優れたCICDツールです。この記事では、以下の技術を使ってJenkinsサーバーを構築する方法をご紹介いたします。
- Kubernetes — コンテナオーケストレーションソフトウェア
- Kind — ローカルのk8sクラスターを構築するためのツール
- Kubectl — k8sクラスターと通信するためのCLIツール
- Helm — K8s用のパッケージマネージャ
- Jenkins — CICDツール、ここでは例として使用しています
Kubernetes
Kubernetesは、元々はGoogleによって作られ、現在はCNCFによって管理されています。複数のマシンで動作するコンテナを管理することができる素晴らしいソフトウェアです。
前提条件として知っておくべきKubernetesの概念がいくつかあります。
KubernetesのWebサイトには非常に優れたドキュメントがあり、必要なコンポーネントのすべてを知ることができます。
https://kubernetes.io/docs/concepts/overview/components/
Kind
Kindは、ローカルのKubernetesクラスタを構築するのに役立つ素晴らしいツールです。デフォルトではシングルノードのクラスターを作成しますが、マルチノードのクラスターとしてコンフィギュアすることも可能です。
ここでの例では、1つのコントロールプレーンと2つのワーカーノードで構成されるクラスターを作成していきます。次のようにしてconfig YAMLファイルを作成し、nodesセクションで必要なノードを定義します。
先ほど作成した設定用YAMLファイルを使ってクラスタを作成するには、パラメータとしてファイル名をパスします。以下のコマンドを実行すると、マルチノードのクラスタが作成されます。 kind create cluster — config <config-)