外部リポジトリからのStyleBookのインポートと同期
開発にCI/CDプロセスを使用しているシナリオを検討します。あるいは、すべてのアプリケーションソースコードとデプロイメントアーティファクトをGitHub/GitLabで管理しているシナリオを検討します。
GitHub/GitLabリポジトリでは、NetScaler構成をデプロイし、これらのStyleBookを管理するために、複数のStyleBookを保守している場合があります。これらのStyleBookはNetScaler Consoleにアップロードする必要があります。この機能を使用すると、GitHub/GitLabにあるStyleBookをNetScaler Consoleに直接インポートできます。GitHub/GitLabから手動でコピーしてNetScaler Consoleにアップロードする必要はありません。あるいは、NetScaler ConsoleとGitHub/GitLabの両方でファイルを手動で同期する必要もありません。また、GitHub/GitLabからconfig packをインポートおよび同期することもできます。
StyleBookとconfig packをインポートするには、GitHub/GitLabリポジトリを表すリポジトリをNetScaler Consoleで定義します。GitHub/GitLabリポジトリのURL、ユーザー名、およびGitHub/GitLabで作成したAPIまたは個人アクセストークン(PAトークン)を指定します。つまり、GitHub/GitLabで有効なアカウントを持つ認証済みユーザーのみがStyleBookをインポートおよび同期できます。
次のリポジトリタイプをインポートおよび同期できます。
- パブリックアクセス可能なリポジトリ - 一般公開されており、インターネット経由でアクセスできるリポジトリです。
- オンプレミスまたはプライベートなGitLab/GitHubリポジトリ - プライベートにホストされており、通常は企業のイントラネット内でのみアクセスできるリポジトリです。これらのリポジトリの場合、登録プロセス中にNetScalerエージェントを選択する必要があります。NetScalerエージェントは、企業のイントラネット内のリポジトリにアクセスするためのプロキシとして機能します。
リポジトリを作成した後、NetScaler ConsoleをGitHub/GitLabリポジトリと同期できます。NetScaler ConsoleはGitHub/GitLabに接続し、そのリポジトリにあるStyleBookとconfig packをインポートします。NetScaler ConsoleはStyleBookを検証し、NetScaler ConsoleのStyleBookリストに追加します。検証に失敗したStyleBookはNetScaler Consoleに追加されません。StyleBookのエラーを特定して修正できます。その後、更新されたバージョンをGitHub/GitLabリポジトリにコミットします。後で、それらをNetScaler Consoleに再度インポートまたは同期を試すことができます。
リポジトリの作成中に次のエラーが発生した場合、NetScaler Consoleが、不足しているまたは認識されない認証局(CA)証明書のために、リポジトリのSSL証明書を検証できないことを示しています。
certificate verify failed: unable to get local issuer certificate
<!--NeedCopy-->
この問題を解決するには、リポジトリへのアクセスに使用されるNetScaler Consoleエージェントに、必要なCA証明書を手動で追加できます。必要なCA証明書を追加することで、外部リポジトリへのセキュアな接続が適切に検証されるようになります。
リポジトリへのアクセスに使用されるNetScaler Consoleエージェントにログインし、CA証明書を信頼された証明書バンドル/var/mps/ca_certs/cacert.pem
に追加します。
重要
StyleBookファイルは、GitHub/GitLabリポジトリの任意のブランチからインポートおよび同期できます。
依存するStyleBookが関連付けられているStyleBookもインポートおよび同期できます。これらの依存StyleBookは、GitHub/GitLabリポジトリ内にあるか、すでにNetScaler Consoleに存在している場合があります。
GitHub/GitLabリポジトリからのStyleBookの同期は、NetScaler Console GUIまたはAPIから手動で開始する必要があります。つまり、現在、StyleBookのインポートと同期は、GitHub/GitLabのコミットアクティビティに基づいて自動的に行われるわけではありません。
インポートする構成パックファイルはJSON形式である必要があります。また、構成ファイルの内容はエクスポートされた構成形式に従う必要があります。GitHub/GitLabリポジトリでは、構成パックに関連付けられたファイルは
configpacks
フォルダーにある必要があります。
GitHub/GitLabリポジトリの任意のフォルダーからNetScaler ConsoleにStyleBookファイルをインポートできます。config packをインポートするには、次の手順を実行します。
-
ルートディレクトリの下に
configpacks
という名前のフォルダーを作成します。構成に関連するすべてのファイルがこのフォルダーにあることを確認してください。 -
configpacks
フォルダーに、構成パックのペイロードを含むJSONファイルを作成します。このペイロードは、config packを同期するために使用されます。以下はペイロードの例です。{ "config_key": "unique-key-for-configpack", "parameters": { "param-name1": "param-value1", "param-name": "param-value2", "param-namen": "param-valuen" }, "stylebook": { "namespace": "some namespace", "name": "somename", "version": "spme-version" } } <!--NeedCopy-->
-
config_key
- NetScaler Consoleで構成パックを識別するための一意のIDまたは名前。config_key
を指定しない場合、NetScaler Consoleは構成パックの作成時にIDを自動生成します。指定されたIDがNetScaler Console GUIで見つかった場合、同期アクションはNetScaler Console GUIの構成パックを更新します。それ以外の場合は、指定されたIDで構成パックを作成します。
-
parameters
- 構成パックを作成または更新するために必要なすべてのパラメーターが含まれます。 -
stylebook
- JSONファイル内の必須プロパティです。構成パックを関連付けたい名前空間、バージョン、およびStyleBook名が含まれます。
-
-
configpacks
フォルダーには、証明書、署名ファイル、XMLファイルなど、構成パックに関連付けられているすべてのファイルを保持します。
リポジトリの追加
-
NetScaler Consoleで、Applications > Configuration > Repositoriesに移動します。Addをクリックします。
-
Add Repositoryウィンドウで、次のパラメーターを入力します。
-
名前 - リポジトリの名前を入力します。この名前は、GitHub/GitLabのリポジトリ名と同じでも、異なるものでも構いません。
-
リポジトリURL - GitHub/GitLabリポジトリのURLを入力します。
GitHub/GitLabエンタープライズURLを指定できます。これにより、GitHub/GitLabエンタープライズアカウントからStyleBookとconfig packをインポートまたは同期できます。
-
プライベートURLですか? - リポジトリがオンプレミスまたはプライベートなGitLab/GitHubリポジトリである場合は、このチェックボックスを選択し、Agentを選択します。
-
ユーザー名 - GitHub/GitLabアカウントまたはエンタープライズアカウントにアクセスするために使用するユーザー名を入力します。
-
API/PAトークン - このトークンは、GitHub/GitLabリポジトリにアクセスするために使用されます。GitHub/GitLabリポジトリのAPI/PAトークンの作成方法については、GitHub/GitLabのドキュメント「個人アクセストークンの作成」を参照してください。
-
-
Createをクリックします。
リポジトリがNetScaler Consoleに作成されます。
リポジトリオプション
リポジトリの追加オプションは次のとおりです。
-
編集 - リポジトリURL、ユーザー名、およびAPIトークンを編集できます。
-
削除 - リポジトリを、そのGitHub/GitLabリポジトリから以前にインポートされたNetScaler Consoleに存在するすべてのStyleBookとともに削除できます。
注
構成パックが関連付けられているStyleBookがある場合、NetScaler Consoleからリポジトリを削除することはできません。まず、これらのStyleBookのすべての構成パックを削除します。その後、NetScaler Consoleからリポジトリを削除して、そのリポジトリからStyleBookをクリーンアップできます。
-
リセット - リポジトリエントリを実際に削除することなく、そのリポジトリから同期されたNetScaler Console内のすべてのStyleBookを削除できます。
-
ファイルのリスト - GitHub/GitLabリポジトリから取得されたNetScaler Consoleに存在するすべてのStyleBookのリストを表示できます。
GitHub/GitLabからStyleBookとconfig packをインポートする手順
前提条件を完了した後、GitHub/GitLabリポジトリからStyleBookとconfig packをインポートする手順に従います。
- オプション:まだ追加していない場合は、リポジトリを追加します。
- Repositoriesページでリポジトリを選択します。
- Syncをクリックします。