Exastro
Documentation
Document version
Language
  • 4. System status settings
  • 6. Keycloak console
  • Configuration and Construction guides
  • Installation
  • Learn
  • Manuals
    • System management
      • 1. Login
      • 2. Organization
      • 3. Resource plans
      • 4. System status settings
      • 5. Ansible Automation Platform link
        • 5.1. Introduction
        • 5.2. Register Ansible Automation Controller
          • 5.2.1. Pre-requisites
          • 5.2.2. Steps to register
          • 5.2.3. Confirm Ansible Automation Contoller link
          • 5.2.4. Other restrictions / Remarks
      • 6. Keycloak console
    • Organization management
    • Basic operation
    • Parameter management
    • Host group
    • Ansible Driver
    • Terraform Driver
    • Export/Import
    • CI/CD for IaC
    • OASE
    • API
    • Maintenance
  • 貢献
  • 5. Ansible Automation Platform link
    • 5.1. Introduction
    • 5.2. Register Ansible Automation Controller
      • 5.2.1. Pre-requisites
      • 5.2.2. Steps to register
      • 5.2.3. Confirm Ansible Automation Contoller link
      • 5.2.4. Other restrictions / Remarks
        • 5.2.4.1. Re-registering Ansible Automation Controller
  • HOME
  • Manuals
  • System management
  • 5. Ansible Automation Platform link

5. Ansible Automation Platform link¶

5.1. Introduction¶

This document aims to explain how System administrators can control Ansible Core, Ansible Automation controller or Ansible Execution Agent usage for users.

5.2. Register Ansible Automation Controller¶

By registering a Ansible Automation Controller, users can create job templates by combining "Projects", "Inventories" and "Authentication information" and execute them with Ansible.
By combining multiple "Job templates" together, users can create a "Workflow template". This can be used to create more varied workflows.

5.2.1. Pre-requisites¶

The workflow in this document requires that the following commands can be run. Make sure that they are installed.
  • Operation client required applications

    • curl

    • git

    • jq

5.2.2. Steps to register¶

There are two ways to register Ansible Automation Controller to Exastro IT Automation.
  • Features

Compared to registering using Rest API, this method does not require the user to prepare any parameter information. We recommend this method for user that does not want to prepare any extra information.
  • Registration method

Execute the Shell script from the files fetched from the GitHub repository and register an Ansible Automation Controller.
  1. Fetch the Ansible Automation Controller registration shell script from the Repository with git clone.

    リスト 5.12 Command¶
    # Acquire Exastro Platform files
    git clone https://github.com/exastro-suite/exastro-platform.git
    
  2. Configure the Exastro system's Management endpoint URL to the CONF_BASE_URL in the setting file.

    リスト 5.13 Command¶
    # Register settings information in order to connect to the Exastro Platform
    vi ./exastro-platform/tools/api-auth.conf
    
    For example, if the Service public settings are (Ingress settings), it will be like the following.
    リスト 5.14 api-auth.conf¶
    - CONF_BASE_URL=http://platform-auth:8001
    + CONF_BASE_URL=http://exastro-suite-mng.example.local
      CURL_OPT=-sv
    
If the user is using a self-signed certificate, a certificate error will occur.
Changing the CURL_OPT=-sv within the setting file to CURL_OPT=-svk prevents the error from occuring, but it is recommended that the user installs a valid certificate.
  1. Configure Ansible Automation Controller information

    The setting file is created based on the JSON file specified by the Ansible Automation Controller information created based on ./exastro-platform/tools/initial-settings-ansible.sample.json
    リスト 5.15 Command¶
    cp -pi ./exastro-platform/tools/initial-settings-ansible{.sample,}.json
    
    vi ./exastro-platform/tools/initial-settings-ansible.json
    
    initial-settings-ansible.sample.json
    {
      "input_limit_setting": true,
      "execution_engine_list": [
        "Ansible Automation Controller, "Ansible Execution Agent"
      ],
      "initial_data": {
        "ansible_automation_controller_host_list": [
          {
            "file": {
              "ssh_private_key_file": "LS0tLS1CRUdJTiBPUEVOU1NIIFBSSVZBVEUgS0VZLS0tLS0KYjNCbGJuTnphQzFyWlhrdGRqRUFBQUFBQkc1dmJtVUFBQUFFYm05dVpRQUFBQUFBQUFBQkFBQUJsd0FBQUFkemMyZ3RjbgpOaEFBQUFBd0VBQVFBQUFZRUF0V0ZvVVA5ZkZSRlhUTTV0U2s4cmU1dTVEVjNqclF3VVd5d2swMkwrZ0tkNElsOFQ4TnBkCk40Z3ZGVkMxM1VueGNxc1pxVWdEWk41NnphSnMrdThQcTBlVjl2R0dkWmZDcU11OHRrbzh5WUw2MGQ2VUVoVXFOVVJkb1UKSEJ3bngzbjZidlNWMVE0em56V0JBNVBqOFl3SENiL0swVGFEMndvMkRkbFhqTXhhTlpXTXlpRFVMbE1pSk02VFdCU0lYMwo2emE5ZnI2cGFmak5Vc0hBTk9YSTdGbUFQcC9Jcy80TmtJVkhZN2M1UkJkUTUvNWgrTCtxRmlVazhKbE9vcFdnMjJOWWlXCkpKUGM0U09iTWxtRUY1OEdMdloxZTlCS0FvaXEvdWIvVmlhZG9hRFlyTzlEM0U3UW1NTldWMjNNMnMyN2tnS0ZKcFJJSUMKbmllZlJyaTdkOVhEYldoclBFY1FlRUMyZnNrRzVyY3Q0RFhrQUtVVCtSTkdwMll6bWZqSHlHNkRPWkJIa1RCNnJ5OVF3SgpRaFpFTjEvM3k2K0Q1V1BpbWlxeVFBNmtXdnZYZUtHWkhzZEhLdG5QaGZra1EyUWlteFgyWFRHaGZwdjRSUkUzZWNGUmxRClQvenRLeWg5enIzWmd4UU1nWHgwdEJ5V2dZSUJwZVZHa1dFTTVkeTNBQUFGa1BlMkRlYjN0ZzNtQUFBQUIzTnphQzF5YzIKRUFBQUdCQUxWaGFGRC9YeFVSVjB6T2JVcFBLM3VidVExZDQ2ME1GRnNzSk5OaS9vQ25lQ0pmRS9EYVhUZUlMeFZRdGQxSgo4WEtyR2FsSUEyVGVlczJpYlBydkQ2dEhsZmJ4aG5XWHdxakx2TFpLUE1tQyt0SGVsQklWS2pWRVhhRkJ3Y0o4ZDUrbTcwCmxkVU9NNTgxZ1FPVDQvR01Cd20veXRFMmc5c0tOZzNaVjR6TVdqV1ZqTW9nMUM1VElpVE9rMWdVaUY5K3Mydlg2K3FXbjQKelZMQndEVGx5T3haZ0Q2ZnlMUCtEWkNGUjJPM09VUVhVT2YrWWZpL3FoWWxKUENaVHFLVm9OdGpXSWxpU1QzT0VqbXpKWgpoQmVmQmk3MmRYdlFTZ0tJcXY3bS8xWW1uYUdnMkt6dlE5eE8wSmpEVmxkdHpOck51NUlDaFNhVVNDQXA0bm4wYTR1M2ZWCncyMW9henhIRUhoQXRuN0pCdWEzTGVBMTVBQ2xFL2tUUnFkbU01bjR4OGh1Z3ptUVI1RXdlcTh2VU1DVUlXUkRkZjk4dXYKZytWajRwb3Fza0FPcEZyNzEzaWhtUjdIUnlyWno0WDVKRU5rSXBzVjlsMHhvWDZiK0VVUk4zbkJVWlVFLzg3U3NvZmM2OQoyWU1VRElGOGRMUWNsb0dDQWFYbFJwRmhET1hjdHdBQUFBTUJBQUVBQUFHQkFMRHVJTzBKL3YwMUdqeXhETWswNjB5N2ZjCnM5TUErb3ZkNmw5QkpEK2RFVUM4c3poZWNuaTFEVlJtQjdoN3dpR2lYcUk3RU9yMGpoQVZmQVBxQ1ZQR3F1L09tVGRyOFUKMSswQ09NWjFLbEREdE5tdVRqQkpkdy9ZN2FDVTNXWlROZm1GeE51QzdKbUsrUWFKWk4yRWZTZVRjWVlNYXViL2JtUWc1RwpXZkhka1kyOW9VVzJ1bU9wOHArRzV4SS9qVHZpQXpHS3dmWG5FaUkxKzc0anQzZndTVzFkUEExKzVFUDRVZmphRUdwUlQzCnpaTlFnTTgrWDdNVWJyRklTdjJzQ0VWSU54cGJDSE9iQkRZcTdodUljeDdKUVEvcW5EMVJGdFhBa3d4M1ZkMFF4elZUTDUKZXF6ci9jc3h6S3l1M08yVE5weWVodE1SWVB6M2dXZ2xieFI1SStObWl1VGlTQWFHa1o2OXJqblY0bVNmL25xUnJwUWRpeAozS1E1bUZldVNUUFdEdXZQNFdWNlJybzBPajRjalZnNTlGNHVWM05xQmpvMFpXYmt1QnhZeDRBK2hsZjcwMmdMLzVMZTBPCllTc1dFS0U5aFhueHZ5b0NBUTBCLy9meDFnaHkxY2xQWi9JR3FpWDYwUEQrY0FmTnFWNmt6aFo5WmZmQmVOZ2x3NThRQUEKQU1FQTBqbVF4VVc2WW9ZRnovUFg5aXgrNEd3VXh4WWFTdlVYRDJHZGt4cGtkYS9EV3lKUlJFd1FjTzhPQTdhWUFhV0hxSwp1T1ZCWVJlY3h0Z01SbzUreUNpZjVoNE9HNzVyVEtSQ0NRLy9Td2hyS25iQjFoOVJ0Q2dWNjlSd0tMSUhxcXo0dGQ0V20wCkw0NmFtditjd0ZrVVdxOFRtdzNkR1NlV3AydURQcjVxSjVGWDlEdmZRWUNKSEVkNThnN2lESXdzMUd3VExKaTJ3L0J1QlEKbzB2MUw4dGo0eG1MTUxpcW1zdDZLRHM3cHBlOGpJYTgycHVTSUJ1ZWJ5Y3pKdXljcmNBQUFBd1FEbU5SV25qcisxWmJSdgpPRjJVT2hGQ2I2UVlpQkFsTzVuWVZQUnQ2amhMWmdvMjlkUVUwUmRnYzNObmtOdzY1ZFpQbnZVMTlaamkzcFBlRnVQczJQCnEyaDg1aFNCK3VRR3JodEovRGM2MU1ZS2k5cjkxQmtvd0ZHSDR3YW9mSUsyYmF1V2VFMGg3UFFmajhrSzZVbndLbnpPSTcKc1o2anJTZStxaHQwMzkxUzhTb2F1bkhnMXNsOTRYS092bG1RQUpQMHNuS2VMcGIyalZIR0ZTR0JRdG1GQUh2aXV6Zm5nUgpGc3hrd2ROSU1ERGxLNmxVMnFhbkppL0NBM0VOQldDLzhBQUFEQkFNbXoyUkVEbllkSjM0N2prWWFDNzNHdGtjWDZDN0NxCjZ6cGRXQkZ6Zjd0NkhJbzJMdUlPenVFa2IxV0VjOFZibTBHbTA1YkZ4YnFEYjF2OWpJRmErTG9qTHVOUmFoSEZHVFRRUDYKTk9DMzA2SDd2TWgwMStNUVJNaERKYW9GRlRRVy9uSVBIQldwcDVJNzFVN0FNa0d6cXJoWVU5dlVNSXBNS2taQUQyYWF3dwpreUp6eFZzTFhUQXhrT3BVU3lWZmJsZVBKZXJpVmIydmVXbm5RUmRnRm02empSeXpSTXlYODFkaldzelNDTVZUeWI2YW9GCjdBYjZPZzlib0lnRmVQU1FBQUFCTnpjR2hwYm5oQU1qWmxNR05pWkRrM05UZGxBUUlEQkFVRwotLS0tLUVORCBPUEVOU1NIIFBSSVZBVEUgS0VZLS0tLS0K"
            },
            "parameter": {
              "host": "aap.example.com",
              "authentication_method": "Key authentication(No passphrase)",
              "user": "awx",
              "password": null,
              "ssh_private_key_file": "aap_id_rsa",
              "passphrase": null,
              "ansible_automation_controller_port": null,
              "execution_node": "False",
              "remarks": null
            }
          }
        ],
        "interface_info_ansible": {
          "parameter": {
            "execution_engine": "Ansible Automation Controller",
            "representative_server": "aap.example.com",
            "ansible_automation_controller_protocol": "https",
            "ansible_automation_controller_port": "443",
            "organization_name": null,
            "authentication_token": "LwWw3dwoHGx19ZhP1YQZU0JdZzobFv",
            "delete_runtime_data": "True",
            "proxy_address": null,
            "proxy_port": null
          }
        }
      }
    }
    

    Tip

    Supplementary information regarding execution_engine_list
    execution_engine_list can describe 3 execution engines.
    ・Ansible Core
    ・Ansible Automation Controller
    ・Ansible Execution Agent
    The described execution engines can be used.
    In the JSON example below, the Ansible Automation Controller and Ansible Execution Agent can be used.
    See the following for more information regarding the different parameters.
    Parameters when registering Ansible Automation Controller(Displayed・Hidden)
    表 5.20 Ansible Automation Controller 登録時のパラメータ¶

    パラメータ

    説明

    設定値

    input_limit_setting

    Exastro IT Automation の画面上から Ansible共通 ▶ インターフェース情報 (一部※) と Ansible Automation Controller ホスト一覧 の編集可否を指定。
    ▼ Ansible共通 ▶ インターフェース情報 の入力制限がかかる項目:
    - 実行エンジン
    - Ansible Automation Controller インターフェース
    - Proxy
    true: Exastro IT Automation の画面上から編集不可
    false: Exastro IT Automation の画面上から編集可能

    execution_engine_list

    Ansible共通 ▶ インターフェース情報 ▶ 実行エンジン の選択肢に入れる項目を指定。
    Ansible-Core: コミュニティ版Ansible
    Ansible Automation Controller: Red Hat Ansible Automation Controller
    Ansible Execution Agent: Ansible実行エージェント
    上記のいずれか、または、全てを指定。

    initial_data.ansible_automation_controller_host_list[*].file.ssh_private_key_file

    Ansible Automation Controller に接続するために登録する秘密鍵ファイルを Base64 エンコードした値。

    秘密鍵ファイルのBase64 エンコード文字列

    initial_data.ansible_automation_controller_host_list[*].parameter.host

    Ansible Automation Controller のコントロールノードのホスト名を指定。

    Ansible Automation Controller のコントロールノードのホスト名

    initial_data.ansible_automation_controller_host_list[*].parameter.authentication_method

    認証方式の選択
    Ansible Core または Ansible Automation Controller から作業対象の機器へ接続する際の認証方式を選択します。
    パスワード認証 : ログインパスワードの管理で●の選択と、ログインパスワードの入力が必須です。
    鍵認証(パスフレーズなし) : SSH 秘密鍵ファイル(id_ras)のアップロードが必須です。
    鍵認証(パスフレーズあり) : SSH 秘密鍵ファイル(id_ras)のアップロードと、パスフレーズの入力が必須です。

    initial_data.ansible_automation_controller_host_list[*].parameter.user

    Ansible Automation Controller に SSH 接続する場合のユーザ名を指定。
    プロジェクトパス(/var/lib/awx/projects)への書き込み制限が必要
    awx

    initial_data.ansible_automation_controller_host_list[*].parameter.password

    パスワード認証する場合のパスワードを指定。
    ※ 最大長128バイト

    任意の文字列

    initial_data.ansible_automation_controller_host_list[*].parameter.ssh_private_key_file

    Ansible Automation Controller に接続するために登録する秘密鍵ファイルのファイル名。

    秘密鍵ファイルのファイル名

    initial_data.ansible_automation_controller_host_list[*].parameter.passphrase

    SSH 秘密鍵ファイルにパスフレーズが設定されている場合、そのパスフレーズを指定。
    ※ 最大長256バイト

    パスフレーズ

    initial_data.ansible_automation_controller_host_list[*].parameter.ansible_automation_controller_port

    Ansible Automation Controllerにsshで接続するポート番号を指定。未設定の場合は22。

    ポート番号

    initial_data.ansible_automation_controller_host_list[*].parameter.execution_node

    このノードが Ansible Automation Controller の Execution node であるかどうかを指定。

    True : Execution node である場合。
    False : Execution node でない場合。
    key名はexecution_nodeの代わりにisolated_towerでも可。

    initial_data.ansible_automation_controller_host_list[*].parameter.remarks

    備考

    任意の文字列

    initial_data.parameter.execution_engine

    実行エンジンの指定
    Ansible-Core: コミュニティ版Ansible
    Ansible Automation Controller: Red Hat Ansible Automation Controller
    Ansible Execution Agent: Ansible実行エージェント
    上記のいずれかを指定。

    initial_data.parameter.representative_server

    代表ホスト
    Ansible Automation Controller ホスト一覧 に登録されいるホストの一覧より、 Exastro IT Automation と通信する Ansible Automation Controller のホストを選択します。
    ※ 実行エンジンが Ansible Automation Controller の場合に入力必須

    Ansible Automation Controller ホスト

    initial_data.parameter.ansible_automation_controller_protocol

    Ansible Automation Controller サーバとの通信プロトコルを http か https のどちらかを入力します。
    通常は https です。
    ※ 実行エンジンが Ansible Automation Controller の場合に入力必須
    http
    https
    上記のいずれか。

    initial_data.parameter.ansible_automation_controller_port

    Ansible Automation Controller サーバの接続ポート(80/443)を入力します。通常は HTTPS(443)です。
    ※ 実行エンジンが Ansible Automation Controller の場合に入力必須

    ポート番号

    initial_data.parameter.organization_name

    Ansible Automation Controller サーバに登録されている組織名を選択します。
    ※ 実行エンジンが Ansible Core 以外の場合に入力必須

    組織名の文字列

    initial_data.parameter.authentication_token

    Exastro IT Automation から Ansible Automation Controller サーバに接続するユーザーの認証トークンを入力します。
    ※ 実行エンジンが Ansible Automation Controller の場合に入力必須

    認証トークン文字列

    initial_data.parameter.delete_runtime_data

    作業実行時に Exastro IT Automation と Ansible Automation Controller 内に一時的に生成されるデータリソースを作業終了後に削するかを選択します。
    ※ 実行エンジンが Ansible Automation Controller の場合に入力必須
    True : 作業終了時にリソースを削除する
    False : 作業終了時にリソースを削除しない

    initial_data.parameter.proxy_address

    Exastro IT Automation がプロキシ環境下にある場合、Ansible/ Ansible Automation Controller サーバまでの疎通のために設定が必要な場合があります。
    プロキシサーバのURLが http://proxy.example.com:8080 の場合、http://proxy.example.com を入力します。
    ※ 最大128バイト

    プロキシサーバのURL

    initial_data.parameter.proxy_port

    Exastro IT Automation がプロキシ環境下にある場合、Ansible/ Ansible Automation Controller サーバまでの疎通のために設定が必要な場合があります。
    プロキシサーバのURLが http://proxy.example.com:8080 の場合、8080 を入力します。

    プロキシサーバのポート番号

    Tip

    ※ Distributing public key file required for configuring Key authentication (Keys exchanged).
    ・For Ansible Core
    SSH connect from the execution host of the server where Ansible is installed (User configured to Ansible common console=> Interface information) to the target host.
    Copy the execution user's public key file to the login destination user's "authorized_keys".

    ・ For Ansible Automation Controller
    SSH connect from the Ansible Automation Controller's awx to the target host.
    Copy the awx user's public key file to the login destination user's "authorized_keys". Then from the browser, log in to the Ansible Automation Controller and configure "/var/lib/awx/.ssh/" to "Settings"→"Job"→"Divided job publication path"
  2. Create Ansible Automation Controller

    リスト 5.16 Command¶
    ./exastro-platform/tools/initial-settings-ansible.sh ./exastro-platform/tools/initial-settings-ansible.json
    
    organization id : INPUT-ORGANIZATION-ID-TO-SET # Configuration destination's Organization ID
    
    your username : INPUT-YOUR-USERNAME # System admin username
    your password : INPUT-USER-PASSWORD # System admin password
    
    Create an organization, are you sure? (Y/other) : Y # Inputing Y starts the Ansible Automation Controller registration process.
    
    • Results when execution succeeds

      The result "000-00000" means that the Ansible Automation Controller has been successfully created.

      リスト 5.17 Execution results(Success)¶
      ...
      < HTTP/1.1 200 OK
      < Date: Thu, 18 Aug 2022 01:49:13 GMT
      < Server: Apache/2.4.37 (Red Hat Enterprise Linux) mod_wsgi/4.7.1 Python/3.9
      < Content-Length: 107
      < Content-Type: application/json
      <
      {
        "data": null,
        "message": "SUCCESS",
        "result": "000-00000",
        "ts": "2022-08-18T01:49:17.251Z"
      }
      * Connection #0 to host platform-auth left intact
      
    • Results when execution fails

      リスト 5.18 Execution results(Failure)¶
      ...
      < HTTP/1.1 400 BAD REQUEST
      < Date: Thu, 18 Aug 2022 05:29:35 GMT
      < Server: Apache/2.4.37 (Red Hat Enterprise Linux) mod_wsgi/4.7.1 Python/3.9
      < Content-Length: 252
      < Connection: close
      < Content-Type: application/json
      <
      { [252 bytes data]
      * Closing connection 0
      {
        "data": null,
        "message": "Error message,
        "result": "Error code",
        "ts": "2022-08-18T05:29:35.643Z"
      }
      
  • Features

Registering using Rest API is recommended for registering Ansible Automation Controller from external systems.
  • Registration method

  1. SSH key file encoding

    As the user neds to upload a SSH hidden key, they will have to encode it with Base64.
    リスト 5.19 Command¶
    MY_KEY=`base64 -w 0 my-aac-key.pem`
    
  2. Command

    The Organization ID must be configured to ORG_ID.
    In order to use Basic authentication, the System administrator's authentication information must be configured to BASE64_BASIC.
    The authentication information is the same as the information:ref:registered when installing <create_system_manager>.
    If using cURL, use the following commands.
    See below for more information regarding the different parameters.
    Parameters when registering Ansible Automation Controller
    表 5.21 Ansible Automation Controller 登録時のパラメータ¶

    パラメータ

    説明

    設定値

    input_limit_setting

    Exastro IT Automation の画面上から Ansible共通 ▶ インターフェース情報 (一部※) と Ansible Automation Controller ホスト一覧 の編集可否を指定。
    ▼ Ansible共通 ▶ インターフェース情報 の入力制限がかかる項目:
    - 実行エンジン
    - Ansible Automation Controller インターフェース
    - Proxy
    true: Exastro IT Automation の画面上から編集不可
    false: Exastro IT Automation の画面上から編集可能

    execution_engine_list

    Ansible共通 ▶ インターフェース情報 ▶ 実行エンジン の選択肢に入れる項目を指定。
    Ansible-Core: コミュニティ版Ansible
    Ansible Automation Controller: Red Hat Ansible Automation Controller
    Ansible Execution Agent: Ansible実行エージェント
    上記のいずれか、または、全てを指定。

    initial_data.ansible_automation_controller_host_list[*].file.ssh_private_key_file

    Ansible Automation Controller に接続するために登録する秘密鍵ファイルを Base64 エンコードした値。

    秘密鍵ファイルのBase64 エンコード文字列

    initial_data.ansible_automation_controller_host_list[*].parameter.host

    Ansible Automation Controller のコントロールノードのホスト名を指定。

    Ansible Automation Controller のコントロールノードのホスト名

    initial_data.ansible_automation_controller_host_list[*].parameter.authentication_method

    認証方式の選択
    Ansible Core または Ansible Automation Controller から作業対象の機器へ接続する際の認証方式を選択します。
    パスワード認証 : ログインパスワードの管理で●の選択と、ログインパスワードの入力が必須です。
    鍵認証(パスフレーズなし) : SSH 秘密鍵ファイル(id_ras)のアップロードが必須です。
    鍵認証(パスフレーズあり) : SSH 秘密鍵ファイル(id_ras)のアップロードと、パスフレーズの入力が必須です。

    initial_data.ansible_automation_controller_host_list[*].parameter.user

    Ansible Automation Controller に SSH 接続する場合のユーザ名を指定。
    プロジェクトパス(/var/lib/awx/projects)への書き込み制限が必要
    awx

    initial_data.ansible_automation_controller_host_list[*].parameter.password

    パスワード認証する場合のパスワードを指定。
    ※ 最大長128バイト

    任意の文字列

    initial_data.ansible_automation_controller_host_list[*].parameter.ssh_private_key_file

    Ansible Automation Controller に接続するために登録する秘密鍵ファイルのファイル名。

    秘密鍵ファイルのファイル名

    initial_data.ansible_automation_controller_host_list[*].parameter.passphrase

    SSH 秘密鍵ファイルにパスフレーズが設定されている場合、そのパスフレーズを指定。
    ※ 最大長256バイト

    パスフレーズ

    initial_data.ansible_automation_controller_host_list[*].parameter.ansible_automation_controller_port

    Ansible Automation Controllerにsshで接続するポート番号を指定。未設定の場合は22。

    ポート番号

    initial_data.ansible_automation_controller_host_list[*].parameter.execution_node

    このノードが Ansible Automation Controller の Execution node であるかどうかを指定。

    True : Execution node である場合。
    False : Execution node でない場合。
    key名はexecution_nodeの代わりにisolated_towerでも可。

    initial_data.ansible_automation_controller_host_list[*].parameter.remarks

    備考

    任意の文字列

    initial_data.parameter.execution_engine

    実行エンジンの指定
    Ansible-Core: コミュニティ版Ansible
    Ansible Automation Controller: Red Hat Ansible Automation Controller
    Ansible Execution Agent: Ansible実行エージェント
    上記のいずれかを指定。

    initial_data.parameter.representative_server

    代表ホスト
    Ansible Automation Controller ホスト一覧 に登録されいるホストの一覧より、 Exastro IT Automation と通信する Ansible Automation Controller のホストを選択します。
    ※ 実行エンジンが Ansible Automation Controller の場合に入力必須

    Ansible Automation Controller ホスト

    initial_data.parameter.ansible_automation_controller_protocol

    Ansible Automation Controller サーバとの通信プロトコルを http か https のどちらかを入力します。
    通常は https です。
    ※ 実行エンジンが Ansible Automation Controller の場合に入力必須
    http
    https
    上記のいずれか。

    initial_data.parameter.ansible_automation_controller_port

    Ansible Automation Controller サーバの接続ポート(80/443)を入力します。通常は HTTPS(443)です。
    ※ 実行エンジンが Ansible Automation Controller の場合に入力必須

    ポート番号

    initial_data.parameter.organization_name

    Ansible Automation Controller サーバに登録されている組織名を選択します。
    ※ 実行エンジンが Ansible Core 以外の場合に入力必須

    組織名の文字列

    initial_data.parameter.authentication_token

    Exastro IT Automation から Ansible Automation Controller サーバに接続するユーザーの認証トークンを入力します。
    ※ 実行エンジンが Ansible Automation Controller の場合に入力必須

    認証トークン文字列

    initial_data.parameter.delete_runtime_data

    作業実行時に Exastro IT Automation と Ansible Automation Controller 内に一時的に生成されるデータリソースを作業終了後に削するかを選択します。
    ※ 実行エンジンが Ansible Automation Controller の場合に入力必須
    True : 作業終了時にリソースを削除する
    False : 作業終了時にリソースを削除しない

    initial_data.parameter.proxy_address

    Exastro IT Automation がプロキシ環境下にある場合、Ansible/ Ansible Automation Controller サーバまでの疎通のために設定が必要な場合があります。
    プロキシサーバのURLが http://proxy.example.com:8080 の場合、http://proxy.example.com を入力します。
    ※ 最大128バイト

    プロキシサーバのURL

    initial_data.parameter.proxy_port

    Exastro IT Automation がプロキシ環境下にある場合、Ansible/ Ansible Automation Controller サーバまでの疎通のために設定が必要な場合があります。
    プロキシサーバのURLが http://proxy.example.com:8080 の場合、8080 を入力します。

    プロキシサーバのポート番号

    リスト 5.20 Command¶
    ORG_ID=org001
    BASE64_BASIC=$(echo -n "KEYCLOAK_USER:KEYCLOAK_PASSWORD" | base64)
    BASE_URL=http://exastro-suite-mng.example.local
    
    curl -X 'POST' \
      "http://${BASE_URL}/api/ita/${ORG_ID}/initial-settings/ansible/" \
      -H 'accept: application/json' \
      -H "Authorization: Basic ${BASE64_BASIC}" \
      -H 'Content-Type: application/json' \
      -d '{
            "input_limit_setting": true,
            "execution_engine_list": [
              "Ansible Automation Controller", "Ansible Execution Agent"
            ],
            "initial_data": {
              "ansible_automation_controller_host_list": [
                {
                  "file": {
                    "ssh_private_key_file": "LS0tLS1CRUdJTiBPUEVOU1NIIFBSSVZBVEUgS0VZLS0tLS0KYjNCbGJuTnphQzFyWlhrdGRqRUFBQUFBQkc1dmJtVUFBQUFFYm05dVpRQUFBQUFBQUFBQkFBQUJsd0FBQUFkemMyZ3RjbgpOaEFBQUFBd0VBQVFBQUFZRUF0V0ZvVVA5ZkZSRlhUTTV0U2s4cmU1dTVEVjNqclF3VVd5d2swMkwrZ0tkNElsOFQ4TnBkCk40Z3ZGVkMxM1VueGNxc1pxVWdEWk41NnphSnMrdThQcTBlVjl2R0dkWmZDcU11OHRrbzh5WUw2MGQ2VUVoVXFOVVJkb1UKSEJ3bngzbjZidlNWMVE0em56V0JBNVBqOFl3SENiL0swVGFEMndvMkRkbFhqTXhhTlpXTXlpRFVMbE1pSk02VFdCU0lYMwo2emE5ZnI2cGFmak5Vc0hBTk9YSTdGbUFQcC9Jcy80TmtJVkhZN2M1UkJkUTUvNWgrTCtxRmlVazhKbE9vcFdnMjJOWWlXCkpKUGM0U09iTWxtRUY1OEdMdloxZTlCS0FvaXEvdWIvVmlhZG9hRFlyTzlEM0U3UW1NTldWMjNNMnMyN2tnS0ZKcFJJSUMKbmllZlJyaTdkOVhEYldoclBFY1FlRUMyZnNrRzVyY3Q0RFhrQUtVVCtSTkdwMll6bWZqSHlHNkRPWkJIa1RCNnJ5OVF3SgpRaFpFTjEvM3k2K0Q1V1BpbWlxeVFBNmtXdnZYZUtHWkhzZEhLdG5QaGZra1EyUWlteFgyWFRHaGZwdjRSUkUzZWNGUmxRClQvenRLeWg5enIzWmd4UU1nWHgwdEJ5V2dZSUJwZVZHa1dFTTVkeTNBQUFGa1BlMkRlYjN0ZzNtQUFBQUIzTnphQzF5YzIKRUFBQUdCQUxWaGFGRC9YeFVSVjB6T2JVcFBLM3VidVExZDQ2ME1GRnNzSk5OaS9vQ25lQ0pmRS9EYVhUZUlMeFZRdGQxSgo4WEtyR2FsSUEyVGVlczJpYlBydkQ2dEhsZmJ4aG5XWHdxakx2TFpLUE1tQyt0SGVsQklWS2pWRVhhRkJ3Y0o4ZDUrbTcwCmxkVU9NNTgxZ1FPVDQvR01Cd20veXRFMmc5c0tOZzNaVjR6TVdqV1ZqTW9nMUM1VElpVE9rMWdVaUY5K3Mydlg2K3FXbjQKelZMQndEVGx5T3haZ0Q2ZnlMUCtEWkNGUjJPM09VUVhVT2YrWWZpL3FoWWxKUENaVHFLVm9OdGpXSWxpU1QzT0VqbXpKWgpoQmVmQmk3MmRYdlFTZ0tJcXY3bS8xWW1uYUdnMkt6dlE5eE8wSmpEVmxkdHpOck51NUlDaFNhVVNDQXA0bm4wYTR1M2ZWCncyMW9henhIRUhoQXRuN0pCdWEzTGVBMTVBQ2xFL2tUUnFkbU01bjR4OGh1Z3ptUVI1RXdlcTh2VU1DVUlXUkRkZjk4dXYKZytWajRwb3Fza0FPcEZyNzEzaWhtUjdIUnlyWno0WDVKRU5rSXBzVjlsMHhvWDZiK0VVUk4zbkJVWlVFLzg3U3NvZmM2OQoyWU1VRElGOGRMUWNsb0dDQWFYbFJwRmhET1hjdHdBQUFBTUJBQUVBQUFHQkFMRHVJTzBKL3YwMUdqeXhETWswNjB5N2ZjCnM5TUErb3ZkNmw5QkpEK2RFVUM4c3poZWNuaTFEVlJtQjdoN3dpR2lYcUk3RU9yMGpoQVZmQVBxQ1ZQR3F1L09tVGRyOFUKMSswQ09NWjFLbEREdE5tdVRqQkpkdy9ZN2FDVTNXWlROZm1GeE51QzdKbUsrUWFKWk4yRWZTZVRjWVlNYXViL2JtUWc1RwpXZkhka1kyOW9VVzJ1bU9wOHArRzV4SS9qVHZpQXpHS3dmWG5FaUkxKzc0anQzZndTVzFkUEExKzVFUDRVZmphRUdwUlQzCnpaTlFnTTgrWDdNVWJyRklTdjJzQ0VWSU54cGJDSE9iQkRZcTdodUljeDdKUVEvcW5EMVJGdFhBa3d4M1ZkMFF4elZUTDUKZXF6ci9jc3h6S3l1M08yVE5weWVodE1SWVB6M2dXZ2xieFI1SStObWl1VGlTQWFHa1o2OXJqblY0bVNmL25xUnJwUWRpeAozS1E1bUZldVNUUFdEdXZQNFdWNlJybzBPajRjalZnNTlGNHVWM05xQmpvMFpXYmt1QnhZeDRBK2hsZjcwMmdMLzVMZTBPCllTc1dFS0U5aFhueHZ5b0NBUTBCLy9meDFnaHkxY2xQWi9JR3FpWDYwUEQrY0FmTnFWNmt6aFo5WmZmQmVOZ2x3NThRQUEKQU1FQTBqbVF4VVc2WW9ZRnovUFg5aXgrNEd3VXh4WWFTdlVYRDJHZGt4cGtkYS9EV3lKUlJFd1FjTzhPQTdhWUFhV0hxSwp1T1ZCWVJlY3h0Z01SbzUreUNpZjVoNE9HNzVyVEtSQ0NRLy9Td2hyS25iQjFoOVJ0Q2dWNjlSd0tMSUhxcXo0dGQ0V20wCkw0NmFtditjd0ZrVVdxOFRtdzNkR1NlV3AydURQcjVxSjVGWDlEdmZRWUNKSEVkNThnN2lESXdzMUd3VExKaTJ3L0J1QlEKbzB2MUw4dGo0eG1MTUxpcW1zdDZLRHM3cHBlOGpJYTgycHVTSUJ1ZWJ5Y3pKdXljcmNBQUFBd1FEbU5SV25qcisxWmJSdgpPRjJVT2hGQ2I2UVlpQkFsTzVuWVZQUnQ2amhMWmdvMjlkUVUwUmRnYzNObmtOdzY1ZFpQbnZVMTlaamkzcFBlRnVQczJQCnEyaDg1aFNCK3VRR3JodEovRGM2MU1ZS2k5cjkxQmtvd0ZHSDR3YW9mSUsyYmF1V2VFMGg3UFFmajhrSzZVbndLbnpPSTcKc1o2anJTZStxaHQwMzkxUzhTb2F1bkhnMXNsOTRYS092bG1RQUpQMHNuS2VMcGIyalZIR0ZTR0JRdG1GQUh2aXV6Zm5nUgpGc3hrd2ROSU1ERGxLNmxVMnFhbkppL0NBM0VOQldDLzhBQUFEQkFNbXoyUkVEbllkSjM0N2prWWFDNzNHdGtjWDZDN0NxCjZ6cGRXQkZ6Zjd0NkhJbzJMdUlPenVFa2IxV0VjOFZibTBHbTA1YkZ4YnFEYjF2OWpJRmErTG9qTHVOUmFoSEZHVFRRUDYKTk9DMzA2SDd2TWgwMStNUVJNaERKYW9GRlRRVy9uSVBIQldwcDVJNzFVN0FNa0d6cXJoWVU5dlVNSXBNS2taQUQyYWF3dwpreUp6eFZzTFhUQXhrT3BVU3lWZmJsZVBKZXJpVmIydmVXbm5RUmRnRm02empSeXpSTXlYODFkaldzelNDTVZUeWI2YW9GCjdBYjZPZzlib0lnRmVQU1FBQUFCTnpjR2hwYm5oQU1qWmxNR05pWkRrM05UZGxBUUlEQkFVRwotLS0tLUVORCBPUEVOU1NIIFBSSVZBVEUgS0VZLS0tLS0K"
                  },
                  "parameter": {
                    "host": "aap.example.com",
                    "authentication_method": "Key authentication (No passphrase)",
                    "user": "awx",
                    "password": null,
                    "ssh_private_key_file": "aap_id_rsa",
                    "passphrase": null,
                    "ansible_automation_controller_port": null,
                    "execution_node": "False",
                    "remarks": null
                  }
                }
              ],
              "interface_info_ansible": {
                "parameter": {
                  "execution_engine": "Ansible Automation Controller",
                  "representative_server": "aap.example.com",
                  "ansible_automation_controller_protocol": "https",
                  "ansible_automation_controller_port": "443",
                  "organization_name": null,
                  "authentication_token": "LwWw3dwoHGx19ZhP1YQZU0JdZzobFv",
                  "delete_runtime_data": "True",
                  "proxy_address": null,
                  "proxy_port": null
                }
              }
            }
          }'
    

    Tip

    Supplementary information regarding execution_engine_list
    execution_engine_list can describe 3 execution engines.
    ・Ansible Core
    ・Ansible Automation Controller
    ・Ansible Execution Agent
    The described execution engines can be used.
    In the JSON example below, the Ansible Automation Controller and Ansible Execution Agent can be used.

5.2.3. Confirm Ansible Automation Contoller link¶

  1. Check the Organization creation results.

リスト 5.21 Command¶
./exastro-platform/tools/get-initial-settings-ansible.sh

organization id : INPUT-ORGANIZATION-ID-TO-SET # Configuration destination's Organization ID

your username : INPUT-YOUR-USERNAME # System admin username
your password : INPUT-USER-PASSWORD # System admin password
  • Results

    The result "000-00000" means that the Ansible Automation Controller has been successfully created.

    リスト 5.22 Execution results(Success)¶
    {
      "data": {
        "execution_engine_list": [
          "Ansible Automation Controller"
        ],
        "initial_data": {
          "ansible_automation_controller_host_list": [
            {
              "file": {
                "ssh_private_key_file": "LS0tLS1CRUdJTiBPUEVOU1NIIFBSSVZBVEUgS0VZLS0tLS0KYjNCbGJuTnphQzFyWlhrdGRqRUFBQUFBQkc1dmJtVUFBQUFFYm05dVpRQUFBQUFBQUFBQkFBQUJsd0FBQUFkemMyZ3RjbgpOaEFBQUFBd0VBQVFBQUFZRUF0V0ZvVVA5ZkZSRlhUTTV0U2s4cmU1dTVEVjNqclF3VVd5d2swMkwrZ0tkNElsOFQ4TnBkCk40Z3ZGVkMxM1VueGNxc1pxVWdEWk41NnphSnMrdThQcTBlVjl2R0dkWmZDcU11OHRrbzh5WUw2MGQ2VUVoVXFOVVJkb1UKSEJ3bngzbjZidlNWMVE0em56V0JBNVBqOFl3SENiL0swVGFEMndvMkRkbFhqTXhhTlpXTXlpRFVMbE1pSk02VFdCU0lYMwo2emE5ZnI2cGFmak5Vc0hBTk9YSTdGbUFQcC9Jcy80TmtJVkhZN2M1UkJkUTUvNWgrTCtxRmlVazhKbE9vcFdnMjJOWWlXCkpKUGM0U09iTWxtRUY1OEdMdloxZTlCS0FvaXEvdWIvVmlhZG9hRFlyTzlEM0U3UW1NTldWMjNNMnMyN2tnS0ZKcFJJSUMKbmllZlJyaTdkOVhEYldoclBFY1FlRUMyZnNrRzVyY3Q0RFhrQUtVVCtSTkdwMll6bWZqSHlHNkRPWkJIa1RCNnJ5OVF3SgpRaFpFTjEvM3k2K0Q1V1BpbWlxeVFBNmtXdnZYZUtHWkhzZEhLdG5QaGZra1EyUWlteFgyWFRHaGZwdjRSUkUzZWNGUmxRClQvenRLeWg5enIzWmd4UU1nWHgwdEJ5V2dZSUJwZVZHa1dFTTVkeTNBQUFGa1BlMkRlYjN0ZzNtQUFBQUIzTnphQzF5YzIKRUFBQUdCQUxWaGFGRC9YeFVSVjB6T2JVcFBLM3VidVExZDQ2ME1GRnNzSk5OaS9vQ25lQ0pmRS9EYVhUZUlMeFZRdGQxSgo4WEtyR2FsSUEyVGVlczJpYlBydkQ2dEhsZmJ4aG5XWHdxakx2TFpLUE1tQyt0SGVsQklWS2pWRVhhRkJ3Y0o4ZDUrbTcwCmxkVU9NNTgxZ1FPVDQvR01Cd20veXRFMmc5c0tOZzNaVjR6TVdqV1ZqTW9nMUM1VElpVE9rMWdVaUY5K3Mydlg2K3FXbjQKelZMQndEVGx5T3haZ0Q2ZnlMUCtEWkNGUjJPM09VUVhVT2YrWWZpL3FoWWxKUENaVHFLVm9OdGpXSWxpU1QzT0VqbXpKWgpoQmVmQmk3MmRYdlFTZ0tJcXY3bS8xWW1uYUdnMkt6dlE5eE8wSmpEVmxkdHpOck51NUlDaFNhVVNDQXA0bm4wYTR1M2ZWCncyMW9henhIRUhoQXRuN0pCdWEzTGVBMTVBQ2xFL2tUUnFkbU01bjR4OGh1Z3ptUVI1RXdlcTh2VU1DVUlXUkRkZjk4dXYKZytWajRwb3Fza0FPcEZyNzEzaWhtUjdIUnlyWno0WDVKRU5rSXBzVjlsMHhvWDZiK0VVUk4zbkJVWlVFLzg3U3NvZmM2OQoyWU1VRElGOGRMUWNsb0dDQWFYbFJwRmhET1hjdHdBQUFBTUJBQUVBQUFHQkFMRHVJTzBKL3YwMUdqeXhETWswNjB5N2ZjCnM5TUErb3ZkNmw5QkpEK2RFVUM4c3poZWNuaTFEVlJtQjdoN3dpR2lYcUk3RU9yMGpoQVZmQVBxQ1ZQR3F1L09tVGRyOFUKMSswQ09NWjFLbEREdE5tdVRqQkpkdy9ZN2FDVTNXWlROZm1GeE51QzdKbUsrUWFKWk4yRWZTZVRjWVlNYXViL2JtUWc1RwpXZkhka1kyOW9VVzJ1bU9wOHArRzV4SS9qVHZpQXpHS3dmWG5FaUkxKzc0anQzZndTVzFkUEExKzVFUDRVZmphRUdwUlQzCnpaTlFnTTgrWDdNVWJyRklTdjJzQ0VWSU54cGJDSE9iQkRZcTdodUljeDdKUVEvcW5EMVJGdFhBa3d4M1ZkMFF4elZUTDUKZXF6ci9jc3h6S3l1M08yVE5weWVodE1SWVB6M2dXZ2xieFI1SStObWl1VGlTQWFHa1o2OXJqblY0bVNmL25xUnJwUWRpeAozS1E1bUZldVNUUFdEdXZQNFdWNlJybzBPajRjalZnNTlGNHVWM05xQmpvMFpXYmt1QnhZeDRBK2hsZjcwMmdMLzVMZTBPCllTc1dFS0U5aFhueHZ5b0NBUTBCLy9meDFnaHkxY2xQWi9JR3FpWDYwUEQrY0FmTnFWNmt6aFo5WmZmQmVOZ2x3NThRQUEKQU1FQTBqbVF4VVc2WW9ZRnovUFg5aXgrNEd3VXh4WWFTdlVYRDJHZGt4cGtkYS9EV3lKUlJFd1FjTzhPQTdhWUFhV0hxSwp1T1ZCWVJlY3h0Z01SbzUreUNpZjVoNE9HNzVyVEtSQ0NRLy9Td2hyS25iQjFoOVJ0Q2dWNjlSd0tMSUhxcXo0dGQ0V20wCkw0NmFtditjd0ZrVVdxOFRtdzNkR1NlV3AydURQcjVxSjVGWDlEdmZRWUNKSEVkNThnN2lESXdzMUd3VExKaTJ3L0J1QlEKbzB2MUw4dGo0eG1MTUxpcW1zdDZLRHM3cHBlOGpJYTgycHVTSUJ1ZWJ5Y3pKdXljcmNBQUFBd1FEbU5SV25qcisxWmJSdgpPRjJVT2hGQ2I2UVlpQkFsTzVuWVZQUnQ2amhMWmdvMjlkUVUwUmRnYzNObmtOdzY1ZFpQbnZVMTlaamkzcFBlRnVQczJQCnEyaDg1aFNCK3VRR3JodEovRGM2MU1ZS2k5cjkxQmtvd0ZHSDR3YW9mSUsyYmF1V2VFMGg3UFFmajhrSzZVbndLbnpPSTcKc1o2anJTZStxaHQwMzkxUzhTb2F1bkhnMXNsOTRYS092bG1RQUpQMHNuS2VMcGIyalZIR0ZTR0JRdG1GQUh2aXV6Zm5nUgpGc3hrd2ROSU1ERGxLNmxVMnFhbkppL0NBM0VOQldDLzhBQUFEQkFNbXoyUkVEbllkSjM0N2prWWFDNzNHdGtjWDZDN0NxCjZ6cGRXQkZ6Zjd0NkhJbzJMdUlPenVFa2IxV0VjOFZibTBHbTA1YkZ4YnFEYjF2OWpJRmErTG9qTHVOUmFoSEZHVFRRUDYKTk9DMzA2SDd2TWgwMStNUVJNaERKYW9GRlRRVy9uSVBIQldwcDVJNzFVN0FNa0d6cXJoWVU5dlVNSXBNS2taQUQyYWF3dwpreUp6eFZzTFhUQXhrT3BVU3lWZmJsZVBKZXJpVmIydmVXbm5RUmRnRm02empSeXpSTXlYODFkaldzelNDTVZUeWI2YW9GCjdBYjZPZzlib0lnRmVQU1FBQUFCTnpjR2hwYm5oQU1qWmxNR05pWkRrM05UZGxBUUlEQkFVRwotLS0tLUVORCBPUEVOU1NIIFBSSVZBVEUgS0VZLS0tLS0K"
              },
              "parameter": {
                "authentication_method": "\u9375\u8a8d\u8a3c(\u30d1\u30b9\u30d5\u30ec\u30fc\u30ba\u306a\u3057)",
                "host": "aap.example.com",
                "ansible_automation_controller_port": null,
                "execution_node": "False",
                "passphrase": null,
                "password": null,
                "remarks": null,
                "ssh_private_key_file": "aap_id_rsa",
                "user": "awx"
              }
            }
          ],
          "interface_info_ansible": {
            "parameter": {
              "ansible_automation_controller_port": "443",
              "ansible_automation_controller_protocol": "https",
              "authentication_token": "LwWw3dwoHGx19ZhP1YQZU0JdZzobFv",
              "delete_runtime_data": "True",
              "execution_engine": "Ansible Automation Controller",
              "organization_name": null,
              "proxy_address": null,
              "proxy_port": null,
              "representative_server": "aap.example.com"
            }
          }
        },
        "input_limit_setting": true
      },
      "message": "SUCCESS",
      "result": "000-00000",
      "ts": "2023-02-03T14:47:10.185Z"
    }
    
  • Results when execution fails

    リスト 5.23 Execution results(Failure)¶
    ...
    < HTTP/1.1 400 BAD REQUEST
    < Date: Thu, 18 Aug 2022 05:29:35 GMT
    < Server: Apache/2.4.37 (Red Hat Enterprise Linux) mod_wsgi/4.7.1 Python/3.9
    < Content-Length: 252
    < Connection: close
    < Content-Type: application/json
    <
    { [252 bytes data]
    * Closing connection 0
    {
      "data": null,
      "message": "Error message,
      "result": "Error code",
      "ts": "2022-08-18T05:29:35.643Z"
    }
    
リスト 5.24 Command¶
curl -X 'GET' \
  'http://exastro-suite-mng.example.local/api/ita/org001/initial-settings/ansible/' \
   -H 'accept: application/json'
  • Execution results

    The result "000-00000" means that the Ansible Automation Controller has been successfully created.

    リスト 5.25 Execution results(Success)¶
    {
      "data": {
        "execution_engine_list": [
          "Ansible Automation Controller"
        ],
        "initial_data": {
          "ansible_automation_controller_host_list": [
            {
              "file": {
                "ssh_private_key_file": "LS0tLS1CRUdJTiBPUEVOU1NIIFBSSVZBVEUgS0VZLS0tLS0KYjNCbGJuTnphQzFyWlhrdGRqRUFBQUFBQkc1dmJtVUFBQUFFYm05dVpRQUFBQUFBQUFBQkFBQUJsd0FBQUFkemMyZ3RjbgpOaEFBQUFBd0VBQVFBQUFZRUF0V0ZvVVA5ZkZSRlhUTTV0U2s4cmU1dTVEVjNqclF3VVd5d2swMkwrZ0tkNElsOFQ4TnBkCk40Z3ZGVkMxM1VueGNxc1pxVWdEWk41NnphSnMrdThQcTBlVjl2R0dkWmZDcU11OHRrbzh5WUw2MGQ2VUVoVXFOVVJkb1UKSEJ3bngzbjZidlNWMVE0em56V0JBNVBqOFl3SENiL0swVGFEMndvMkRkbFhqTXhhTlpXTXlpRFVMbE1pSk02VFdCU0lYMwo2emE5ZnI2cGFmak5Vc0hBTk9YSTdGbUFQcC9Jcy80TmtJVkhZN2M1UkJkUTUvNWgrTCtxRmlVazhKbE9vcFdnMjJOWWlXCkpKUGM0U09iTWxtRUY1OEdMdloxZTlCS0FvaXEvdWIvVmlhZG9hRFlyTzlEM0U3UW1NTldWMjNNMnMyN2tnS0ZKcFJJSUMKbmllZlJyaTdkOVhEYldoclBFY1FlRUMyZnNrRzVyY3Q0RFhrQUtVVCtSTkdwMll6bWZqSHlHNkRPWkJIa1RCNnJ5OVF3SgpRaFpFTjEvM3k2K0Q1V1BpbWlxeVFBNmtXdnZYZUtHWkhzZEhLdG5QaGZra1EyUWlteFgyWFRHaGZwdjRSUkUzZWNGUmxRClQvenRLeWg5enIzWmd4UU1nWHgwdEJ5V2dZSUJwZVZHa1dFTTVkeTNBQUFGa1BlMkRlYjN0ZzNtQUFBQUIzTnphQzF5YzIKRUFBQUdCQUxWaGFGRC9YeFVSVjB6T2JVcFBLM3VidVExZDQ2ME1GRnNzSk5OaS9vQ25lQ0pmRS9EYVhUZUlMeFZRdGQxSgo4WEtyR2FsSUEyVGVlczJpYlBydkQ2dEhsZmJ4aG5XWHdxakx2TFpLUE1tQyt0SGVsQklWS2pWRVhhRkJ3Y0o4ZDUrbTcwCmxkVU9NNTgxZ1FPVDQvR01Cd20veXRFMmc5c0tOZzNaVjR6TVdqV1ZqTW9nMUM1VElpVE9rMWdVaUY5K3Mydlg2K3FXbjQKelZMQndEVGx5T3haZ0Q2ZnlMUCtEWkNGUjJPM09VUVhVT2YrWWZpL3FoWWxKUENaVHFLVm9OdGpXSWxpU1QzT0VqbXpKWgpoQmVmQmk3MmRYdlFTZ0tJcXY3bS8xWW1uYUdnMkt6dlE5eE8wSmpEVmxkdHpOck51NUlDaFNhVVNDQXA0bm4wYTR1M2ZWCncyMW9henhIRUhoQXRuN0pCdWEzTGVBMTVBQ2xFL2tUUnFkbU01bjR4OGh1Z3ptUVI1RXdlcTh2VU1DVUlXUkRkZjk4dXYKZytWajRwb3Fza0FPcEZyNzEzaWhtUjdIUnlyWno0WDVKRU5rSXBzVjlsMHhvWDZiK0VVUk4zbkJVWlVFLzg3U3NvZmM2OQoyWU1VRElGOGRMUWNsb0dDQWFYbFJwRmhET1hjdHdBQUFBTUJBQUVBQUFHQkFMRHVJTzBKL3YwMUdqeXhETWswNjB5N2ZjCnM5TUErb3ZkNmw5QkpEK2RFVUM4c3poZWNuaTFEVlJtQjdoN3dpR2lYcUk3RU9yMGpoQVZmQVBxQ1ZQR3F1L09tVGRyOFUKMSswQ09NWjFLbEREdE5tdVRqQkpkdy9ZN2FDVTNXWlROZm1GeE51QzdKbUsrUWFKWk4yRWZTZVRjWVlNYXViL2JtUWc1RwpXZkhka1kyOW9VVzJ1bU9wOHArRzV4SS9qVHZpQXpHS3dmWG5FaUkxKzc0anQzZndTVzFkUEExKzVFUDRVZmphRUdwUlQzCnpaTlFnTTgrWDdNVWJyRklTdjJzQ0VWSU54cGJDSE9iQkRZcTdodUljeDdKUVEvcW5EMVJGdFhBa3d4M1ZkMFF4elZUTDUKZXF6ci9jc3h6S3l1M08yVE5weWVodE1SWVB6M2dXZ2xieFI1SStObWl1VGlTQWFHa1o2OXJqblY0bVNmL25xUnJwUWRpeAozS1E1bUZldVNUUFdEdXZQNFdWNlJybzBPajRjalZnNTlGNHVWM05xQmpvMFpXYmt1QnhZeDRBK2hsZjcwMmdMLzVMZTBPCllTc1dFS0U5aFhueHZ5b0NBUTBCLy9meDFnaHkxY2xQWi9JR3FpWDYwUEQrY0FmTnFWNmt6aFo5WmZmQmVOZ2x3NThRQUEKQU1FQTBqbVF4VVc2WW9ZRnovUFg5aXgrNEd3VXh4WWFTdlVYRDJHZGt4cGtkYS9EV3lKUlJFd1FjTzhPQTdhWUFhV0hxSwp1T1ZCWVJlY3h0Z01SbzUreUNpZjVoNE9HNzVyVEtSQ0NRLy9Td2hyS25iQjFoOVJ0Q2dWNjlSd0tMSUhxcXo0dGQ0V20wCkw0NmFtditjd0ZrVVdxOFRtdzNkR1NlV3AydURQcjVxSjVGWDlEdmZRWUNKSEVkNThnN2lESXdzMUd3VExKaTJ3L0J1QlEKbzB2MUw4dGo0eG1MTUxpcW1zdDZLRHM3cHBlOGpJYTgycHVTSUJ1ZWJ5Y3pKdXljcmNBQUFBd1FEbU5SV25qcisxWmJSdgpPRjJVT2hGQ2I2UVlpQkFsTzVuWVZQUnQ2amhMWmdvMjlkUVUwUmRnYzNObmtOdzY1ZFpQbnZVMTlaamkzcFBlRnVQczJQCnEyaDg1aFNCK3VRR3JodEovRGM2MU1ZS2k5cjkxQmtvd0ZHSDR3YW9mSUsyYmF1V2VFMGg3UFFmajhrSzZVbndLbnpPSTcKc1o2anJTZStxaHQwMzkxUzhTb2F1bkhnMXNsOTRYS092bG1RQUpQMHNuS2VMcGIyalZIR0ZTR0JRdG1GQUh2aXV6Zm5nUgpGc3hrd2ROSU1ERGxLNmxVMnFhbkppL0NBM0VOQldDLzhBQUFEQkFNbXoyUkVEbllkSjM0N2prWWFDNzNHdGtjWDZDN0NxCjZ6cGRXQkZ6Zjd0NkhJbzJMdUlPenVFa2IxV0VjOFZibTBHbTA1YkZ4YnFEYjF2OWpJRmErTG9qTHVOUmFoSEZHVFRRUDYKTk9DMzA2SDd2TWgwMStNUVJNaERKYW9GRlRRVy9uSVBIQldwcDVJNzFVN0FNa0d6cXJoWVU5dlVNSXBNS2taQUQyYWF3dwpreUp6eFZzTFhUQXhrT3BVU3lWZmJsZVBKZXJpVmIydmVXbm5RUmRnRm02empSeXpSTXlYODFkaldzelNDTVZUeWI2YW9GCjdBYjZPZzlib0lnRmVQU1FBQUFCTnpjR2hwYm5oQU1qWmxNR05pWkRrM05UZGxBUUlEQkFVRwotLS0tLUVORCBPUEVOU1NIIFBSSVZBVEUgS0VZLS0tLS0K"
              },
              "parameter": {
                "authentication_method": "\u9375\u8a8d\u8a3c(\u30d1\u30b9\u30d5\u30ec\u30fc\u30ba\u306a\u3057)",
                "host": "aap.example.com",
                "ansible_automation_controller_port": null,
                "execution_node": "False",
                "passphrase": null,
                "password": null,
                "remarks": null,
                "ssh_private_key_file": "aap_id_rsa",
                "user": "awx"
              }
            }
          ],
          "interface_info_ansible": {
            "parameter": {
              "ansible_automation_controller_port": "443",
              "ansible_automation_controller_protocol": "https",
              "authentication_token": "LwWw3dwoHGx19ZhP1YQZU0JdZzobFv",
              "delete_runtime_data": "True",
              "execution_engine": "Ansible Automation Controller",
              "organization_name": null,
              "proxy_address": null,
              "proxy_port": null,
              "representative_server": "aap.example.com"
            }
          }
        },
        "input_limit_setting": true
      },
      "message": "SUCCESS",
      "result": "000-00000",
      "ts": "2023-02-03T14:47:10.185Z"
    }
    
  • Results when execution fails

    リスト 5.26 Execution results(Failure)¶
    ...
    < HTTP/1.1 400 BAD REQUEST
    < Date: Thu, 18 Aug 2022 05:29:35 GMT
    < Server: Apache/2.4.37 (Red Hat Enterprise Linux) mod_wsgi/4.7.1 Python/3.9
    < Content-Length: 252
    < Connection: close
    < Content-Type: application/json
    <
    { [252 bytes data]
    * Closing connection 0
    {
      "data": null,
      "message": "Error message,
      "result": "Error code",
      "ts": "2022-08-18T05:29:35.643Z"
    }
    

5.2.4. Other restrictions / Remarks¶

5.2.4.1. Re-registering Ansible Automation Controller¶

In order to re-register the Ansible Automation Controller, edit the settings file and re-run the script.
リスト 5.27 Command¶
vi ./exastro-platform/tools/initial-settings-ansible.json
リスト 5.28 Command¶
./exastro-platform/tools/initial-settings-ansible.sh ./exastro-platform/tools/initial-settings-ansible.json
  • 前のトピックへ4. System status settings
  • 次のトピックへ6. Keycloak console
↑ Page Top
Copyright © 2019-2023 NEC Corporation サイト規約