CLI シェルは、コントローラの CLI の PC クライアント バージョンを介して NSX Advanced Load Balancer Controller にアクセスできます。
CLI シェル インストール パッケージには、次の 2 つのバージョンがあります。
- avi_shell-16.1.5000.tar.gz 以降:
-
すべてのインフラストラクチャ タイプで使用できます。このバージョンの CLI シェルをインストールする場合は、ここをクリックします。
- avi_lbaas-16.1.9014.tar.gz 以降:
-
インフラストラクチャ タイプが OpenStack であり、Keystone サポートが有効になっている場合に使用できます(これは初期 NSX Advanced Load Balancer Controller 設定中のオプションであり、後で構成することもできます)。このバージョンの CLI シェルをインストールするには、この記事の後続の部分に進みます。
リモート CLI シェルを有効にするための要件
CLI シェル サーバは TCP ポート 5054 で待機します。リモート CLI シェルを使用するには、CLI クライアントと NSX Advanced Load Balancer Controller との間のファイアウォール ルールでポート 5054 を許可する必要があります。
サポートされる OS バージョン
CLI シェルのバージョンは、Linux および Mac で使用できます。
Linux Ubuntu Docker コンテナ
Linux(Docker コンテナに含まれない)
Mac
各 OS について、手順は同じです。
前提条件
NSX Advanced Load Balancer CLI シェルには次のソフトウェアが必要です。
pip(Python 用パッケージ マネージャのインストール)。
仮想環境 (virtualenv):コマンド構文は次のとおりです。
NSX Advanced Load Balancer CLI シェル インストール ファイル:AWS S3 から。
また、NSX Advanced Load Balancer Controller が OpenStack クラウドに展開され、Keystone サポートが有効になっている場合は、CLI シェルの LBaaS バージョンが適用されます。次のような Keystone カタログ エントリが必要です。
source admincc keystone catalog Service: avi-lbaas +-----------+----------------------------------+ | Property | Value | +-----------+----------------------------------+ | id | db5e92e8740c4850ba3d81c73b6c4f23 | | publicURL | https://10.10.25.201/api | | region | regionOne | +-----------+----------------------------------+ ... ...
Keystone カタログに NSX Advanced Load Balancer のエントリが含まれていない場合は、次のセクションの手順を使用して追加する必要があります。
NSX Advanced Load Balancer の Keystone カタログ エントリの追加
Keystone エントリを追加するには、管理者が必要です。
このセクションでは、管理者が NSX Advanced Load Balancer の Keystone エントリを作成するために使用できるコマンド文字列を提供します。コマンド文字列は、OpenStack クライアントと Keystone クライアントのどちらを使用して入力するかによって、若干異なります。
次の値を展開に適用可能な値に置き換えてください。
- NSX Advanced Load Balancer:コントローラ -IP:
-
NSX Advanced Load Balancer Controller の管理 IP アドレス。
- RegionOne:
-
NSX Advanced Load Balancer Controller が使用を許可するリージョンの名前。リージョンが 1 つしかない場合は、「keystone catalog」と入力し、他のサービスに使用されるリージョン名を選択します。
openstack-client
を使用している場合
open-stack クライアントのバージョンに応じて、ここに示す 1 つまたは他のコマンド セットを使用します。openrc
認証情報に「OS_IDENTITY_API_VERSION=3
」が含まれている場合は、2 番目のコマンド セットを使用します。それ以外の場合は、最初のコマンド セットを使用します。
openrc
認証情報に「OS_IDENTITY_API_VERSION=3
」が含まれていない場合:
openstack service create --name avi --description "Avi LBaaS" avi-lbaas openstack endpoint create --publicurl https://AviControllerIP/api --region RegionOne avi-lbaas
openrc
認証情報に「OS_IDENTITY_API_VERSION=3
」が含まれている場合:
openstack service create --name avi --description "Avi LBaaS" avi-lbaas openstack endpoint create --region RegionOne avi-lbaas public https://AviControllerIP/api
keystone-client を使用している場合
keystone service-create --name avi --type avi-lbaas --description "Avi LBaaS" keystone endpoint-create --service-id $(keystone service-list | awk '/ avi-lbaas / {print $2}') --publicurl https://AviControllerIP/api --region RegionOne
LBaaS CLI シェルのインストール
LBaaS シェル クライアント パッケージ avi_lbaas-16.1.9014.tar.gz をダウンロードします。
CLI シェル用の仮想環境を作成します。
virtualenv .avi_lbaas New python executable in .avi_lbaas/bin/python Installing setuptools, pip, wheel...done.
仮想環境の有効化
source .avi_lbaas/bin/activate
ダウンロード パッケージをインストールします。
pip install ./avi_lbaas-16.1.9014.tar.gz Processing ./avi_lbaas-16.1.9014.tar.gz Collecting Babel==2.1.1 (from shell-client-lbaas==16.1) Using cached Babel-2.1.1-py2.py3-none-any.whl Collecting cmd2==0.6.8 (from shell-client-lbaas==16.1) Collecting debtcollector==1.1.0 (from shell-client-lbaas==16.1) Using cached debtcollector-1.1.0-py2.py3-none-any.whl ... ... Building wheels for collected packages: shell-client-lbaas Running setup.py bdist_wheel for shell-client-lbaas Stored in directory: /Users/user/Library/Caches/pip/wheels/7e/00/01/ce4f12b9b00cc413c6a1a7400a95532bfa7279e99e40b37221 Successfully built shell-client-lbaas Installing collected packages: pytz, Babel, pyparsing, cmd2, pbr, wrapt, six, debtcollector, funcsigs, iso8601, monotonic, msgpack-python, netaddr, netifaces, argparse, stevedore, oslo.config, oslo.i18n, oslo.utils, oslo.serialization, prettytable, requests, python-keystoneclient, requests-toolbelt, urllib3, virtualenv, wheel, commentjson, shell-client-lbaas Found existing installation: wheel 0.24.0 Uninstalling wheel-0.24.0: Successfully uninstalled wheel-0.24.0 Successfully installed Babel-2.1.1 argparse-1.4.0 cmd2-0.6.8 commentjson-0.6 debtcollector-1.1.0 funcsigs-0.4 iso8601-0.1.11 monotonic-0.5 msgpack-python-0.4.6 netaddr-0.7.18 netifaces-0.10.4 oslo.config-3.2.0 oslo.i18n-3.1.0 oslo.serialization-2.2.0 oslo.utils-3.3.0 pbr-1.8.1 prettytable-0.7.2 pyparsing-2.1.0 python-keystoneclient-1.8.1 pytz-2015.7 requests-2.9.1 requests-toolbelt-0.5.1 shell-client-lbaas-16.1 six-1.10.0 stevedore-1.10.0 urllib3-1.14 virtualenv-13.1.2 wheel-0.26.0 wrapt-1.10.6
keystone 認証情報を提供するか、環境変数を明示的に設定します。
これらをソースにするには、次の手順を実行します。
source admincc keystone catalog ... ... Service: avi-lbaas +-----------+----------------------------------+ | Property | Value | +-----------+----------------------------------+ | id | db5e92e8740c4850ba3d81c73b6c4f23 | | publicURL | https://10.10.25.201/api | | region | regionOne | +-----------+----------------------------------+ ... ...
または、代わりに環境変数を明示的に設定するには、次の手順を実行します。
export OS_USERNAME=admin export OS_AUTH_URL=http://10.10.16.82:5000/v2.0 export OS_PASSWORD=avi123 export OS_TENANT_NAME=admin
NSX Advanced Load Balancer Controller への CLI アクセスのための avi_lbaas の呼び出しは次のとおりです。
avi_lbaas
NSX Advanced Load Balancer CLI シェル プロンプトが表示されます。
: > show version controller +-----------------+------------------------------------+ | Controller Name | Version | +-----------------+------------------------------------+ | node-1 | 16.2(5000) 2016-03-07 16:45:38 UTC | | node-2 | 16.2(5000) 2016-03-07 16:45:38 UTC | | node-3 | 16.2(5000) 2016-03-07 16:45:38 UTC | +-----------------+------------------------------------+
CLI プロンプトで exit と入力して終了します。
: > exit
LBaaS CLI 仮想環境からの離脱
LBaaS 仮想環境を終了するには、次を無効にします。
deactivate
LBaaS CLI シェルの起動
LBaaS CLI シェルがインストールされたら、次のコマンドを入力して次回起動します。
.avi_lbaas/bin/avi_lbaas : > show version controller +-----------------+------------------------------------+ | Controller Name | Version | +-----------------+------------------------------------+ | node-1 | 16.2(5000) 2016-03-07 16:45:38 UTC | | node-2 | 16.2(5000) 2016-03-07 16:45:38 UTC | | node-3 | 16.2(5000) 2016-03-07 16:45:38 UTC | +-----------------+------------------------------------+