GNU/Linux >> Linux の 問題 >  >> Debian

Debian10にAnsibleAWXをインストールする方法

Ansibleは、ソフトウェアプロビジョニング、構成管理、およびアプリケーションの展開に使用されるオープンソースの自動化ツールです。複数のシステムにアプリケーションを自動的にインストール、構成、展開できます。

AWXは、Ansibleを制御するために使用されるWebベースのアプリケーションです。 Ansibleプレイブック、インベントリ、シークレット、およびスケジュールされたジョブをAWXWebインターフェイスから管理できます。

機能

  • AWS、Azure、GCPなどの複数のクラウドをサポートする
  • ユーザーアクティビティの追跡
  • 効率とセキュリティの向上
  • ユーザーの役割ベースのアクセス制御と認証
  • ジョブスケジューリング
  • 統合通知

この投稿では、Debian10サーバーにAWXをインストールする方法を紹介します。

前提条件
  • Debian10を実行しているサーバー。
  • ルートパスワードがサーバーに設定されます。
はじめに

まず、次のコマンドを使用して、すべてのシステムパッケージを最新バージョンに更新します。

apt-get update -y

すべてのパッケージが更新されたら、次のコマンドを使用して他の必要なパッケージをインストールします。

apt-get install apt-transport-https ca-certificates software-properties-common unzip gnupg2 curl git -y

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

Ansibleをインストール

次に、システムにAnsibleをインストールする必要があります。デフォルトでは、Ansibleの最新バージョンはDebian10リポジトリに含まれていません。したがって、AnsibleリポジトリをAPTに追加する必要があります。次のコマンドで追加できます:

echo "deb http://ppa.launchpad.net/ansible/ansible/ubuntu bionic main" | tee /etc/apt/sources.list.d/ansible.list

リポジトリが追加されたら、次のコマンドを使用してGPGキーを追加します。

apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367

次に、リポジトリを更新し、次のコマンドを使用して最新バージョンのAnsibleをインストールします。

apt-get update -y
apt-get install ansible -y

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

ansible --version

次の出力が得られるはずです:

ansible 2.9.19
  config file = /etc/ansible/ansible.cfg
  configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/dist-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.16 (default, Oct 10 2019, 22:02:15) [GCC 8.3.0]

この時点で、Ansibleがシステムにインストールされています。これで、次のステップに進むことができます。

DockerとDockerComposeをインストールする

次に、DockerとDockerComposeをシステムにインストールする必要があります。デフォルトでは、最新バージョンのDockerはDebian10のデフォルトリポジトリでは利用できません。そのため、DockerCEリポジトリをシステムに追加する必要があります。まず、次のコマンドを使用してDockerキーとリポジトリを追加します。

curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"

次に、リポジトリを更新し、次のコマンドを使用してDockerCEをインストールします。

apt-get update -y
apt-get install docker-ce -y

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

docker --version

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

Docker version 20.10.5, build 55c4c88

次に、最新バージョンのDockerComposeをシステムにインストールする必要があります。次のコマンドを使用して、DockerComposeバイナリをダウンロードできます。

curl -s https://api.github.com/repos/docker/compose/releases/latest | grep browser_download_url | grep docker-compose-Linux-x86_64 | cut -d '"' -f 4 | wget -qi -

ダウンロードが完了したら、次のコマンドを使用して適切な権限を設定します。

chmod +x docker-compose-Linux-x86_64

次に、次のコマンドを使用して、DockerComposeバイナリをシステムパスに移動します。

mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose

次に、次のコマンドを使用してDockerComposeのバージョンを確認します。

docker-compose version

次の出力が得られるはずです:

docker-compose version 1.28.5, build c4eb3a1f
docker-py version: 4.4.4
CPython version: 3.7.10
OpenSSL version: OpenSSL 1.1.0l  10 Sep 2019

この時点で、DockerとDockerComposeがシステムにインストールされます。これで、次のステップに進むことができます。

Node.jsとNPMをインストールします

次に、Node.jsとNPMをシステムにインストールする必要があります。次のコマンドを使用して、Node.jsとNPMをインストールできます。

apt-get install nodejs npm -y
npm install npm --global

次に、次のコマンドを使用して他のPython依存関係をインストールします。

apt-get install python3-pip git pwgen -y

次に、次のコマンドを使用して、DockerComposeのバージョンと一致するDockerComposeモジュールをインストールします。

pip3 install docker-compose==1.28.5

終了したら、次のステップに進むことができます。

:1.28.5がシステムにインストールされているDockerComposeのバージョンと一致していることを確認してください。

AWXをインストール

次に、システムにAWXをインストールする必要があります。まず、次のコマンドを使用してGitHubリポジトリからAWXをダウンロードします。

wget https://github.com/ansible/awx/archive/17.1.0.zip

ダウンロードが完了したら、次のコマンドを使用してダウンロードしたファイルを解凍します。

unzip 17.1.0.zip

次に、次のコマンドを使用して、ディレクトリをインストーラに変更します。

cd awx-17.1.0/installer/

次に、次のコマンドを実行してシークレットキーを生成します。

pwgen -N 1 -s 30

次の出力が得られるはずです:

3BgGA8MnM4gKTXV8r7vQhwjjNixO6o

次に、インベントリファイルを編集し、管理者のユーザー名、パスワード、秘密鍵を定義します。

nano inventory

次の行を変更します:

admin_user=admin
admin_password=securepassword
secret_key=3BgGA8MnM4gKTXV8r7vQhwjjNixO6o

終了したらファイルを保存して閉じ、次のコマンドを実行してAWXをインストールします。

ansible-playbook -i inventory install.yml

AWXが正常にインストールされると、次の出力が得られます。

changed: [localhost]

TASK [local_docker : Create Docker Compose Configuration] *************************************************************************************
changed: [localhost] => (item={u'mode': u'0600', u'file': u'environment.sh'})
changed: [localhost] => (item={u'mode': u'0600', u'file': u'credentials.py'})
changed: [localhost] => (item={u'mode': u'0600', u'file': u'docker-compose.yml'})
changed: [localhost] => (item={u'mode': u'0600', u'file': u'nginx.conf'})
changed: [localhost] => (item={u'mode': u'0664', u'file': u'redis.conf'})

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

TASK [local_docker : Remove AWX containers before migrating postgres so that the old postgres container does not get used] ********************
ok: [localhost]

TASK [local_docker : Run migrations in task container] ****************************************************************************************
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]

TASK [local_docker : Wait for launch script to create user] ***********************************************************************************
ok: [localhost]

TASK [local_docker : Create Preload data] *****************************************************************************************************
changed: [localhost]

PLAY RECAP ************************************************************************************************************************************
localhost                  : ok=21   changed=12   unreachable=0    failed=0    skipped=73   rescued=0    ignored=1   

この時点で、AWXがシステムにインストールされています。これで、AWXWebUIへのアクセスに進むことができます。

AnsibleAWXにアクセス

次に、Webブラウザーを開き、URL http:// your-server-ipを使用してAnsibleAWXWebインターフェースにアクセスします。 。 AWXログインページにリダイレクトされます:

管理者のユーザー名とパスワードを入力し、ログをクリックします ボタン。次のページにAnsibleAWXダッシュボードが表示されます。

結論

おめでとう!これで、Debian10サーバーにAnsibleAWXが正常にインストールされました。 AWXダッシュボードから、Ansibleプレイブック、インベントリ、およびジョブを簡単に管理できるようになりました。ご不明な点がございましたら、お気軽にお問い合わせください。


Debian
  1. Debian11にDockerの代替としてPodmanをインストールする方法

  2. Debian10にAnsibleをインストールする方法

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

  1. Debian10BusterにDockerをインストールする方法

  2. Debian10にosqueryをインストールする方法

  3. DockerEngineをDebian11にインストールする方法

  1. CentOS8にAnsibleAWXをインストールする方法

  2. PHP8をDebian11にインストールする方法

  3. Debian11にGitLabをインストールする方法