Ansible (11) Windowsサーバを管理する(が、失敗!)

こんにちは。

グローバルソリューション事業部の吉村です。

 

今回はAnsibleでWindowsサーバを管理しようと思います。

Ansible が Windows に対応したのはAnsible 1.7 からですが、リリースされたのは2014年8月6日です。

Ansible 1.7 is released – Windows beta and more!

 

つまり、リリースされたばかりなので、世界最速のレビューBlog かもしれません!!!!!

我ながらパイオニア精神の塊だと思います。

 

なお、公式のドキュメントはこちらで。

Windows Support

まだ情報も少ないと思いますので、いざチャレンジ!

 

Ansible側の設定

まずは、Ansibleを1.7にバージョンアップしないといけません。

今のバージョンを確認

まだ epel 上で1.7 が配布されていないので、yumではインストールできません。

そのため、Ansible 公式 からtar を持ってきて、ソースからrpmを作成します。

Ansible1.7を インストール

 

再度、バージョンを確認

 

続いて、python module の winrm をインストールします。

 

これでAnsible側の設定は完了です。

 

 

 Windows側での設定

つづいて、Windows側の設定です。

Windows側では、PowerShellをリモートから操作できるようにします。

まずは、PowerShellのバージョンが3以上であることが条件ですので、PowerShellのバージョンを確認します。

PowerShellを起動して、$PSVersionTable コマンドを実行します。

バージョンが4なので、OKですね。

 

次に、リモートからの接続許可をします。

設定方法はAnsibleが用意しているスクリプトを使いましょう。

キャプチャ

いざ実行すると、念のため確認されますが、[Y]を入力して、エンター

キャプチャ2

 

Configure-SMRemoting.exe -get で現在のリモート管理を確認

キャプチャ3

OKですね。

WinRM get WinRM/config でwinrmのポートを確認します。

Ansibleサーバから接続するポートは、5986 を利用します。

 

これで準備完了なので、Ansibleサーバからいろいろやってみましょう。

 

Ansible サーバからWindowsを管理する

Ansibleが用意している Windows用のmodule はこちらです。

Ansibleサーバは、winrm でWinodowsサーバに接続することに注意してください。

まずは、win_ping module で接続確認をしてみましょう。

 

 

 

 

あれ、、、出来ない。

 

がーんorz

 

ansible コマンドだとダメなのかなーと思い、今後はPlaybookを作って、ansible-playbook コマンドを試してみました。

Playbookの中身はこんな感じです。

windows.yml に必要な情報を書いてインクルードしています。

 

この状態で再度Try!

mmm

ガッデム!

メーリングリスト を見ましたがわかりませんでした。

今回は、悩みぬいた結果、諦めることにしました。

1.7 はリリースされたばかりでわからないことも多いので、しばらく日にちを置いて再挑戦します。

 

以上、Ansible 1.7 の世界最速レビューBlogでした。

 

 

 

 

Share on LinkedIn
LINEで送る
Pocket

吉村

吉村

クララオンライン グローバルビジネスストラテジー部でマーケティング担当として働いています。 クラウド関連技術と中国関連の情報をお届けしてます。 たまに DJ とかします。日本語RAPが大好きです。