GNU/Linux >> Linux の 問題 >  >> Cent OS

RockyLinux8.3およびCentOS8にAnsibleAWXをインストールして構成する方法

AWXは「AnsibleWebeXecutable」の略で、Ansibleプロジェクトを簡単に管理および制御できる無料のオープンソースプロジェクトです。 AWXは、Webベースのユーザーインターフェイスと強力なREST APIを提供し、インベントリを他のクラウドソースと管理または同期し、アクセスを制御し、LDAPと統合できるようにします。

このチュートリアルでは、RockyLinux8.3およびCentOS8にDockerを使用してAWXAnsibleAWXをインストールする方法を示します。

前提条件

  • 4GB以上のRAMを搭載したRockyLinux8.3またはCentOS8サーバー。
  • rootまたはsudo権限を持つユーザーとしてログインします

開始する前に

次のコマンドを使用して、システムにEPELリポジトリを追加します。

dnf install epel-release -y 

次に、システムでAWXを実行するために必要ないくつかの追加パッケージをインストールする必要があります。次のコマンドですべてをインストールできます:

dnf install git gcc gcc-c++ ansible nodejs gettext device-mapper-persistent-data lvm2 bzip2 python3-pip -y 

すべてのパッケージがインストールされたら、次のステップに進むことができます。

DockerのインストールとDockerの作成

次に、DockerをインストールしてDockerコンテナ内でAWXを実行する必要があります。デフォルトでは、Dockerの最新バージョンはデフォルトのCentOS 8リポジトリで利用できないため、システムにDockerリポジトリを追加する必要があります。次のコマンドを使用して、Dockerリポジトリを追加できます。

dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo 

追加したら、次のコマンドを使用して最新の安定バージョンのDockerをインストールします。

dnf install docker-ce-3:18.09.1-3.el7 -y 

Dockerをインストールしたら、次のコマンドを使用して、どのバージョンのDockerがインストールされているかを確認します。

docker --version 

次のようなものが表示されます:

Docker version 19.03.7, build 7141c199a2
 

次に、Dockerサービスを開始し、次のコマンドを使用してシステムが再起動した後に開始できるようにします。

systemctl start docker
 systemctl enable docker 

次のコマンドを使用して、Dockerサービスのステータスを確認できます。

systemctl status docker 

次のようなものが表示されます:

? docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
   Active: active (running) since Wed 2020-03-11 02:36:04 EDT; 23min ago
     Docs: https://docs.docker.com
 Main PID: 5882 (dockerd)
    Tasks: 101
   Memory: 2.6G
   CGroup: /system.slice/docker.service
           ??5882 /usr/bin/dockerd -H fd://
           ??5899 containerd --config /var/run/docker/containerd/containerd.toml --log-level info
           ??8815 containerd-shim -namespace moby -workdir /var/lib/docker/containerd/daemon/io.containerd.runtime.v1.linux/moby/4b91575d64b1b>
           ??8847 containerd-shim -namespace moby -workdir /var/lib/docker/containerd/daemon/io.containerd.runtime.v1.linux/moby/0f36c9784f748>
           ??8894 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 80 -container-ip 172.18.0.5 -container-port 8052
           ??8899 containerd-shim -namespace moby -workdir /var/lib/docker/containerd/daemon/io.containerd.runtime.v1.linux/moby/47300ec1c26ff>
           ??8923 containerd-shim -namespace moby -workdir /var/lib/docker/containerd/daemon/io.containerd.runtime.v1.linux/moby/9827b9831fa5b>
           ??9631 containerd-shim -namespace moby -workdir /var/lib/docker/containerd/daemon/io.containerd.runtime.v1.linux/moby/166b153faa275>
 

次に、次のコマンドを使用してDockercomposeをインストールします。

pip3 install docker-compose 

インストールしたら、次のコマンドを使用してDocker構成バージョンを確認します。

docker-compose --version 

次の出力が表示されます:

docker-compose version 1.25.4, build unknown
 

最後に、次のコマンドを実行して、python3を使用するようにpythonコマンドを設定します。

alternatives --set python /usr/bin/python3 

Ubuntu20.04およびUbuntu21.04にGoogleChromeをインストールする方法

CentOS 8AnsibleAWXをインストールする

まず、次のコマンドを使用して、GitHubリポジトリから最新バージョンのAnsibleAWXをダウンロードします。

git clone https://github.com/ansible/awx.git 

次に、次のコマンドを使用してインベントリファイルを暗号化するための秘密鍵を作成します。

openssl rand -base64 30 

次の出力が得られます:

R + kbcDEUS8DlAftAbtWafVfLZ0lUy + Paqo3fEtep
 

:インベントリファイルに貼り付ける必要があるため、テキストエディタにコピーして貼り付けることで表示される秘密鍵を書き留めます。

次に、ディレクトリawx / Installer /に移動し、テキストエディタnanoを使用してインベントリファイルを編集します。 :

cd awx/installer/
 nano inventory 

次の行を変更します:

[all: vars] 
 dockerhub_base = ansible 
 awx_task_hostname = awx 
 awx_web_hostname = awxweb 
 postgres_data_dir = "/ var / lib / pgdocker" 
 host_port = 80 
 host_port_ssl = 443 
 docker_compose_dir = "~ / .awx / awxcompose" 
 pg_username = awx 
 pg_password = awxpass 
 pg_database = awx 
 pg_port = 5432 
 pg_admin_password = password 
 rabbitmq_password = awxpass 
 rabbitmq_erlang_cookie = cookiemonster 
 admin_user = admin 
 admin_password = password 
 create_preload_data = True 
 secret_key = R + kbcDEUS8DlAftAbtWafVfLZ0lUy + Paqo3fEtep 
 awx_official = true 
 awx_alternate_dns_servers = "8.8.8.8,8.8.4.4" 
 project_data_dir = / var / lib / awx / projects 
 

完了したら、ファイルを保存して閉じます。次に、Postgresのディレクトリを作成します:

mkdir /var/lib/pgdocker 

最後に、次のコマンドを実行してAWXをインストールします。

ansible-playbook -i inventory install.yml 

インストールが正常に完了すると、次の出力が表示されます。

skipping: [localhost]

TASK [local_docker : Load web image] **********************************************************************************************************
skipping: [localhost]

TASK [local_docker : Load task image] *********************************************************************************************************
skipping: [localhost]

TASK [local_docker : Set full image path for local install] ***********************************************************************************
skipping: [localhost]

TASK [local_docker : Set DockerHub Image Paths] ***********************************************************************************************
ok: [localhost]

TASK [local_docker : Create ~/.awx/awxcompose directory] **************************************************************************************
changed: [localhost]

TASK [local_docker : Create Docker Compose Configuration] *************************************************************************************
changed: [localhost] => (item=environment.sh)
changed: [localhost] => (item=credentials.py)
changed: [localhost] => (item=docker-compose.yml)
changed: [localhost] => (item=nginx.conf)

TASK [local_docker : Render SECRET_KEY file] **************************************************************************************************
changed: [localhost]

TASK [local_docker : Start the containers] ****************************************************************************************************
changed: [localhost]

TASK [local_docker : Update CA trust in awx_web container] ************************************************************************************
changed: [localhost]

TASK [local_docker : Update CA trust in awx_task container] ***********************************************************************************
changed: [localhost]

PLAY RECAP ************************************************************************************************************************************
localhost                  : ok=14   changed=6    unreachable=0    failed=0    skipped=95   rescued=0    ignored=0   
 

上記のコマンドは、AWXに必要なすべてのDockerコンテナを作成して起動します。次のコマンドを使用して、実行中のコンテナを確認できます。

docker ps 

次の出力が表示されます:

CONTAINER ID        IMAGE                        COMMAND                  CREATED              STATUS              PORTS                                                 NAMES
4b91575d64b1        ansible/awx_task:9.2.0       "/tini -- /bin/sh -c…"   About a minute ago   Up About a minute   8052/tcp                                              awx_task
9827b9831fa5        ansible/awx_web:9.2.0        "/tini -- /bin/sh -c…"   About a minute ago   Up About a minute   0.0.0.0:80->8052/tcp                                  awx_web
47300ec1c26f        postgres:10                  "docker-entrypoint.s…"   About a minute ago   Up About a minute   5432/tcp                                              awx_postgres
166b153faa27        ansible/awx_rabbitmq:3.7.4   "docker-entrypoint.s…"   About a minute ago   Up 58 seconds       4369/tcp, 5671-5672/tcp, 15671-15672/tcp, 25672/tcp   awx_rabbitmq
0f36c9784f74        memcached:alpine             "docker-entrypoint.s…"   About a minute ago   Up About a minute   11211/tcp                                             awx_memcached
 

Ubuntu20.04にLaravelをインストールする方法

SELinuxとファイアウォールの構成

デフォルトでは、SELinuxはCentOS 8で有効になっています。Docker環境でAWXが機能するように、SELinuxを無効にすることをお勧めします。次のファイルを編集して無効にできます:

nano /etc/sysconfig/selinux 

次の行を見つけます:

SELINUX=enforcing
 

そして、それを次の行に置き換えます:

SELINUX=disabled
 

完了したら、ファイルを保存して閉じます。次に、システムを再起動して変更を実装します。次に、firewalldを介したhttpおよびhttpsサービスを許可する必要があります。次のコマンドで許可できます:

firewall-cmd --zone=public --add-masquerade --permanent
 firewall-cmd --permanent --add-service=http
 firewall-cmd --permanent --add-service=https 

次に、firewalldサービスを再起動して、変更を適用します。

firewall-cmd --reload 

AWXWebインターフェイスアクセス

次に、Webブラウザーを開き、URL http://domain_or_server-ipを入力します。 AWXログインページに移動します:

インベントリファイルに設定した管理者のユーザー名とパスワードを入力し、[サインイン]ボタンをクリックします 。次のページにAWXのデフォルトのダッシュボードが表示されます。

結論

おめでとう! Rocky linux8.3およびCentOS8にDockerを使用してAWXを正常にインストールしました。これで、AWXWebインターフェイスを使用してAnsibleプロジェクトを簡単に管理および制御できます。

Ubuntu20.04にJavaをインストールして構成する方法


Cent OS
  1. Rocky Linux /Centos8でdockerをインストールして構成する方法

  2. Rocky Linux /Centos8にRedis6をインストールして構成する方法

  3. Rocky Linux /CentOS8にAnsibleをインストールして構成する方法

  1. Rocky Linux / Alma Linux /CentOS8にErlangをインストールする方法

  2. Rocky Linux / Alma Linux /Centos8にPodmanをインストールして使用する方法

  3. RockyLinux8およびCentOS8にMonoをインストールして構成する方法

  1. RHEL 8 / CentOS8LinuxシステムにRをインストールして構成する方法

  2. Dockerを使用してAnsibleAWXをインストールする方法-CentOS8で作成

  3. CentOS8LinuxにAnsibleをインストールする方法