Ansibleを使用してUbuntu20.04にTomcatをインストールする方法

Apache Tomcatはよく使用されます アプリケーション・サーバー 厳密にWebベースのアプリケーション用。 基本的にJavaサーブレットを実行し、JSPコーディングを含むWebページをレンダリングします。

Tomcatへの手動インストールには時間がかかります。 Ansibleを使用すると、インストールプロセスを簡単に自動化できます。

このチュートリアルでは、 Tomcatをインストールします の上 Ubuntu 20.04使用 Ansible

前提条件:

ここで使用します:

  • 1つの制御ノード –ansibleをインストールして構成する場所。 コントロールノードから、Tomcat9をインストールするためのAnsibleプレイブックを起動します。
  • あなたはオープンである必要があります SSH接続 リモートホストに。
  • 1つのホストノード –ansibleがTomcat9をインストールして起動する場所。
  • 制御ノードとホストの両方にプライベートIPアドレスがあり、両方のマシンはUbuntu20.04です。

Ubuntu20.04のコントロールノードにAnsibleをインストールする

まず、標準コマンドでシステムを更新します。

$ sudo aptアップデート

アップデート後、次のコマンドを実行してansibleをインストールします。

$ sudo apt install ansible -y

ansibleがインストールされ、配置されている場所を確認するには、次のコマンドを実行します。

$ which ansible

次のように表示されます。

Ansibleファイルシステムの場所

/ usr / binにディレクトリをリストする場合

$ ls /usr/bin

Ansibleがインストールされたパッケージが見つかります:

/ usr / binにインストールされたAnsibleパッケージAnsibleでインストールされたパッケージ

インストールされているAnsibleのバージョンを確認するには、次のコマンドを実行します。

$ ansible --version

次のような出力が得られます。

ansible 2.9.6
config file = /etc/ansible/ansible.cfg
configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3/dist-packages/ansible
executable location = /usr/bin/ansible
python version = 3.8.5 (default, Jan 27 2021, 15:41:15) [GCC 9.3.0]

あなたがansibleバージョンのほかに見ることができるように、あなたはまた得るでしょう:

  • ansible設定ファイルはどこに配置されますか
  • 構成された検索パスとモジュールはどこに配置されますか
  • AnsiblePythonモジュールの場所はどこですか
  • 実行可能ファイルの場所とPythonバージョン

メインの構成ファイルはに保存されます / etc / ansible / hosts ファイル。

ローカルホストまたはサーバーのIPをファイルに追加する必要があります。または、プライベートIPアドレスがある場合は、それを追加する必要があります。

お気に入りのエディタでhostsファイルを開きます。

$ sudo nano /etc/anisble/hosts

次のようなホスト構成ファイルが表示されます。

/ etc / ansible / hostsでのAnsibleホストの構成ファイル/ etc / ansible / hosts

ご覧のとおり、に属するセクションがあります #例1 セクションに、リモートホストのIPアドレスを追加せずに追加します表現。

次に、このIPのアドレスを持つホストがあることを確認するには、次のコマンドを実行します。

$ sudo ansible all -i hosts --list-hosts

次のようなホストのリストが画像に表示されます。

Ansibleホストの出力anisbleホストのリスト

次のステップは、Ansibleコントロールノードからリモートホストマシンに公開SSHキーを追加することです。
この手順は、AnsibleがリモートサーバーにTomcatをインストールできるようにするために不可欠です。

次のコマンドでsshキーを生成します。

$ sudo ssh-keygen

キーを生成すると、キーが保存されている場所がわかります。 私たちにとって重要なのは公開鍵だけです。

SSHkypsの生成生成されたSSHキー

次に、公開鍵をサーバーにコピーする必要があります。 AnsibleがコントロールノードからリモートサーバーにTomcatをインストールできるようにする必要があるため、これを行っていることを忘れないでください。

ノート: 公開鍵のみがサーバーにコピーされます。 秘密鍵を別のマシンにコピーしないでください。

次のようなコマンドを使用して、SSHキーをコピーします。

$ sudo ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]

SSHリモートログインのuser = linoxideおよびhost = IPアドレスはどこにありますか。

キーをリモートマシンにコピーした後、リモートssh接続用のパスワードを入力する必要があります。

これですべてが設定され、ansible-playbookを実行する準備が整いました。

Ansibleを使用してリモートホストノードにTomcat9をインストールします

今すぐに行きます / etc / ansible そこにというファイルを作成します tomcat-setup.yaml。 あなたはからファイルを見てコピーすることができます Githubリポジトリ

— –name:Tomcatサーバーホストのインストール:すべてになる:trueタスク:-name:OpenJDKのインストールapt:name:openjdk-11-jre-headless –name:tomcatサーバーパッケージのダウンロードget_url:url:http:// mirrors。 estointernet.in/apache/tomcat/tomcat-9/v9.0.44/bin/apache-tomcat-9.0.44.tar.gz dest:/ usr / local-名前:tomcatパッケージの抽出unarchive:src:/ usr / local / apache-tomcat-9.0.44.tar.gz dest:/ usr / local remote_src:yes –name:start tomcat services shell:nohup /usr/local/apache-tomcat-9.0.44/bin/startup.sh

tomcat-setup.yamlファイルからわかるように、4つのタスクがあります。

1) OpenJDKをインストールします
2) Tomcatサーバーパッケージをダウンロードして、宛先の場所に配置します。
3) ソースから宛先の場所にTomcatパッケージを抽出します。
4) startup.shスクリプトを使用してTomcatサービスを開始します

次のコマンドでansible-playbookを起動します。

$ sudo ansible-playbook -i hosts tomcat-setup.yaml

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

Ansibletomcat-setup.yamlの出力ステータスansibletomcat-setup.yamlステータス

すべてが大丈夫であることを確認した後。 リモートホストマシンに移動します そして、JAVAがインストールされていることを確認し、Tomcatサービスが次のコマンドで実行されているかどうかを確認します。

$ sudo java -version

出力:

リモートホスト上のJavaバージョンリモートホスト上のJavaバージョン

そして、Tomcat 9が正しくダウンロードされ、次のコマンドで起動されているかどうかを確認します。

$ ps -ef | grep tomcat

出力:

Tomcatサービスステータス リモートホストのTomcatサービスステータス

上のサーバーURLにアクセスします ポート8080 Tomcat9のインストールと構成をテストします。

Tomcat Webサーバー:

https://<domain_or_IP_address>:8080

Tomcat Webアプリケーションマネージャーダッシュボード:

https://<domain_or_IP_address>:8080/manager/html

Tomcat仮想ホストマネージャーダッシュボード:

https://<domain_or_IP_address>:8080/host-manager/html

これで、Ubuntu 20.04Linuxマシンで実行されているTomcat9サーバーにアプリケーションをデプロイできるようになります。

結論

このチュートリアルでは、リモートノードでAnsibleを使用してTomcat9をインストールする方法を学びました。 これは example 制御ノードから単一のホストノードにTomcatサーバーをインストールする方法について説明します。 Ansibleを使用すると、必要な数のホストノードに必要な数のTomcatサーバーをインストールできます。