Ansibleは、オープンソースのソフトウェアプロビジョニング、構成管理、およびアプリケーション展開ツールであり、Infrastructure as Code(IaC)の方法でインフラストラクチャを管理できます。この記事では、UbuntuLinuxでのAnsibleのインストールと初期構成について説明します。

運用チームと管理者は、構成管理ツールを使用して、多数のサーバーの構成を管理する自動化プロセスを簡素化します。 Ansibleを使用すると、中央の場所から多数のシステムを制御できます。
利用できる最も一般的な構成管理ツールは次のとおりです。
- 人形
- シェフ
- Ansible
これがGoogleトレンドのグラフで、すべての検索ボリュームが示されています。
Ansibleは非常にシンプルなため、世界中の多くの人に人気のツールです。 YAMLファイルで記述された自動化タスクを実行するためにSSHを使用します。
Ansibleは、コンテナー化されたワークロードと、プライベートクラウドおよびパブリッククラウドへのインフラストラクチャ展開の自動化もサポートします。
アプリケーションの要件は関係ありません。 Ansibleは、すべてを作成、管理、および保守する責任を負います。
Ansibleの主な使用例は次のとおりです。
- プライベートインフラストラクチャとクラウド自動化: Ansibleは、ユーザーがストレージデバイス、ベアメタルサーバー、さらにはネットワークデバイスなどのさまざまな物理デバイスを処理できるようにする強力で便利なツールです。 AnsibleのPlaybookベースの自動化を使用して、既存のプロビジョニングインフラストラクチャと統合するのは簡単です。
- ITサービス管理: サービスリクエストを自動化し、IT資産構成に関する信頼できる唯一の情報源を提供することで、サービスプロセスをより迅速かつ効果的に最新化できます。
- 仮想化の自動化: Ansibleは、Vagrant、VMware、Red Hat仮想化(RHV)、vSphereなど、多くの主要な仮想化業界フレームワークをサポートしています。 Ansibleは仮想世界をプロビジョニングし、それらをオーケストレーションして任意の仮想環境にデプロイできます。
- コンテナの自動化: Ansibleは、Red Hat OpenShift Container Platformおよびその他のコンテナーテクノロジーをサポートし、ネイティブのKubernetesおよびDockerコンテナー管理を処理します。 Ansibleは、これらすべてのフレームワークでネイティブコマンドをラップし、ほとんどすべてを自動化できるようにします。
このガイドの次のパートでは、UbuntuシステムへのAnsibleのインストールと構成を確認します。
Ubuntu LinuxにAnsibleをインストールするには、次のコマンドを使用します:
sudo apt install ansible

Ansibleのインストールが成功したことを確認しましょう:
ansible --version

新しいサーバーまたはDockerコンテナにAnsibleをインストールする場合は、次のコマンドを実行してSSHキーを生成します。
ssh-keygen
Enterを押すことができます 質問に答えてデフォルトのSSHキー構成を続行するか、必要な変更を加えることができます。

SSH、その構成、および使用例について詳しく知りたい場合は、生産性を高めるために知っておく必要のあるSSH機能のトップ10の記事をお勧めします。
OpenSSHのセットアップ
サーバーまたはコンテナの自動化にAnsibleを使用する機能のロックを解除するには、SSHパッケージをインストールする必要があります。
sudo apt install openssh-server -y

サーバーのSSHサービスのステータスがアクティブであることを確認します :
sudo systemctl status sshd

sshd
を有効にすることもできます ステータスがアクティブでない場合のサービス 。
sudo systemctl start sshd
UFWファイアウォールを有効にした場合は、ホストへのSSHトラフィックを許可することを忘れないようにしてください。
sudo ufw allow ssh

次に、ansible
という名前の新しいユーザーを追加する必要があります 。
sudo adduser ansible
パスワード、氏名など、必要なすべての資格情報を入力します。
また、「 y」と入力します 正しい情報を提供した場合は、ターミナルで「」。

次に、ansible
のパスワードなしのアクセスを設定する必要があります ユーザーと彼は管理コマンドを実行する機能:
echo "ansible ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/ansible

ansible
を作成したホストIPアドレスを探します ユーザー:
hostname -I

パスワードなしの認証を可能にするために、Ansibleをインストールしたホストに公開SSHキーをコピーしましょう:
ssh-copy-id [email protected]

「-L」を使用します usermod
の‘オプション パスワードベースのログインを無効にするコマンド:
sudo usermod -L ansible

ansible
を使用してホストにSSHで接続してみましょう ユーザー。
パスワードは使用しないでください:
ssh [email protected]

それでは、Ansible自動化の準備ができていることをテストしましょう。
Ansible用の新しいディレクトリを作成する必要があります。
mkdir ~/ansible-demo

ansible-demo
にジャンプします ディレクトリ:
cd ~/ansible-demo/

hosts
を管理するホストのIPアドレスを追加します ファイル:
nano hosts

AnsibleホストIPを入力し、このファイルを保存しました:

最後に、Ansibleを使用してホストにpingを実行できます:
ansible all -i ./hosts -u ansible -m ping
SUCCESS
Ansibleホストへの正常に確立された接続を指します。別のケースでは、UNREACHABLE
システムがAnsible自動化のテストで問題を検出した場合に表示されます。

これで、Ansible自動化プレイブックの開発を開始してホスト構成を自動化できます。
この記事では、UbuntuにAnsibleをインストールしてセットアップするためのステップバイステップのプロセスを提供しました。これから、自動化プレイブックに取り組むことができます。
この記事がお役に立てば幸いです。もしそうなら、私たちがそれを世界に広めるのを手伝ってください。
ウィキメディアコモンズからAnsibleのロゴを取得しました。