Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

CN2パイプラインをインストールする前に

概要 次の手順は、いくつかの前提条件を取得し、CN2 パイプラインの Helm チャートのファイルを values.yaml 入力するために使用するいくつかの値を取得するのに役立ちます。

Helmのインストール

CN2パイプラインチャートをインストールする前に、管理クラスターに Helm 3 をインストールする必要があります。Helmは、Kubernetesアプリケーションの管理をサポートします。ステアリングチャートは、最も複雑なKubernetesアプリケーションの定義、インストール、アップグレードに役立ちます。

以下のコマンドを実行して、最新バージョンの Helm 3 をダウンロードしてインストールします。

Kubernetesでのサービスアカウントとトークンの作成

ワーキング サービス アカウントが必要です。サービスアカウントとトークンの作成は、APIを使用してCN2パイプラインの内外でKubernetesクラスタにアクセスを提供するために重要です。このトピックでは、サービス アカウント、トークン、ロール、およびロール バインディングを作成する方法について説明します。

メモ:

これらの手順を通して、 cn2pipelines 一例として使用される。

Kubernetes バージョン 1.23 以前の場合

CN2クラスターで次の手順を実行します。

サービス アカウントとトークンを作成するには、次の手順に示します。

  1. 名前空間がまだ存在しない場合は、名前空間を作成します。

  2. という名前のサービス アカウントを作成します cn2pipelines

  3. コマンドを describe 実行してトークンを取得します。

    出力:

    デフォルトでは、Kubernetes バージョン 1.23 以前では、サービス アカウントの作成時にトークンがシークレットとして作成されます。

  4. Kubernetes と bearerToken OpenShift のシークレット値を取得するには、次の手順にしたがっています。

    1. Kubernetesを使用するCN2の場合、ステップ3の出力から を取得します Mountable secrets 。describe secret コマンドを実行して、サービス アカウントの を bearerToken 取得します。は bearerToken 、ファイルを更新 values.yaml するときに必要です。

      出力:

    2. Red Hat OpenShiftを搭載したCN2の場合、画像を使用してシークレット値としてシークレットをプルします。describe secret コマンドを実行して、サービス アカウントの を bearerToken 取得します。は bearerToken 、ファイルを更新 values.yaml するときに必要です。

      出力:

  5. サービス アカウントに適切な権限を付与する ClusterRole および ClusterRoleBinding を作成します。

    1. ClusterRole を作成し、ファイルに名前を付けます clusterrole-cn2pipelines.yaml

    2. 作成したファイルを適用します clusterrole-cn2pipelines.yaml

    3. ClusterRoleBinding ファイルを作成し、ファイルに名前を付けます clusterrolebinding-cn2pipelines.yaml

    4. 作成したファイルを適用します clusterrolebinding-cn2pipelines.yaml

    サービス アカウントは、権限を使用して作成されました。

Kubernetes バージョン 1.24 以降の場合

Kubernetes バージョン 1.24 以降では、サービス アカウントを作成しても、シークレットは自動的に作成されません。

このサービス アカウントのトークンを手動で作成するには、次の手順に示します。

  1. 名前空間がまだ存在しない場合は、名前空間を作成します。

  2. という名前のサービス アカウントを作成します cn2pipelines

  3. サービス アカウントのトークンを作成します cn2pipelines

  4. サービス アカウントに適切な権限を付与する ClusterRole および ClusterRoleBinding を作成します。

    1. ClusterRole を作成し、ファイルに名前を付けます clusterrole-cn2pipelines.yaml

    2. 作成したファイルを適用します clusterrole-cn2pipelines.yaml

    3. ClusterRoleBinding ファイルを作成し、ファイルに名前を付けます clusterrolebinding-cn2pipelines.yaml

    4. 作成したファイルを適用します clusterrolebinding-cn2pipelines.yaml

    サービス アカウントは、権限を使用して作成されました。

  5. コマンドを describe 実行してトークンを取得します。

    出力:

  6. ステップ 5 の出力を取得します Mountable secrets 。コマ ンドを describe secret 実行して、サービス アカウントの を取得 bearerToken します。

    出力:

Kubeconfig の検証

kubeconfig ファイルを base64 として作成する前に、kubeconfig が管理クラスターから機能することを確認します。

  1. CN2から管理クラスターにkuberconfigファイルをコピーします。コピー&ペーストで行うことができます。
  2. CN2クラスター上のノードを表示するには、以下のコマンドを実行します。
  3. CN2クラスター上のすべてのポッドを表示するには、以下のコマンドを実行します。

CN2クラスタKuberconfigをBase64として作成

kubeconfig は、 の base64 フォーマット ファイル values.yamlとして必要です。

  1. 以下のコマンドを実行して、kubeconfig をベース 64 として作成します。
  2. 生成された base64 値で をkubeconfig_secret.yaml更新します。

    ダウンロードしたCN2パイプラインファイルの以下のファイルパスでyamlを見つけることができます。

    チャート/ワークフローオブジェクト/テンプレート/kubeconfig_secret.yaml

    kubeconfig_secret.yaml の例

    メモ:

    名前は cn2-cluster-kubeconfig 変更しないでください。

GitLabのパーソナルアクセストークンを作成する

個人用アクセス トークンを作成するには、GitLab から次の手順を使用します。

  1. [プロファイルの編集] を選択します
  2. 左側のウィンドウで、アクセス トークンを選択します。
  3. トークンの名前と(オプション)有効期限日を入力します。
    デフォルトの有効期限は 30 日間です。
  4. 目的のスコープを選択します。
  5. [個人アクセス トークンの作成] を選択します。
  6. 個人アクセス トークンを安全な場所に保存します。ページを離れた後は、トークンへのアクセスはできなくなります。
    詳細については、 GitLab パーソナル アクセス トークンを参照してください。

マウントパスとプロファイル

マウントパス フォルダーにマウントパスを配置し、マウントパス フォルダーにプロファイルを作成する必要があります。たとえば、マウントパスが で values.yaml定義されている/opt/cn2_workflows場合、 という名前/opt/cn2_workflowsのフォルダを作成します。

Git Server フォルダにサンプルコンフィグマップを作成する

CN2パイプラインをインストールする前にサンプルのConfigMapを作成する必要があります。この構成マップは、CN2パイプラインインストールの一部としてArgo CDによって適用されます。

  1. 次のコマンドを実行して、ファイル名を含む ConfigMap を作成しますcn2configmap

    出力:

  2. ConfigMapファイルを、Gitサーバーブランチで識別されているCN2設定フォルダにコミットします。

OpenShift 導入へのイングレスとアップデート/etc/ホストの適用

「OpenShiftの追加の前提条件のみ」で説明されているように、CN2クラスターでこれらの手順を実行して、イングレスコンポーネントを展開します。

  1. OpenShift クラスターからのエントリーが含まれていること/etc/hostsを確認します。例えば:
  2. 次のコマンドを実行して、適用するファイルを探します。
  3. 以下のYAMLファイルを適用します。
  4. すべてのポッドが立ち上がるのを待ってから、この 2 つの URL を適用します。

    /etc/hosts OpenShift 用が更新されました。