LoginSignup
1
3

More than 3 years have passed since last update.

JenkinsにAnsibleプラグインをインストールし、ジョブ実行する

Last updated at Posted at 2020-08-06

概要

JenkinsにAnsibleプラグインをインストールすることにしたので、
備忘録として残します。

実行環境

OS:CentOS8
Jenkinsバージョン:2.235.3

Jenkinsインストール

以下を参考にしてみてください。
CentOs8 jenkinsをインストールする方法

Ansibleプラグインインストール

まずは、Jenkins画面を開き、ログインする。
ログイン後、「Jenkinsの管理」
image.png

→「プラグインの管理」を選択
image.png

→「利用可能」の検索欄で「ansible」と入力
 インストールのチェック欄にチェックを入れ、「再起動せずにインストール」ボタンを押下
image.png

インストール完了後、「ページの先頭へ戻る」ボタンを押下

Jenkinsで実行用のAnsiblePlayBook作成

以下で作成したPlayBookをそのまま使用していこうと思います。
CentOS8にAnsibleをインストールしてみた

ただし、今回はパスワード入力を省略させるため、
iniファイルにパスワードに関する情報は書き込んでしまいます。

ansible/ini/master.ini

cd <任意のフォルダ>/ansible
mkdir ini
ls -ltr
→iniフォルダが作成されていること

cd ini
vim master.ini

#以下を追記
[server]
VMローカルIP

[server:vars]
ansible_user=<ansibleを実行するユーザ名>
ansible_ssh_pass=<ansibleを実行するユーザにsshログインするためのパスワード>

また、fingerprintエラー対策として、以下を実施。
※セキュリティ的にオススメできないため、別途対策を検討予定
※以下を参考にさせていただきました。
Ansible のインストールと管理対象サーバへの接続設定メモ

/etc/ansible/ansible.cfg

#バックアップ取得
cp -p /etc/ansible/ansible.cfg /etc/ansible/ansible.cfg_org_bk
ls -ltr /etc/ansible/ansible.cfg*
→バックアップが作成されていること

vim /etc/ansible/ansible.cfg

#以下設定追加
#↓デフォルト
#ssh_args = -C -o ControlMaster=auto -o ControlPersist=60s
#↓こちらを追加
ssh_args = -o ControlMaster=auto -o ControlPersist=60s -o StrictHostKeyChecking=no

Jenkins Job作成・実行

Jenkinsにログインしていることを前提で書きます。

  • 「新規ジョブ作成」ボタンを押下
    image.png

  • item nameをつけて、「フリースタイル・プロジェクトのビルド」を選択して、OKボタンを押下
    image.png

  • 「ビルド」→「シェルの実行」を選択
    image.png

  • Ansibleコマンドを入力

cd <任意のフォルダ>/ansible
ansible-playbook -i ini/master.ini ansible-test.yml

image.png

  • 保存ボタンを押下し、「ビルド実行」ボタンを押下 image.png

「最新のビルド」→「コンソール出力」を押下
→ローカルで実行した結果を同じ出力がされていることを確認

終了

まとめ

Jenkins、Ansible両方とも無料で使えるものなので、使ったことがない方はぜひ1度使ってみてください。

1
3
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3