HTTP プロキシーにアクセスして OS ベンダーのソフトウェアをインストールする必要がある場合には、setup.sh
を実行する前に環境変数「HTTP_PROXY」が適切に設定されていることを確認してください。
Tower インストーラーは、HTTPS 通信ができるように自己署名の SSL 証明書と鍵ファイルを /etc/tower/tower.cert
と /etc/tower/tower.key
に作成します。これらは、インストール後に任意で独自のカスタム SSL 証明書と置き換えることができますが、ファイル名は同じままにしておく必要があります。
Ansible バージョン 1.8 以降を使用する場合には、Tower マシンの ansible.cfg
で、Redis を使用したファクトキャッシュが有効にされていないことを確認します。
Tower は、Ansible のソフトウェアリポジトリーや OS ベンダーのソフトウェアリポジトリーなど、信頼済みのサードパーティーが提供するソフトウェアをインストールできるようにインターネット接続のあるマシンからインストールを行う必要があります。場合によっては、Python Package Index (PyPI) にアクセスする必要がある場合があります。インターネット接続のない環境でインストールする必要がある場合は、バンドルのインストールプログラムは推奨のソリューションではありません (「バンドルの Tower インストールプログラムの使用」を参照)。Red Hat カスタマーポータル (https://access.redhat.com/) 経由で Ansible までお問い合せください。
OpenShift に Tower をインストールする場合は、「OpenShift Deployment and Configuration」を参照してください。
Ansible Tower インストーラーで使用可能なフラグや追加の変数には以下が含まれます (ただし、以下に限定されません)。
Usage: setup.sh [Options] [-- Ansible Options]
Options:
-i INVENTORY_FILE Path to ansible inventory file (default: ${INVENTORY_FILE})
-e EXTRA_VARS Set additional ansible variables as key=value or YAML/JSON
i.e. -e bundle_install=false will force an online install
-b Perform a database backup in lieu of installing.
-r Perform a database restore in lieu of installing.
-h Show this help message and exit
Ansible Options:
Additional options to be passed to ansible-playbook can be added following the -- separator.
--
のセパレーターおよび適用する Ansible の引数を使用します。例: ./setup.sh -i my_awesome_inventory.yml -e matburt_is_awesome=True -- -K
以下は一般的なシナリオ例です。個別のケースに適した値を指定するようにしてください。
**コアをアップグレードする方法*:
./setup.sh -e upgrade_ansible_with_tower=1
nginx で処理する https を無効化する方法:
./setup.sh -e nginx_disable_https=true
バックアップファイルから復元時にデフォルトではないパスを指定する方法:
./setup.sh -e 'restore_backup_file=/path/to/nondefault/location' -r
設定スクリプトに引数として渡すことで使用したインベントリーファイルを上書きする方法:
setup.sh -i <inventory file>
Tower は、留意すべき制限事項がいくつかありますが、FIPS モードが有効なシステムで実行できます。
Enterprise Linux 7 以降のみがサポートされています。Ansible Tower を FIPS モードで機能させるには、RHEL に同梱されている標準の Python を使用する必要があります。標準以外の Python を使用すると、Tower のシステム以外の Python もサポートされません。
デフォルトでは、Tower はパスワードベースの認証を使用して PostgreSQL を設定します。CREATE USER
がインストール時に実行されている場合には、このプロセスでは md5
を使用している必要があります。FIPS が有効なシステムから Tower のインストーラーを実行する予定の場合は、インストール時に md5
ハッシュをご自身で事前にコンピュートし、「 インベントリーファイルの設定 」で記載されているようにインベントリーファイルにその値を追加する必要があります。
具体的には、FIPS を有効化 *せずに * システムでハッシュ化された値を事前にコンピュートする必要があります:
$ python -c 'from hashlib import md5; print("md5" + md5("choose-a-password" + "awx").hexdigest())'
md57d08dde7e95e862eaadfff09565e92e6
...また、インベントリーファイルで pg_password
と pg_hashed_password
の 両方 を指定してください:
pg_password='choose-a-password'
pg_hashed_password='md57d08dde7e95e862eaadfff09565e92e6'
ssh-keygen` コマンドは、RFC4716 形式のキーを生成し、プロセスの特定の時点で (入力したパスフレーズに実行する変換の一部として) md5
ダイジェストアルゴリズムを使用します。FIPS が有効なシステムでは md5
が完全に無効になっているので、このタイプの暗号化された SSH キー (パスフレーズで保護されている RFC4716 プライベートキー) は使用できません。FIPS モードがう有効な場合には、Ansible Tower にインポートする暗号化された SSH キーは、 PKCS8
形式のキーを 使用する必要があります。既存の AES128
キーは、以下の``openssl`` コマンドを使用して PKCS8
に変換できます:
$ openssl pkcs8 -topk8 -v2 aes128 -in <INPUT_KEY> -out <NEW_OUTPUT_KEY>
詳細は : https://access.redhat.com/solutions/1519083 を参照してください。
TACACS+ プロトコルは md5
を使用して認証パケットのコンテンツを難読化します。FIPS モードが有効なシステムでは、「 TACACS+ Authentication 」はサポートされません。
RADIUS プロトコルは md5
を使用して Access-Request
クエリーのパスワードを暗号化します。「 RADIUS Authentication 」は、FIPS モードが有効なシステムではサポートされません。
PackageKit は頻繁に、インストール/更新メカニズムを干渉する可能性があります。設定プロセスの実行前にインストールする場合は、PackageKit を無効または削除することを検討してください。
「ターゲット」 SELinux ポリシーのみがサポートされます。ターゲットポリシーは、disabled、permissive または enforcing に設定可能です。
バンドルインストールを実行する場合は (詳細は「バンドルの Tower インストールプログラムの使用」を参照)、Red Hat Enterprise Linux をご利用のお客様は、デフォルトで無効になっている以下のリポジトリーを有効化する必要があります。
Red Hat Enterprise Linux 7 をお使いの場合は extras
リポジトリーを有効化する必要があります。
以下の手順は、リポジトリーへのアクセスの設定、以前のバージョンの Tower への Ansible のインストールに役立ちます。
EPEL リポジトリーおよびその他に必要なリポジトリーを設定します。
Red Hat Enterprise Linux 7 および CentOS 7 の場合には root ユーザーで実行します。
root@localhost:~$ yum install http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
注釈
extras
リポジトリーを有効化する必要がある場合もあります。CentOS 7 は extras
Red Hat Enterprise Linux 7 は rhel-7-server-extras-rpms
EC2 で実行する場合は rhui-REGION-rhel-server-extras
公式の Red Hat Enterprise Linux 7 マーケットプレース AMI を使用する場合は、オプションのリポジトリー (EC で rhui-REGION-rhel-server-optional
という名称) を有効化できる最新の rh-amazon-rhui-client
パッケージがインストールされていることを確認してください。
注釈
Tower は Ansible Playbook を使用してインストールされるので、Tower のインストールを完了するには Ansible が必要です。
Ansible Tower バージョン 2.3.0 以降は、Ansible が設定プロセスで自動的にインストールされます。
以前のバージョン(2.3.0 よりも前) の Tower を使用している場合は、Ansible は http://docs.ansible.com/intro_installation.html にある Ansible ドキュメントに詳細に説明されている方法でインストールしてください。
便宜上、これらのインストールの説明は以下のように簡単にまとめられています。
root@localhost:~$ yum install ansible
以下の手順は、リポジトリーへのアクセスの設定、以前のバージョンの Tower への Ansible のインストールに役立ちます。
root ユーザーで Ansible PPA を設定します。
root@localhost:~$ apt-get install software-properties-common
root@localhost:~$ apt-add-repository ppa:ansible/ansible
注釈
Tower は Ansible Playbook を使用してインストールされるので、Tower のインストールを完了するには Ansible が必要です。
Ansible Tower バージョン 2.3.0 以降は、Ansible が設定プロセスで自動的にインストールされます。
以前のバージョン(2.3.0 よりも前) の Tower を使用している場合は、Ansible は http://docs.ansible.com/intro_installation.html にある Ansible ドキュメントに詳細に説明されている方法でインストールしてください。
便宜上、これらのインストールの説明は以下のように簡単にまとめられています。
root@localhost:~$ apt-get update
root@localhost:~$ apt-get install ansible
OpenShift ベースのデプロイメントについては、「OpenShift デプロイメントおよび設定」を参照してください。