lenovo.lxca-config

Ansible ロール: Lenovo LXCA 設定

これは、Lenovo xClarity Administrator で管理された要素に対する様々な設定操作(管理、ファームウェアの更新、ポリシーの設定、OS のデプロイなど)を行うための Ansible ロールです。

要件

必須変数

以下は利用可能な変数とその説明です:

変数名 説明
lxca_user LXCA に接続するユーザー名
lxca_password ユーザーのパスワード
lxca_url LXCA に接続するための URL

ロール変数

以下は利用可能な変数とその説明です:

変数名 説明
uuid 管理対象要素の UUID
id リソースの ID
endpoint_ip エンドポイントの IP アドレス
user ユーザー名
password パスワード
recovery_password リソースの復旧用パスワード
storedcredential_id ストアされた認証情報の ID
jobid バックグラウンドジョブのジョブ ID
mode 設定アクションの操作モード
lxca_action 設定の操作
server コンピュートノードの詳細
switch スイッチの詳細
storage ストレージの詳細
cmm CMM の詳細
force 設定アクションの強制フラグ
policy_info ポリシーの詳細
policy_name ポリシーの名前
policy_type ポリシーの種類
repo_key リポジトリーキー
machine_type マシンタイプ
scope 操作のスコープ
fixids ファームウェアイメージ ID
file_type 設定アクションのファイルの種類
endpoint 設定アクション用のターゲット管理エンドポイント
restart 設定アクション
config_pattern_name 設定パターンの名前
config_profile_name 設定プロファイルの名前
powerdown 電源操作
resetimm IMM リセットアクション
pattern_update_dict カテゴリパターン情報の辞書
pattern_from_file パターンデータのファイルパス
includeSettings 設定データを読み込むためのフラグ
osimages_info OS イメージに関する情報
osimages_dict OS イメージに関する情報の辞書
files ファイルの場所
update_key ファームウェアの更新キー
status 管理対象要素のステータス
uuid_list UUID のリスト
subcmd 設定コマンドのサブコマンド

サポートされるタグ

以下はサポートされているタグとその説明です:

タグ 説明
get_configpatterns すべてのサーバーパターンを返す
get_particular_configpattern 名前または ID で設定パターンを取得
import_configpatterns LXCA に設定パターンをインポート
apply_configpatterns デバイスに設定パターンを適用
get_configstatus UUID によるデバイスの設定状態を取得
configprofiles 設定プロファイルの操作
configtargets 設定ターゲットの詳細を取得
manage 発見されたデバイスに対して管理操作を実行
manage_status 管理操作の完了状況を確認
unmanage 管理解除操作を実行
unmanage_status 管理解除操作の完了状況を確認
osimages OS イメージおよび OS デプロイ操作を実行
updaterepo リポジトリの更新操作
update_firmware 指定したデバイスのファームウェアを更新
update_firmware_all ポリシーに基づき UUID のリストでデバイスのファームウェアを更新
update_firmware_query_status ファームウェア更新のステータスを確認
update_firmware_query_comp 更新可能なコンポーネントのリスト
get_managementserver_pkg パッケージの詳細を取得
update_managementserver_pkg 管理サーバーパッケージを更新
import_managementserver_pkg ローカルシステムから管理サーバーをインポート
updatepolicy コンプライアンスポリシーの更新操作
get_storedcredentials ストアされた認証情報を取得
create_storedcredentials 新しいストアされた認証情報を作成
update_storedcredentials 既存のストアされた認証情報を更新
delete_storedcredentials ストアされた認証情報を削除

依存関係

Lenovo xClarity Administrator との接続。

例:プレイブック

Ansible プレイブックを実行するには、上記のタグのいずれかを選択し、タグで使用される変数を指定する必要があります。以下のコマンドを使用します:

manage

manage では以下の追加変数を使用します: user、password または storedcredential_id

ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd
lxca_url=https://10.240.29.217 endpoint_ip=10.240.72.172 user=USERID
password=CME44ibm recovery_password=CME55ibm force=True" test.yml -vvvv --tag manage

ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd
lxca_url=https://10.240.29.217 endpoint_ip=10.240.72.172 storedcredential_id=21 force=True" test.yml -vvvv --tag manage

unmanage

unmanage では以下の追加変数を使用します: endpoint_ip(IP アドレス、UUID、デバイスタイプ) デバイスタイプは以下の値を持つことができます:

  • Chassis
  • ThinkServer
  • Storage
  • Rackswitch
  • Rack-Tower
ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd
lxca_url=https://10.240.29.217
endpoint_ip=10.240.72.172;46920C143355486F97C19A34ABC7D746;Chassis force=True"
test.yml -v --tag unmanage
ポリシーの更新およびファームウェアの更新

以下の追加変数がこれらのタグで使用されます。

policy_info:

  • 説明:
    • updatepolicy コマンドで使用され、以下の値が可能です:
    • "FIRMWARE - 適用可能なファームウェアポリシーのリストを取得"
    • "RESULTS - ポリシーが割り当てられたサーバーの永久的な比較結果のリスト"
    • "COMPARE_RESULTS - 割り当てられたコンプライアンスポリシーに対する適合性をチェック"
    • "NAMELIST - 利用可能なコンプライアンスポリシーを返す"

policy_name:

  • 説明:
    • updatepolicy コマンドで使用される、適用すべきポリシーの名前

policy_type:

  • 説明:
    • updatepolicy コマンドで使用され、適用されるポリシーの値として以下のものが使用されます:
    • CMM - チャシスマネジメントモジュール
    • IOSwitch - フレックススイッチ
    • RACKSWITCH - ラックスイッチ
    • STORAGE - Lenovo ストレージシステム
    • SERVER - コンピュートノードまたはラックサーバー

uuid_list:

  • 説明:
    • update_all_firmware_withpolicy コマンドで使用され、リスト内の UUID にファームウェアを適用します。
    • uuid_list が空の場合、ポリシーに基づくすべての更新可能なコンポーネントのファームウェアが更新されます。
    • "例 ['38D9D7DBCB713C12A210E60C74A0E931','00000000000010008000542AA2D3CB00']"

mode:

  • 説明:
    • update_firmware、update_all_firmware_withpolicy コマンドで使用され、更新を適用するタイミングを示します。以下の値のいずれかを指定できます。
    • "immediate - 選択したエンドポイントにファームウェア更新を即時に適用"
    • "delayed - 選択したエンドポイントにファームウェア更新を遅延適用"
すべてのポリシーをリスト表示
----------------
ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd lxca_url=https://10.240.29.217 subcmd=list" playbooks/config/config.yml -vvvv --tag updatepolicy

適用可能なファームウェアポリシーのリストを取得
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=query policy_info=FIRMWARE" playbooks/config/config.yml -vvvv --tag updatepolicy

ポリシーが割り当てられたサーバーの永久的な比較結果のリストを取得
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=query update_policy_info=RESULTS" playbooks/config/config.yml -vvvv --tag updatepolicy

コンプライアンスポリシーに対する適合性をチェック
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=status uuid=EF362CF0FB4511E397AB40F2E9AF01D0 jobid=2" playbooks/config/config.yml -vvvv --tag updatepolicy

エンドポイントにポリシーを割り当て
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=assign policy_name=x220_imm2 policy_type=SERVER uuid=7C5E041E3CCA11E18B715CF3FC112D8A" playbooks/config/config.yml -vvvv --tag updatepolicy

ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=status jobid=16" playbooks/config/config.yml -vvvv --tag updatepolicy

エンドポイントファームウェアの更新
================

更新可能なコンポーネントをクエリ
----------------
ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd lxca_url=https://10.240.29.217" playbooks/config/config.yml -v --tag query_update_comp

ファームウェア更新のステータスを照会
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220" playbooks/config/config.yml -vvvv --tag query_update_status

ポリシーに基づいてファームウェアを適用
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 mode=immediate lxca_action=apply server='7C5E041E3CCA11E18B715CF3FC112D8A,IMM2 (Primary)'" playbooks/config/config.yml -vvvv --tag update_firmware

指定された更新可能なコンポーネントのポリシーに基づいてファームウェアを適用
----------------
ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd lxca_url=https://10.240.29.217 mode=immediate lxca_action=apply uuid_list=['38D9D7DBCB713C12A210E60C74A0E931','00000000000010008000542AA2D3CB00']" playbooks/config/config.yml -vvvv --tag update_all_firmware_withpolicy

すべての更新可能なコンポーネントのポリシーに基づいてファームウェアを適用
----------------
ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd lxca_url=https://10.240.29.217 mode=immediate lxca_action=apply uuid_list=[]" playbooks/config/config.yml -vvvv --tag update_all_firmware_withpolicy

ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd lxca_url=https://10.240.29.217 mode=immediate lxca_action=apply" playbooks/config/config.yml -vvvv --tag update_all_firmware_withpolicy
設定パターン、設定プロファイル、設定ターゲットの操作

以下はこのタグで使用される追加の変数です:

endpoint:

  • 説明:
    • configprofiles、apply_configpatterns、および get_configstatus コマンドで使用され、ノード、ラック、タワーのデバイスの UUID です。
    • フレックスの場合は endpointdid です。

restart:

  • 説明:
    • configprofiles および apply_configpatterns コマンドで使用され、設定を有効化するタイミングを示します。以下のいずれかの値を指定できます:
    • defer - IMM 設定を有効化するが、サーバーを再起動しない。
    • immediate - すべての設定を有効化し、すぐにサーバーを再起動する。
    • pending - サーバープロファイルを手動で有効化し、サーバーを再起動する。これは apply_configpatterns でのみ使用可能です。
    • 選択肢:
      • defer
      • immediate
      • pending

type:

  • 説明:
    • apply_configpatterns で使用され、選択可能な値:
    • 選択肢:
      • node
      • rack
      • tower
      • flex

powerdown:

  • 説明:
    • configprofiles コマンドでサーバーの電源を切るために使用されます。

resetimm:

  • 説明:
    • configprofiles コマンドで IMM をリセットするために使用されます。

pattern_update_dict:

  • 説明:
    • import_configpatterns コマンドで、この変数に指定されたパターンを辞書としてインポートするために使用されます。

includeSettings:

  • 説明:
    • get_configpatterns コマンドで設定パターンの詳細を取得するために使用され、これを 'True' に設定します。
すべての設定パターンを取得
----------------
ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd lxca_url=https://10.240.29.217" playbooks/config/config.yml -vvvv --tag get_configpatterns

指定された ID の設定パターンを取得
----------------
ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd lxca_url=https://10.240.29.217 id=52" playbooks/config/config.yml -vvvv --tag get_particular_configpattern

指定された ID の設定パターンを includeSettings と共に取得
----------------
ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd lxca_url=https://10.240.29.217 id=52 includeSettings=True" playbooks/config/config.yml -vvvv --tag get_particular_configpattern

エンドポイントにパターンを適用
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 id=65 endpoint=B918EDCA1B5F11E2803EBECB82710ADE restart=pending type=node" playbooks/config/config.yml -vvvv --tag apply_configpatterns
名前を使用
----------
ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd lxca_url=https://10.240.29.217 config_pattern_name=From_abcdef endpoint=B918EDCA1B5F11E2803EBECB82710ADE restart=pending type=node" playbooks/config/config.yml -vvvv --tag apply_configpatterns

SystemInfo パターンをインポート
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 pattern_update_dict={'template_type':'SystemInfo','template':{'contact':'contact','description':'Pattern created by test API ','location':'location','name':'Learned-System_Info-99','systemName':{'autogen':'Disable','hyphenChecked':False},'type':'SystemInfo','uri':'\/config\/template\/61','userDefined':True}}" playbooks/config/config.yml -vvvv --tag import_configpatterns

ファイルからパターンをインポート
------------------------
config_pattern_import.yml ファイルにある設定パターンデータを読み込みます。

ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 pattern_file=config_pattern_import.yml pattern_from_file=true" playbooks/config/config.yml -vvvv --tag import_configpatterns

設定状況を取得

設定状況を取得

ansible-playbook -e "lxca_user=USERID lxca_password=CME44ibm lxca_url=https://10.240.29.217 endpoint=B918EDCA1B5F11E2803EBECB82710ADE" playbooks/config/config.yml -vvvv --tag get_configstatus
設定プロファイル操作
すべてのプロファイルを取得
----------------
ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd lxca_url=https://10.240.29.217 subcmd=list" playbooks/config/config.yml -v --tag configprofiles

指定された ID のプロファイルを取得
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220  subcmd=list id=69 " playbooks/config/config.yml -vvvv --tag configprofiles

ID のプロファイル名を変更
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=rename id=69 config_profile_name='changed name 3' " playbooks/config/config.yml -vvvv --tag configprofiles

エンドポイントのプロファイルを有効化
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=activate id=69 endpoint=B918EDCA1B5F11E2803EBECB82710ADE restart=immediate " playbooks/config/config.yml -vvvv --tag configprofiles

プロファイルの割り当てを解除
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=unassign id=69" playbooks/config/config.yml -vvvv --tag configprofiles

プロファイルを削除
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 id=69 subcmd=delete" playbooks/config/config.yml -vvvv --tag configprofiles
リポジトリ更新コマンド

以下の追加変数がこのタグで使用されます。

machine_type:

  • 説明:
    • updaterepo コマンドで使用され、値は '7903' のような文字列です。

fixids:

  • 説明:
    • updaterepo、get_particular_managementserver_pkg、および update_managementserver_pkg コマンドで使用され、値は 'lnvgy_sw_lxca-fw-repository-pack_1-1.0.1_anyos_noarch' のような文字列です。

scope:

  • 説明:
    • updaterepo コマンドで使用され、可能な値は:
    • all - lxca_action=refresh が指定された場合、すべてのサポートデバイスのファームウェア更新のすべてのバージョンに関する情報を返します。
    • latest - lxca_action=refresh が指定された場合、すべてのサポートデバイスのファームウェア更新の最新バージョンに関する情報を返します。
    • payloads - lxca_action=acquire が指定された場合、特定のファームウェア更新に関する情報を返します。

file_type:

  • 説明:
    • updaterepo コマンドで使用され、lxca_action=delete または lxca_action=export が指定された場合に使用されます。以下のいずれかの値を指定できます。
    • all - 選択されたアップデートパッケージファイル(ペイロード、変更履歴、README、およびメタデータファイル)を削除します。
    • payloads - 選択されたペイロードイメージファイルのみを削除します。
クエリ
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=query repo_key=importDir" playbooks/config/config.yml -vvvv --tag updaterepo
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=query repo_key=lastRefreshed" playbooks/config/config.yml -vvvv --tag updaterepo
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=query repo_key=publicKeys" playbooks/config/config.yml -vvvv --tag updaterepo
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=query repo_key=size" playbooks/config/config.yml -vvvv --tag updaterepo
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=query repo_key=supportedMts" playbooks/config/config.yml -vvvv --tag updaterepo
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=query repo_key=updates" playbooks/config/config.yml -vvvv --tag updaterepo
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=query repo_key=updatesByMt" playbooks/config/config.yml -vvvv --tag updaterepo
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=query repo_key=updatesByMtByComp" playbooks/config/config.yml -vvvv --tag updaterepo

アクション
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=read lxca_action=read" playbooks/config/config.yml -vvvv --tag updaterepo
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=refresh lxca_action=refresh machine_type=7903" playbooks/config/config.yml -vvvv --tag updaterepo
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=delete lxca_action=delete machine_type=7903 file_type=payloads fixids=ibm_fw_imm2_1aoo78j-6.20_anyos_noarch" playbooks/config/config.yml -vvvv --tag updaterepo
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=acquire lxca_action=acquire machine_type=7903 scope=payloads fixids=ibm_fw_imm2_1aoo78j-6.20_anyos_noarch" playbooks/config/config.yml -vvvv --tag updaterepo
管理サーバー操作

以下の追加変数がこのタグで使用されます。

fixids:

  • 説明:
    • updaterepo、get_particular_managementserver_pkg、および update_managementserver_pkg コマンドで使用され、値は 'lnvgy_sw_lxca-fw-repository-pack_1-1.0.1_anyos_noarch' のような文字列です。

update_key:

  • 説明:
    • 管理サーバーコマンドで使用されるオプションは、以下の値のいずれかを指定します。
    • all - すべての情報を返します。これはデフォルト値です。
    • currentVersion - Lenovo xClarity Administrator の現在のバージョンを返します。
    • history - 管理サーバーの更新履歴を返します。
    • importDir - 管理サーバーの更新リポジトリのディレクトリを返します。
    • size - リポジトリのサイズをバイト単位で返します。
    • updates - すべての更新パッケージに関する情報を返します。
    • updatedDate - 最後の更新が行われた日付を返します。

files:

  • 説明:
    • 管理サーバーコマンドでファイルを LXCA にインポートするために使用され、ファイルはカンマ区切りの文字列として指定できます。
    • 例:
    • '/home/naval/updates/updates/lnvgy_sw_lxca_thinksystemrepo1-1.3.2_anyos_noarch.txt, /home/naval/updates/updates/lnvgy_sw_lxca_thinksystemrepo1-1.3.2_anyos_noarch.chg, /home/naval/updates/updates/lnvgy_sw_lxca_thinksystemrepo1-1.3.2_anyos_noarch.xml'
異なるキーオプションで管理サーバーを取得
-----------------------------------------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'subcmd':'query', 'update_key':'importDir'}" playbooks/config/config.yml -vvvv --tag get_managementserver_pkg

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'subcmd':'query', 'update_key':'size'}" playbooks/config/config.yml -vvvv --tag get_managementserver_pkg

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'subcmd':'query', 'update_key':'updates'}" playbooks/config/config.yml -vvvv --tag get_managementserver_pkg

fixids に関する特定の詳細を取得
----------------------------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'subcmd':'query_fixids', 'update_key':'filetypes', 'fixids':'lnvgy_sw_lxca-fw-repository-pack_1-1.0.1_anyos_noarch'}" playbooks/config/config.yml -vvvv --tag get_particular_managementserver_pkg

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217',  'subcmd':'query_fixids', 'fixids':'lnvgy_sw_lxca-fw-repository-pack_1-1.0.1_anyos_noarch','type':'readme'}" playbooks/config/config.yml -vvvv --tag get_particular_managementserver_pkg

管理サーバーの更新オプション
----------------------------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'subcmd':'refresh'}" playbooks/config/config.yml -vvvv --tag update_managementserver_pkg

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'fixids':'lnvgy_sw_lxca-fw-repository-pack_1-1.0.1_anyos_noarch','subcmd':'acquire'}" playbooks/config/config.yml -vvvv --tag update_managementserver_pkg

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'fixids':'lnvgy_sw_lxca-fw-repository-pack_1-1.0.1_anyos_noarch','subcmd':'apply'}" playbooks/config/config.yml -vvvv --tag update_managementserver_pkg

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'fixids':'lnvgy_sw_lxca-fw-repository-pack_1-1.0.1_anyos_noarch','subcmd':'delete'}" playbooks/config/config.yml -vvvv --tag update_managementserver_pkg

ローカルファイルを管理サーバーにインポート
--------------------------------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'import', 'files':'/home/naval/updates/updates/lnvgy_sw_lxca_thinksystemrepo1-1.3.2_anyos_noarch.txt,/home/naval/updates/updates/lnvgy_sw_lxca_thinksystemrepo1-1.3.2_anyos_noarch.chg,/home/naval/updates/updates/lnvgy_sw_lxca_thinksystemrepo1-1.3.2_anyos_noarch.xml'}" playbooks/config/config.yml -vvvv --tag import_managementserver_pkg

プレイブックファイルに対して相対的に指定されたファイル
----------------------------------------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'import', 'files':'../../files/updates/lnvgy_sw_lxca_thinksystemrepo1-1.3.2_anyos_noarch.xml'}" playbooks/config/config.yml -vvvv --tag import_managementserver_pkg
OS イメージ操作

以下の追加変数がこのタグで使用されます。

subcmd:

  • 説明:
    • osimage と共に使用され、以下の値を持つことができます:
    • list - すべてまたは指定された OS イメージの詳細を表示
    • delete - 指定された OS イメージの詳細を削除
    • globalsettings - OS デプロイで使用されるグローバルな値を設定
    • hostsettings - OS デプロイで使用される特定のホストの値を設定
    • hostPlatforms - OS イメージのデプロイに使用される
    • remoteFileServers - リモート FTP、HTTP サーバー操作に使用される

imagetype:

  • 説明:
    • osimage インポートのファイルの種類。
    • 選択肢:
      • BUNDLE
      • BOOT
      • DUD
      • OS
      • OSPROFILE
      • SCRIPT
      • CUSTOM_CONFIG
      • UNATTENDED

osimages_dict:

  • 説明:
    • osimage と共に使用され、OS イメージおよび OS デプロイパラメーターを設定します。
すべての OS イメージを取得
-----------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'subcmd':'list'}" playbooks/config/config.yml -v --tag osimages

ID で OS イメージを削除
-----------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.197.119','subcmd':'delete','id':'20190227190109_trail.py'}" playbooks/config/config.yml -vvvv --tag osimages

OS イメージのグローバル設定を取得
-----------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'globalsettings'}" playbooks/config/config.yml -vvvv --tag osimages

OS イメージのグローバル設定を設定
-----------------
グローバル設定から詳細を取得し、変更したいパラメーターを変更します。この例では LINUX のデフォルトパスワードを設定しています。

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'CME44ibm', 'lxca_url':'https://10.243.9.238', 'subcmd':'globalsettings', 'osimages_dict':{'activeDirectory':{'allDomains': [],'defaultDomain':None}, 'credentials':[{'name': 'root', 'password':'Test1234', 'passwordChanged':True, 'type': 'LINUX'}, {'type': "WINDOWS", 'name': 'Administrator', password: None, 'passwordChanged': False}],'ipAssignment':'dhcpv4', 'isVLANMode': 'false', 'licenseKeys': {'win2012r1': {'dataCenterLicenseKey': '','standardLicenseKey': '',},'win2012r2':{'dataCenterLicenseKey': '', 'standardLicenseKey': ''}, 'win2016r1': {'dataCenterLicenseKey': '', 'standardLicenseKey': ''}, 'win2019r1': {'dataCenterLicenseKey': '','standardLicenseKey': ''}}}}" playbooks/config/config.yml -vvvv --tag osimages


特定のホストの設定を取得
-----------------

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'hostsettings'}" playbooks/config/config.yml -vvvv --tag osimages

ホストの設定を作成

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'hostsettings', 'osimages_dict':{\"action\": \"create\", \"hosts\": [{\"storageSettings\": {\"targetDevice\": \"localdisk\"}, \"uuid\": \"A1445C6FDBAA11E6A87F86E06E3AFFFF\", \"networkSettings\": {\"dns2\": \"\", \"dns1\": \"10.240.0.10\", \"hostname\": \"nodeundefined\", \"vlanId\": 0, \"selectedMAC\": \"AUTO\", \"gateway\": \"10.243.0.1\", \"subnetMask\": \"255.255.240.0\", \"mtu\": 1500, \"prefixLength\": 64, \"ipAddress\": \"10.243.9.79\"}}, {\"storageSettings\": {\"targetDevice\": \"localdisk\"}, \"uuid\": \"A122FB03FF4011E68D9BA32E3A66DDDD\", \"networkSettings\": {\"dns2\": \"\", \"dns1\": \"10.240.0.10\", \"hostname\": \"proton1\", \"vlanId\": 0, \"selectedMAC\": \"AUTO\", \"gateway\": \"10.243.0.1\", \"subnetMask\": \"255.255.240.0\", \"mtu\": 1500, \"prefixLength\": 64, \"ipAddress\": \"10.243.9.87\"}}]}}" playbooks/config/config.yml -vvvv --tag osimages

ホスト設定を更新

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.197.119','subcmd':'hostsettings', 'osimages_dict':{'action': 'update', 'hosts': [{'storageSettings': {'targetDevice': 'localdisk'}, 'uuid': 'A1445C6FDBAA11E6A87F86E06E3AFFFF', 'networkSettings': {'dns2': '', 'dns1': '10.240.0.10', 'hostname': 'nodeundefined', 'vlanId': 0, 'selectedMAC': 'AUTO', 'gateway': '10.243.0.1', 'subnetMask': '255.255.240.0', 'mt': 1500, 'prefixLength': 64, 'ipAddress': '10.243.9.79'}}, {'storageSettings': {'targetDevice': 'localdisk'}, 'uuid': 'A122FB03FF4011E68D9BA32E3A66DDDD', 'networkSettings': {'dns2': '', 'dns1': '10.240.0.10', 'hostname': 'proton1', 'vlanId': 0, 'selectedMAC': 'AUTO', 'gateway': '10.243.0.1', 'subnetMask': '255.255.240.0', 'mt': 1500, 'prefixLength': 64, 'ipAddress': '10.243.9.87'}}]}}" playbooks/config/config.yml -vvvv --tag osimages

ホスト設定を削除

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'hostsettings', 'osimages_dict':{'action': 'delete', 'uuid': 'A1445C6FDBAA11E6A87F86E06E3AFFFF'}}" playbooks/config/config.yml -vvvv --tag osimages

リモートサーバーから OS イメージファイルをインポート

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'osimages_imagetype_dict':{'imageType':'OS'}, 'import_dict':{'imageType':'OS','os':'rhels','imageName':'fixed','path':'iso/rhel73.iso','serverId':'1'}}" playbooks/config/config.yml -vvvv --tag import_osimages

ローカルから OS イメージスクリプトファイルをインポート

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'osimages_imagetype_dict':{'imageType':'SCRIPT'}, 'import_dict':{'imageType':'SCRIPT', "imageName":"trail.py", "os":"rhels", "description":"test_python_file", "file": "/home/naval/trail.py" }}" playbooks/config/config.yml -vvvv --tag import_osimages

ホストプラットフォームの詳細を取得

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'hostplatforms'}" playbooks/config/config.yml -vvvv --tag osimages

ノードに OS イメージをデプロイ

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'hostplatforms','osimages_dict':{'networkSettings':{'dns1': '10.240.0.10','dns2':'10.240.0.11','gateway':'10.240.28.1','ipAddress':'10.240.29.226','mtu':1500,'prefixLength':64,'selectedMac':'AUTO','subnetMask':'255.255.252.0','vlanId':521},'selectedImage':'rhels7.3|rhels7.3-x86_64-install-Minimal','storageSettings':{'targetDevice':'localdisk'},'uuid':'B918EDCA1B5F11E2803EBECB82710ADE'}}" playbooks/config/config.yml -vvvv --tag osimages

すべてのリモートファイルサーバーを取得

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'remotefileservers'}" playbooks/config/config.yml -vvvv --tag osimages

特定のリモートファイルサーバーを取得

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'remotefileservers', 'osimages_dict':{'id':'1'}}" playbooks/config/config.yml -vvvv --tag osimages

特定のリモートファイルサーバーを削除

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'remotefileservers', 'osimages_dict':{'deleteid':'2'}}" playbooks/config/config.yml -vvvv --tag osimages

リモートファイルサーバーを追加

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'remotefileservers', 'osimages_dict':{'displayName':'TEST99','address': '192.168.1.10','keyPassphrase': 'Passw0rd','keyType': 'RSA-2048','port': 8080,'protocol': 'HTTPS'}}" playbooks/config/config.yml -vvvv --tag osimages

-vvv は、プレイブックの実行中に何が起こっているのかを特定するのに役立つオプションの詳細コマンドです。

- name: get configtargets data from LXCA
  pylxca_module:
    login_user: "{{ lxca_user }}"
    login_password: "{{ lxca_password }}"
    auth_url: "{{ lxca_url }}"
    id: "{{ id }}"
    command_options: configtargets
  register: rslt
  tags:
     configtargets
プロジェクトについて

The lxca-config ansible role facilitates configuration of managed endpoiints from Lenovo xClarity Adiministrator.

インストール
ansible-galaxy install lenovo.lxca-config
ライセンス
bsd-3-clause
ダウンロード
36.3k
所有者
Open source projects from Lenovo