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

Ansibleプレイブックを使用してソフトウェアパッケージをインストールする方法

Ansibleは、システム管理者や開発者がコンピューターを特定の状態にするために使用する一般的な自動化ツールです。 Ansibleモジュールは、ある意味で、Linuxコンピューターに対するコマンドです。これらは特定の問題の解決策を提供し、コンピューターを保守する際の1つの一般的なタスクは、コンピューターを最新の状態に保ち、一貫性を保つことです。この記事では、Ansibleを使用してソフトウェアパッケージをインストールする方法を紹介します。

要件

管理対象ノードでAnsibleアドホックコマンドとプレイブックを実行するには、SSHアクセス権を持つリモートユーザーが各管理対象ノードに必要です。 。この例では、そのユーザーを tuxと呼びます。 。 Tuxには、パッケージをインストールするための昇格された特権でコマンドを実行するためのアクセス許可が必要です。したがって、ファイル/etc/sudoers.d/tux 次のコンテンツがすべての管理対象ノードに存在する必要があります:

tux ALL=(ALL) NOPASSWD:ALL

visudoを使用する /etc/sudoersを編集するには ファイルエントリ。

パッケージのインストール

sysstatというクールな新しいパッケージを見つけたとします。 これで、すべてのホストに一度にインストールする必要があります。これはAnsibleにとって簡単な仕事です:

$ ansible all --user tux --become \
--module-name dnf -a’name=sysstat state=latest’

これで完了です。

[次のこともお勧めします:AnsiblePlaybookの作成方法]

その1行はAnsibleアドホックコマンドと呼ばれます。これらは通常、繰り返すことを期待しない1回限りのタスクです。ただし、再利用性を高めるために、次のように、そのような指示をAnsibleプレイブックに入れることをお勧めします。

---
- hosts: all
  tasks:
  - name: Make sure the current version of ‘sysstat’ is installed.
    dnf:
      name: sysstat
      state: latest

このプレイブックをinstall_packages.ymlというファイルに保存します 、その後、次のコマンドで実行できます:

$ ansible-playbook -u tux -b install_packages.yml

cronを使用してスケジュールに入れることができます 、誰かがパッケージを削除した場合に、目的のパッケージがインストールされ、再インストールされることを確認します。

複数のパッケージをインストールする

すべてのホストにパッケージのリストをインストールしたい場合はどうなりますか?それも簡単です:

---
- hosts: all
  tasks:
  - name: Package installation
    dnf:
      name:
        - sysstat
        - httpd
        - mariadb-server
      state: latest

プレイブックを実行する:

$ ansible-playbook -u tux -b install_packages.yml

きっとあなたはその考えを理解するでしょう。より多くのパッケージが必要ですか?それらをリストに追加するだけです。

まとめ

Ansibleを使用したソフトウェアの管理は非常に簡単です。 DNFモジュールを使用して実際のインストールを管理し、YAMLベースのAnsibleプレイブックを使用してインストール手順を管理対象ノードに配布できます。これは、Ansibleが多くのシステムを管理するシステム管理者の生活を楽にする方法のもう1つの優れた例です。

[この無料の電子書籍を入手する:ダミーのKubernetesクラスターを管理する。 ]


Linux
  1. AnsiblePlaybookの作成方法

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

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

  1. CentOS7にAnsibleをインストールする方法

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

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

  1. RHEL8にソフトウェアをインストールする方法

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

  3. apt-get を使用してローカルの .deb パッケージをインストールする方法