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

Ansible AWXガイド:基本的な使用法と構成

AWXは、Ansibleのユーザーインターフェイス、REST API、およびタスクエンジンを提供するオープンソースのWebアプリケーションです。これは、AnsibleTowerのオープンソースバージョンです。 AWXを使用すると、Ansibleのプレイブック、インベントリを管理し、Webインターフェイスを使用して実行するジョブをスケジュールできます。

このチュートリアルでは、AnsibleAWXの基本的な使用法を示します。そのため、AnsibleAWXが既にインストールされているサーバーが必要です。セットアップのクレデンシャル、インベントリ、セットアップと実行のジョブテンプレートなど、知っておく必要のあるAnsible AWXの基本的な構成について説明します。Ansibleをまだインストールしていない場合は、次のチュートリアルをご覧ください:https://www.howtoforge .com /how-to-install-ansible-awx-with-nginx-reverse-proxy-on-ubuntu-1804/。

前提条件

  • 2台または3台のサーバー
    • 10.5.5.20 ansible-awx
    • 10.5.5.21 lemp
  • Ansibleに関する基本的な理解
  • root権限

私たちが行うこと:

  1. 環境のセットアップと構成
  2. クレデンシャルの設定
  3. 在庫の設定
  4. プロジェクトの設定
  5. ジョブテンプレートの設定
  6. ジョブの実行
ステップ1-環境のセットアップと構成

このチュートリアルでは、AnsibleAWXダッシュボードを考慮した基本的なLEMPインストール用のAnsibleプレイブックをデプロイして実行します。

awx自体とターゲットマシン用に2つのサーバーがあります。

10.5.5.20   ansible-awx
10.5.5.21   lemp

次に、「hakase」というユーザーとして、キーベースのSSH認証を使用してPlaybookをデプロイします。したがって、ターゲットマシンの「lemp」でユーザーとキーベースの認証をすでに設定していることを確認してください。

' ansible-awxから次のコマンドを使用してテストします 'サーバー。

su - hakase
ssh [email protected]

パスワードなしでログインしていることを確認してください。

ここで、「hakase」ユーザーは、タスクを実行するためにrootをパスワードなしで使用する必要があります。

ターゲットマシン上で'lemp '、以下のようにsudoコマンドを実行します。

su - hakase
sudo su

パスワードなしでroot権限を入力したことを確認してください。

次に、Ansibleによって管理されているすべてのターゲットマシンにPythonパッケージをインストールする必要があります。

sudo apt install python -y

ステップ2-クレデンシャルを設定する

まず、AnsibleAWXクレデンシャルを構成する必要があります。これは、管理対象サーバーに対してジョブを起動および実行するときの認証、インベントリソースとの同期、およびプロジェクトのインポートに使用されます。

デフォルトでは、Ansible AWXは、SSH認証によるVMマシン、Amazon Web Services、Google Compute Engine、OpenStack、Vaultパスワード、ソースコントロールなど、多くのクレデンシャルをサポートしています。

クレデンシャルを設定するには、[クレデンシャル]をクリックします 左側の'メニューをクリックし、'+'をクリックします 右側のボタン。

次に、資格情報' NAMEを入力します 'および'説明 '、次に' CREDENTIAL TYPEを指定します 'から'マシン '。

簡単に言うと、「マシン」クレデンシャルを使用すると、SSH認証を使用してサーバーを管理できます。パスワードとキーベースの認証の両方をサポートします。

このガイドでは、キーベースの認証を使用します。したがって、ユーザー名を入力して、そのユーザーの秘密鍵を貼り付けます。

次に、[保存]をクリックします 'ボタン。

その結果、新しいAnsibleAWXクレデンシャルタイプ「Machine」が作成されました。

ステップ3-インベントリの設定

インベントリは、AnsibleAWXによって管理されるホストサーバーのグループです。インベントリを使用すると、複数のホストサーバーを含むグループを作成できます。また、さまざまな環境でさまざまなサーバーを管理しやすくなります。

サーバーを管理およびプロビジョニングするには、新しいインベントリグループを作成してから、そのインベントリグループにサーバーホストを追加する必要があります。

新しいインベントリを追加するには、[インベントリ]をクリックします 左側の'メニューをクリックし、'+'をクリックします ボタンをクリックして、[在庫]を選択します。

'名前を入力します 'および'説明 インベントリの「」をクリックし、「保存」をクリックします 'ボタン。

次に、[ホスト]をクリックします 'タブをクリックし、'+'をクリックします ボタンをクリックして新しいホストを追加します。

'ホスト名を入力します '、'説明 '、および'変数 'ターゲットマシンのIPアドレス'ansible_host:10.5.5.21'の追加構成。

次に、[保存]をクリックします 'ボタン。

次に、pingコマンドを使用してホストを確認し、ホストの構成を確認する必要があります。

'ホストに戻る []タブで、ホストの名前サーバーにチェックマークを付け、[コマンドの実行]をクリックします。 'ボタン。

次に、「モジュール」を選択します 'と呼ばれる'ping '、' MACHINE CREDENTIAL内の検索ボタンをクリックします 'および'SELECT '自分で、'起動をクリックします 'ボタン。

そして、新しいページにリダイレクトされ、以下が結果です。

新しいインベントリが作成され、ターゲットマシンサーバーが追加されました。

ステップ4-プロジェクトのセットアップ

プロジェクトは、AWXではAnsiblePlaybookとして表されます。ローカルプロジェクトディレクトリを介して、またはGit、Subversion、Mercurial、RedHatInsightsなどのSCMシステムを使用して管理できるAnsiblePlaybookのコレクション。

新しいプロジェクトを作成するには、[プロジェクト]をクリックします 左側の'メニューをクリックし、'+'をクリックします ボタン。

'名前を入力します 'プロジェクトの'と'説明 '、次に'SCMタイプを選択します 'から'Git 'そしてプレイブックリポジトリを貼り付けます。

次に、[保存]をクリックします 'ボタンをクリックすると、その結果、プレイブックの新しいプロジェクトが作成されました。

さらに:

SCMタイプ'手動で新しいプロジェクトを作成する場合 '、' / var / lib / awx / projectsの下にある新しいプレイブックディレクトリを作成できます 'ディレクトリ。

' project_data_dir でAWXdockerバージョンを使用している場合、'/ var / lib / awx/projects'ディレクトリはAnsibleプレイブックのデフォルトのプロジェクトディレクトリです。 '有効。

ステップ5-新しいジョブテンプレートを作成する

ジョブテンプレートは、Ansibleプレイブック自体を実行するための定義です。したがって、新しいジョブテンプレートを作成したり、ジョブテンプレートを実行したりするには、「プロジェクト」、認証用の「クレデンシャル」、および「インベントリ」に保存されているターゲットマシンからAnsibleプレイブックを追加する必要があります。

>

このガイドでは、新しいプロジェクト、資格情報、およびインベントリをすでに作成しています。したがって、[テンプレート]をクリックするだけです。 '左側のメニューをクリックし、'+'をクリックします ボタンをクリックして、[ジョブテンプレート]を選択します 'オプション。

次に、「名前」と入力する必要があります 'および'説明 '仕事の。次に、「在庫」を選択します '、'クレデンシャル '、および'プロジェクト '。その後、「 PLAYBOOK」を指定します '実行してデプロイしたい。

その結果、新しいジョブテンプレートAnsibleAWXが作成されました。

ステップ6-ジョブテンプレートを実行する

新しいジョブテンプレートを作成したら、ジョブテンプレートを実行し、Playbooksの「プロジェクト」を「インベントリ」上のターゲットホストにデプロイします。

'テンプレートをクリックします 左側の[メニュー]をクリックすると、使用可能なジョブテンプレートのリストが表示されます。

ジョブが完了すると、ジョブテンプレート名の中に緑色の記号が表示されます。

ジョブテンプレート名の内側にある緑色の記号をクリックすると、そのジョブの実際の結果が表示されます。

ジョブは正常に完了し、ターゲットマシンはAnsibleAWXを介してLEMPスタックにインストールされました。

ステップ7-ターゲットマシンのテスト

ターゲットマシンのドメイン名をテストします。 ' roles / web / vars / main.ymlに保存されているドメイン名の構成 '構成。

systemctlコマンドを使用してNginxおよびPHP-FPMサービスを確認します。

systemctl status nginx
systemctl status php7.2-fpm

ターゲットマシンでMySQLデータベースをテストします。 'roles / db / vars/main.yml'構成ファイルに保存されているMySQLデータベースの詳細構成。

その結果、LEMPスタックはAnsibleAWXを介してターゲットマシンにインストールされました。


Linux
  1. Ubuntu16.04Linuxでの基本的なPHP7とNginxの構成

  2. cp および mv での Linux ワイルドカードの使用

  3. tmpfs の使用とサイズ変更

  1. Apache with Tomcat、ステップバイステップのインストールおよび構成ガイド

  2. 方法:DRBDのレプリケーションと構成

  3. Samba 初心者向けガイド (インストールと構成)

  1. AWXGUIを使用してAnsiblePlaybookを実行およびスケジュールする方法

  2. CSFファイアウォールのインストールおよび使用ガイド

  3. yum 設定の初心者向けガイド