8.4.18. ブートストラップマシンの作成
ブートストラップマシンを作成し、Red Hat OpenStack Platform (RHOSP) で実行するために必要なネットワークアクセスを付与します。Red Hat は、このプロセスを単純化するために実行する Ansible Playbook を提供しています。
前提条件
共通ディレクトリー内の
inventory.yaml
およびcommon.yaml
Ansible Playbook。- これらのファイルが必要な場合は、ネットワークリソースの作成からこれらのファイルをコピーします。
-
インストールプログラムが作成した
metadata.json
ファイルが Ansible Playbook と同じディレクトリーにあります。
手順
-
コマンドラインで、作業ディレクトリーを
inventory.yaml
およびcommon.yaml
ファイルの場所に変更します。 bootstrap.yaml
というローカルファイルに、以下のコンテンツを挿入します。例8.13
bootstrap.yaml
# Required Python packages: # # ansible # openstackclient # openstacksdk # netaddr - import_playbook: common.yaml - hosts: all gather_facts: no tasks: - name: 'Create the bootstrap server port' os_port: name: "{{ os_port_bootstrap }}" network: "{{ os_network }}" security_groups: - "{{ os_sg_master }}" allowed_address_pairs: - ip_address: "{{ os_subnet_range | next_nth_usable(5) }}" - ip_address: "{{ os_subnet_range | next_nth_usable(6) }}" - name: 'Set bootstrap port tag' command: cmd: "openstack port set --tag {{ cluster_id_tag }} {{ os_port_bootstrap }}" - name: 'Create the bootstrap server' os_server: name: "{{ os_bootstrap_server_name }}" image: "{{ os_image_rhcos }}" flavor: "{{ os_flavor_master }}" userdata: "{{ lookup('file', os_bootstrap_ignition) | string }}" auto_ip: no nics: - port-name: "{{ os_port_bootstrap }}" - name: 'Create the bootstrap floating IP' os_floating_ip: state: present network: "{{ os_external_network }}" server: "{{ os_bootstrap_server_name }}"
コマンドラインで Playbook を実行します。
$ ansible-playbook -i inventory.yaml bootstrap.yaml
ブートストラップサーバーがアクティブになった後に、ログを表示し、Ignition ファイルが受信されたことを確認します。
$ openstack console log show "$INFRA_ID-bootstrap"