こしぞーのひとり情シス

Windows/仮想化の小規模環境を運用するリーマンの日々。

[Ansible]ノートPC Hyper-V 上のCentOS7.5にAnsibleインストール

f:id:bfx62324:20181014162129p:plain

Ansibleは今や自動化のデファクトスタンダードです

  • 簡単(Simple)
  • 強力(Powerfull)
  • SSHが届けば操作可能(Agent Less)
  • Play book

4点揃っていて、Ansible環境が持ち運べれば どこでも自動化が可能 というわけです
WindowsでAnsible実行環境を用意する方法もありますが今回はWindows10のHyper-V上にCentOSにインストールしてしまおうと思います
昨今のWindowsノートPCもスペックが上がって、複数のLinux/Windowsを動作させても軽快に動きますし

準備

Hyper-V機能を有効化します

www.hitoriit.com

Hyper-V上にCentOSをインストールします

www.hitoriit.com

CentOS7.5をインターネット接続可能な状態にします

www.hitoriit.com

ゲストOSのCentOS7.5にAnsibleインストール

さぁ、Ansibleをインストールしていきましょう

手順は非常に簡単です

Pythonバージョン確認

python --version でインストールバージョンを確認

[root@centos75 ~]# python --version
Python 2.7.5
[root@centos75 ~]#

Ansibleインストール

AnsibleはYUMに入っていないので、EPEL(Extra Packages for Enterprise Linux)からインストールします

コマンド yum install -y epel-release を実行

[root@centos75 ~]# yum install -y epel-release
読み込んだプラグイン:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: ftp.riken.jp
 * extras: ftp.riken.jp
 * updates: ftp.riken.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ epel-release.noarch 0:7-11 を インストール
--> 依存性解決を終了しました。

依存性を解決しました

=================================================================================================================
 Package                        アーキテクチャー         バージョン               リポジトリー              容量
=================================================================================================================
インストール中:
 epel-release                   noarch                   7-11                     extras                    15 k

トランザクションの要約
=================================================================================================================
インストール  1 パッケージ

総ダウンロード容量: 15 k
インストール容量: 24 k
Downloading packages:
警告: /var/cache/yum/x86_64/7/extras/packages/epel-release-7-11.noarch.rpm: ヘッダー V3 RSA/SHA256 Signature、鍵                 ID f4a80eb5: NOKEY
epel-release-7-11.noarch.rpm の公開鍵がインストールされていません
epel-release-7-11.noarch.rpm                                                              |  15 kB  00:00:00
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 から鍵を取得中です。
Importing GPG key 0xF4A80EB5:
 Userid     : "CentOS-7 Key (CentOS 7 Official Signing Key) <security@centos.org>"
 Fingerprint: 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5
 Package    : centos-release-7-5.1804.el7.centos.x86_64 (@anaconda)
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  インストール中          : epel-release-7-11.noarch                                                         1/1
  検証中                  : epel-release-7-11.noarch                                                         1/1

インストール:
  epel-release.noarch 0:7-11

完了しました!
[root@centos75 ~]#

続いて yum install ansible コマンドでAnsibleをインストールします、

yum install ansible

[root@centos75 ~]# yum install ansible
読み込んだプラグイン:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
epel/x86_64/metalink                                                                                                                                         | 9.9 kB  00:00:00
 * base: ftp.riken.jp
 * epel: ftp.riken.jp
 * extras: ftp.riken.jp
 * updates: ftp.riken.jp
epel                                                                                                                                                         | 3.2 kB  00:00:00
(1/3): epel/x86_64/group_gz                                                                                                                                  |  88 kB  00:00:00
(2/3): epel/x86_64/updateinfo                                                                                                                                | 950 kB  00:00:03
(3/3): epel/x86_64/primary                                                                                                                                   | 3.6 MB  00:00:03
epel                                                                                                                                                                    12731/12731
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ ansible.noarch 0:2.7.0-1.el7 を インストール
--> 依存性の処理をしています: sshpass のパッケージ: ansible-2.7.0-1.el7.noarch
--> 依存性の処理をしています: python2-jmespath のパッケージ: ansible-2.7.0-1.el7.noarch
--> 依存性の処理をしています: python-paramiko のパッケージ: ansible-2.7.0-1.el7.noarch
--> 依存性の処理をしています: python-keyczar のパッケージ: ansible-2.7.0-1.el7.noarch
--> 依存性の処理をしています: python-jinja2 のパッケージ: ansible-2.7.0-1.el7.noarch
--> 依存性の処理をしています: python-httplib2 のパッケージ: ansible-2.7.0-1.el7.noarch
--> 依存性の処理をしています: python-crypto のパッケージ: ansible-2.7.0-1.el7.noarch
--> トランザクションの確認を実行しています。
---> パッケージ python-httplib2.noarch 0:0.9.2-1.el7 を インストール
---> パッケージ python-jinja2.noarch 0:2.7.2-2.el7 を インストール
--> 依存性の処理をしています: python-babel >= 0.8 のパッケージ: python-jinja2-2.7.2-2.el7.noarch
--> 依存性の処理をしています: python-markupsafe のパッケージ: python-jinja2-2.7.2-2.el7.noarch
---> パッケージ python-keyczar.noarch 0:0.71c-2.el7 を インストール
---> パッケージ python-paramiko.noarch 0:2.1.1-4.el7 を インストール
---> パッケージ python2-crypto.x86_64 0:2.6.1-15.el7 を インストール
--> 依存性の処理をしています: libtomcrypt.so.0()(64bit) のパッケージ: python2-crypto-2.6.1-15.el7.x86_64
---> パッケージ python2-jmespath.noarch 0:0.9.0-3.el7 を インストール
---> パッケージ sshpass.x86_64 0:1.06-2.el7 を インストール
--> トランザクションの確認を実行しています。
---> パッケージ libtomcrypt.x86_64 0:1.17-26.el7 を インストール
--> 依存性の処理をしています: libtommath >= 0.42.0 のパッケージ: libtomcrypt-1.17-26.el7.x86_64
--> 依存性の処理をしています: libtommath.so.0()(64bit) のパッケージ: libtomcrypt-1.17-26.el7.x86_64
---> パッケージ python-babel.noarch 0:0.9.6-8.el7 を インストール
---> パッケージ python-markupsafe.x86_64 0:0.11-10.el7 を インストール
--> トランザクションの確認を実行しています。
---> パッケージ libtommath.x86_64 0:0.42.0-6.el7 を インストール
--> 依存性解決を終了しました。

依存性を解決しました

====================================================================================================================================================================================
 Package                                           アーキテクチャー                       バージョン                                   リポジトリー                            容量
====================================================================================================================================================================================
インストール中:
 ansible                                           noarch                                 2.7.0-1.el7                                  epel                                    11 M
依存性関連でのインストールをします:
 libtomcrypt                                       x86_64                                 1.17-26.el7                                  extras                                 224 k
 libtommath                                        x86_64                                 0.42.0-6.el7                                 extras                                  36 k
 python-babel                                      noarch                                 0.9.6-8.el7                                  base                                   1.4 M
 python-httplib2                                   noarch                                 0.9.2-1.el7                                  extras                                 115 k
 python-jinja2                                     noarch                                 2.7.2-2.el7                                  base                                   515 k
 python-keyczar                                    noarch                                 0.71c-2.el7                                  epel                                   218 k
 python-markupsafe                                 x86_64                                 0.11-10.el7                                  base                                    25 k
 python-paramiko                                   noarch                                 2.1.1-4.el7                                  extras                                 268 k
 python2-crypto                                    x86_64                                 2.6.1-15.el7                                 extras                                 477 k
 python2-jmespath                                  noarch                                 0.9.0-3.el7                                  extras                                  39 k
 sshpass                                           x86_64                                 1.06-2.el7                                   extras                                  21 k

トランザクションの要約
====================================================================================================================================================================================
インストール  1 パッケージ (+11 個の依存関係のパッケージ)

総ダウンロード容量: 14 M
インストール容量: 73 M
Is this ok [y/d/N]: y
Downloading packages:
(1/12): libtommath-0.42.0-6.el7.x86_64.rpm                                                                                                                   |  36 kB  00:00:00
(2/12): python-httplib2-0.9.2-1.el7.noarch.rpm                                                                                                               | 115 kB  00:00:00
(3/12): libtomcrypt-1.17-26.el7.x86_64.rpm                                                                                                                   | 224 kB  00:00:00
(4/12): python-markupsafe-0.11-10.el7.x86_64.rpm                                                                                                             |  25 kB  00:00:00
(5/12): python-paramiko-2.1.1-4.el7.noarch.rpm                                                                                                               | 268 kB  00:00:01
(6/12): python-jinja2-2.7.2-2.el7.noarch.rpm                                                                                                                 | 515 kB  00:00:01
(7/12): python2-jmespath-0.9.0-3.el7.noarch.rpm                                                                                                              |  39 kB  00:00:00
warning: /var/cache/yum/x86_64/7/epel/packages/python-keyczar-0.71c-2.el7.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID 352c64e5: NOKEY
python-keyczar-0.71c-2.el7.noarch.rpm の公開鍵がインストールされていません
(8/12): python-keyczar-0.71c-2.el7.noarch.rpm                                                                                                                | 218 kB  00:00:02
(9/12): sshpass-1.06-2.el7.x86_64.rpm                                                                                                                        |  21 kB  00:00:00
(10/12): python-babel-0.9.6-8.el7.noarch.rpm                                                                                                                 | 1.4 MB  00:00:03
(11/12): python2-crypto-2.6.1-15.el7.x86_64.rpm                                                                                                              | 477 kB  00:00:02
(12/12): ansible-2.7.0-1.el7.noarch.rpm                                                                                                                      |  11 MB  00:00:10
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
合計                                                                                                                                                1.3 MB/s |  14 MB  00:00:10
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 から鍵を取得中です。
Importing GPG key 0x352C64E5:
 Userid     : "Fedora EPEL (7) <epel@fedoraproject.org>"
 Fingerprint: 91e9 7d7c 4a5e 96f1 7f3e 888f 6a2f aea2 352c 64e5
 Package    : epel-release-7-11.noarch (@extras)
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
上記の処理を行います。よろしいでしょうか? [y/N]y
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  インストール中          : python-babel-0.9.6-8.el7.noarch                                                                                                                    1/12
  インストール中          : python-paramiko-2.1.1-4.el7.noarch                                                                                                                 2/12
  インストール中          : python-httplib2-0.9.2-1.el7.noarch                                                                                                                 3/12
  インストール中          : sshpass-1.06-2.el7.x86_64                                                                                                                          4/12
  インストール中          : libtommath-0.42.0-6.el7.x86_64                                                                                                                     5/12
  インストール中          : libtomcrypt-1.17-26.el7.x86_64                                                                                                                     6/12
  インストール中          : python2-crypto-2.6.1-15.el7.x86_64                                                                                                                 7/12
  インストール中          : python-keyczar-0.71c-2.el7.noarch                                                                                                                  8/12
  インストール中          : python2-jmespath-0.9.0-3.el7.noarch                                                                                                                9/12
  インストール中          : python-markupsafe-0.11-10.el7.x86_64                                                                                                              10/12
  インストール中          : python-jinja2-2.7.2-2.el7.noarch                                                                                                                  11/12
  インストール中          : ansible-2.7.0-1.el7.noarch                                                                                                                        12/12
  検証中                  : python-keyczar-0.71c-2.el7.noarch                                                                                                                  1/12
  検証中                  : python-markupsafe-0.11-10.el7.x86_64                                                                                                               2/12
  検証中                  : python-jinja2-2.7.2-2.el7.noarch                                                                                                                   3/12
  検証中                  : python2-jmespath-0.9.0-3.el7.noarch                                                                                                                4/12
  検証中                  : python2-crypto-2.6.1-15.el7.x86_64                                                                                                                 5/12
  検証中                  : libtomcrypt-1.17-26.el7.x86_64                                                                                                                     6/12
  検証中                  : libtommath-0.42.0-6.el7.x86_64                                                                                                                     7/12
  検証中                  : sshpass-1.06-2.el7.x86_64                                                                                                                          8/12
  検証中                  : python-httplib2-0.9.2-1.el7.noarch                                                                                                                 9/12
  検証中                  : python-paramiko-2.1.1-4.el7.noarch                                                                                                                10/12
  検証中                  : python-babel-0.9.6-8.el7.noarch                                                                                                                   11/12
  検証中                  : ansible-2.7.0-1.el7.noarch                                                                                                                        12/12

インストール:
  ansible.noarch 0:2.7.0-1.el7

依存性関連をインストールしました:
  libtomcrypt.x86_64 0:1.17-26.el7            libtommath.x86_64 0:0.42.0-6.el7             python-babel.noarch 0:0.9.6-8.el7             python-httplib2.noarch 0:0.9.2-1.el7
  python-jinja2.noarch 0:2.7.2-2.el7          python-keyczar.noarch 0:0.71c-2.el7          python-markupsafe.x86_64 0:0.11-10.el7        python-paramiko.noarch 0:2.1.1-4.el7
  python2-crypto.x86_64 0:2.6.1-15.el7        python2-jmespath.noarch 0:0.9.0-3.el7        sshpass.x86_64 0:1.06-2.el7

完了しました!
[root@centos75 ~]#

Ansibleコマンド ansible --versionバージョンが表示できればインストール完了です

ansible --version

[root@centos75 ~]# ansible --version
ansible 2.7.0
  config file = /etc/ansible/ansible.cfg
  configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/site-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.5 (default, Apr 11 2018, 07:36:10) [GCC 4.8.5 20150623 (Red Hat 4.8.5-28)]
[root@centos75 ~]#

関連記事です

CentOS7になって従来のコマンド、ファイル体系が大きく変わっています。起動ランレベル変更もその一つです

www.hitoriit.com

S2D HDI構築手順です

www.hitoriit.com

以上