Ansibleを使用してTomcatをバッチでデプロイする方法

Ansibleを使用してTomcatをバッチでデプロイする方法

1.1 ディレクトリ構造の構築

この操作は、nginx+mysql+tomcat+dbのディレクトリ構造をインストールするものです。参考にしてください。いいですね〜

mkdir -p /ansible/roles/{nginx、mysql、tomcat、db}/{デフォルト、ファイル、ハンドラ、メタ、タスク、テンプレート、変数}
  • デフォルト デフォルトの検索パス
  • タスク ストア プレイブック パス
  • ファイルはファイルとスクリプトパッケージを格納し、モジュールファイルの検索パスをコピーします
  • テンプレート テンプレート保存パス
  • ハンドラはいくつかのプレイブックのストレージパスの呼び出しを通知します
  • vars ロール変数の保存パス

1.2 ファイルディレクトリ構造

[root@qtbackup ~]# ツリー /ansible/
/アンシブル/
├── プレイブック
│ └── プレイブック.yml
├── 役割
│ ├── デシベル
│ │ ├── デフォルト
│ │ ├── ファイル
│ │ ├── ハンドラー
│ │ ├── メタ
│ │ ├── タスク
│ │ ├── テンプレート
│ │ └── 変数
│ ├── MySQL の
│ │ ├── デフォルト
│ │ ├── ファイル
│ │ ├── ハンドラー
│ │ ├── メタ
│ │ ├── タスク
│ │ ├── テンプレート
│ │ └── 変数
│ ├── nginx
│ │ ├── デフォルト
│ │ ├── ファイル
│ │ ├── ハンドラー
│ │ ├── メタ
│ │ ├── タスク
│ │ ├── テンプレート
│ │ └── 変数
│ └── トムキャット
│ ├── デフォルト
│ ├── ファイル
│ │ ├── apache-tomcat-8.0.29.tar.gz
│ │ ├── jdk-8u73-linux-x64.gz
│ │ ├── tomcat-initscript.sh
│ │ └── tomcat-users.xml
│ ├── ハンドラー
│ │ └── main.yml
│ ├── メタ
│ ├── タスク
│ │ └── main.yml
│ ├── テンプレート
│ │ └── tomcat-users.xml
│ └── 変数
├── ssh_key.sh ### sshkey スクリプトを自動配布します (以下に全文掲載します)
├── web.再試行
└── web.yml ####呼び出されたファイルの合計数: 34 ディレクトリ、11 ファイル
[root@qtbackup ~]#

1.3 ansibleディレクトリに一般呼び出しファイルを作成する

- hosts: bgo ####hostsで定義したホストグループ名です。単一ホストの場合はアドレスを直接記述できます。remote_user: root ####実行ユーザーロール: #####設定ファイルディレクトリの説明、今回はtomcatをインストールするので他はコメントアウトしてください。# - nginx
 # -mysql
  - トムキャット
 # - デシベル

1.4 Tomcatインストールプレイブックファイルを作成する

vim /ansible/roles/tomcat/tasks/main.yml

#これは、yumモジュールを使用してjdkをインストールします。必要に応じて、#- name: install javaを使用できます。
# yum: 名前=java-1.8.0-openjdk.x86_64 状態=存在

===============================================================
#ユーザー名:グループの作成
 グループ: 名前=tomcat
- 名前: ユーザー
 ユーザー: 名前=tomcat グループ=tomcat ホーム=/usr/tomcat
 sudo: 真

######################################このソース パッケージは JDK をインストールします###############################
#jdk を tmp ディレクトリにコピーします - 名前: copy jdk-8u73-linux-x64.gz
 コピー: src=jdk-8u73-linux-x64.gz dest=/tmp/jdk-8u73-linux-x64.gz
#jdk パッケージを /application に解凍します
- 名前: アーカイブjdkを抽出
 コマンド: /bin/tar xf /tmp/jdk-8u73-linux-x64.gz -C /application
#名前の変更 - 名前: java
 シェル: mv /application/jdk1.8.0_73 /application/java
#環境変数を追加 - 名前: add /etc/profile
 行入力ファイル: dest=/etc/profile regexp="^JAVA_HOME=" 行="JAVA_HOME=/application/java/"
- 名前: /etc/profile を追加
 行入力ファイル: dest=/etc/profile regexp="^CLASS_PATH=" 行="CLASS_PATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib"
- 名前: /etc/profile を追加
 行入力ファイル: dest=/etc/profile 正規表現="^PATH=\$PATH:\$JAVA_HOME" 行="PATH=$PATH:$JAVA_HOME/bin"
- 名前: /etc/profile を追加
 行入力ファイル: dest=/etc/profile regexp="^export JAVA_HOME" 行="export JAVA_HOME"

#############################tomcat をインストールします############################################
- 名前: tomcat_tar_gz をコピー
 コピー: src=apache-tomcat-8.0.29.tar.gz dest=/tmp/apache-tomcat-8.0.29.tar.gz
#tomcatをoptディレクトリに解凍 - 名前:アーカイブを抽出
 コマンド: /bin/tar xf /tmp/apache-tomcat-8.0.29.tar.gz -C /opt
#ソフトリンクを作成 - 名前: シンボリックリンクのインストールディレクトリ
 ファイル: src=/opt/apache-tomcat-8.0.29/ dest=/application/tomcat state=link
#ディレクトリ権限を付与 - 名前: Tomcat インストールの所有権を変更する
 ファイル: パス=/application/tomcat/ 所有者=tomcat グループ=tomcat 状態=ディレクトリ 再帰=yes
#プッシュ設定ファイル - 名前: Tomcat ユーザーの設定
 テンプレート: src=tomcat-users.xml dest=/application/tomcat/conf/
 通知: Tomcat を再起動
#Tomcatをインストールします。 init 起動スクリプト - 名前: Tomcat init スクリプトをインストールする
 コピー: src=tomcat-initscript.sh dest=/etc/init.d/tomcat mode=0755
#Tomcatを起動する
- 名前: Tomcatを起動
 サービス:名前=tomcat 状態=開始 有効=はい

1.5 通知経由でハンドラを呼び出す

- 名前: Tomcatを再起動 
 サービス:名前=tomcat 状態=再起動

1.6 構文チェック === インストールの実行

cd /ansible
ansible-playbook web.yml --syntax-check #構文をチェック ansible-playbook web.yml #実行

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • 集中管理プラットフォームAnsibleの詳しい説明
  • Ansible-playbookは、KVMの自動展開とpython3のインストールに関する詳細なチュートリアルを実装します。
  • Ansible で K8s クラスターをデプロイする方法
  • Ansible管理ツールの環境と導入のインストール

<<:  MySQL SQL文の特殊処理文のまとめ(必読)

>>:  Vue で動的に追加されたルーティング ページの更新時に失敗する理由と解決策

推薦する

Dockerコンテナのデータボリュームの詳細な説明

何ですかまず、Docker の概念を見てみましょう。アプリケーションと実行環境をコンテナにパッケージ...

HTMLでカスタムタグを使用する方法

カスタム タグは XML ファイルと HTML ファイルで自由に使用できますが、いくつか注意すべき点...

MySQL 8.0.17 をインストールしてリモート アクセスを構成する方法

1. インストール前の準備データベースのバージョンを確認するコマンド: mysql --versio...

Linux システム修復モード (シングル ユーザー モード)

目次序文1. シングルユーザーモードでの一般的なバグ修正2. シングルユーザーモードでシステムパスワ...

ApacheとTomcatを組み合わせて静的状態と動的状態を分離する方法

実験環境ApacheとTomcatは両方ともIPアドレス192.168.153.136のホストにイン...

MySQLでテーブルインデックスを構築する方法

目次複数の種類のフィルタリングをサポート複数の範囲のクエリを避ける並べ替えを最適化するインデックスの...

ウェブページ HTML 特殊記号 HTML 特殊文字比較表

特殊記号名前付きエンティティ10進数エンコード特殊記号名前付きエンティティ10進数エンコードアルファ...

Nodejs は readline を使用してコンテンツ入力を促すサンプルコード

目次序文1. batがjsを実行する2. ターミナルにバージョン番号を入力してパッケージ化コマンドを...

win2008R2 64 ビット システムでの mysql5.7.17 のインストールと構成の例

123WORDPRESS.COM では、さまざまな環境での MYSQL の他のバージョンのインストー...

Excel ファイルを MySQL データベースにインポートする方法

この記事では、ExcelファイルをMySQLデータベースにインポートする方法を参考までに紹介します。...

VMware 仮想マシンの 3 つの接続方法の例の分析

NATこのようにして、仮想マシンのネットワーク カードはホストの VMnet8 に接続されます。この...

Google ブラウザのラベルと入力間のスペースに関する小さな問題

最初にコード、次にテキストコードをコピーコードは次のとおりです。 <!DOCTYPE html...

MySQL サービスを起動できない問題の解決策を含む MySQL 5.7.17 インストール チュートリアル

.net 開発に関しては、Microsoft の SQL Server データベースに精通しており、...

角度コンテンツ投影の詳細な説明

目次単一コンテンツ投影マルチコンテンツ投影単一条件のコンテンツ投影アプリ-人物-htmlアプリ担当者...

MySql でメモリ使用量を削減する方法の詳細な説明

序文デフォルトでは、MySQL はデータベース クエリ データをキャッシュするために大きなメモリ ブ...