かべぎわブログ

技術的なことについてかけたらいいな…

Ansible

AnsibleでWindowsにAWS CLIをインストールする

今回はAnsibleでWindows環境にAWS CLIをインストールしてみたいと思います。 事前準備 AWS公式からAWS CLIのインストーラをダウンロードしてきます。 aws.amazon.com 以下の赤枠から32ビットまたは64ビットのものをダウンロードします。 Ansibleを実行する …

Windows環境でPythonをコマンドでサイレントインストールする

今回はWindows環境でPythonをコマンプロンプトなどを利用してサイレントインストールしてみたいと思います。 コマンド 以下のコマンドをコマンドプロンプトで実行することでPyhtonをインストールすることができます。 C:\\python-3.6.3.exe /quiet InstallAl…

Ansibleのホストパターンは正規表現も利用できる

知らなかったので備忘録的メモです。 Ansibleのホストパターンは正規表現でも利用できました。 例えば以下のように指定が可能です。 正規表現の前には~を忘れないであげてください。 $ ansible -i ansible_hosts "~(test|wawawa)_server" -m ping このとき、…

Ansibleのホストパターンにはワイルドカードが利用できる

知らなかったので備忘録的メモです。 例えば、以下のように指定が可能です。 $ ansible -i ansible_hosts *_server -m ping このとき、インベントリとして利用しているansible_hostsがこのような内容のとき、test_serverとwawawa_serverにpingが実行されます…

EC2 External InventoryでプライベートIPで取得したい

AnsibleのEC2 External InventoryでEC2インスタンスの情報を取得したとき、デフォルトのままだと以下のようにIPアドレスがパブリックIPで表示されるかと思います。 $ ./ec2.py { "_meta": { "ap-northeast-1a": [ "54.xxx.xxx.xxx", "13.yyy.yyy.yyy" ], "ta…

AnsibleのEC2 External Inventory で ERROR: "Forbidden", while: getting ElastiCache clusters エラーの解決法

事象 AnsibleでEC2 External Inventoryを試そうとしていたところ、以下のようなエラーがでてしまいました。 $ ./ec2.py ERROR: "Forbidden", while: getting ElastiCache clusters 解決法 ec2.iniのElastiCacheを無効にしたらうまくいきました。 以下のとこ…

EC2 External Inventoryを利用してAnsibleのhostsを動的に管理する

Ansibleを利用した構成管理では、実行対象のホストをインベントリファイルと呼ばれるファイルに記載しておく必要があります。 以下のようなかんじ [local] localhosts [test_server] 192.140.1.1 192.140.1.2 [web_server] 192.140.2.1 これだと、AWSでAutoS…

Ansibleでgit cloneを実行する

今回はAnsibleでgit cloneを実行する方法をご紹介します。 今回はテスト用に以下のリポジトリを利用してみます。 https://github.com/takakabe/blog_RaspberryPi 前提条件 各ターゲットノードに以下のモジュールが必要です。 git>=1.7.1 (the command line t…

AnsibleでS3からファイルをダウンロードする3つの方法

AnsibleでS3からファイルをダウンロードする方法を紹介します! ① s3_getを利用する AnsibleのCloudModuleであるs3_getを利用する方法です。 前提条件 ターゲットノードにS3へのアクセス許可が必要 実行コマンド $ ansible-playbook -i ansible_hosts s3_get…

Ansibleでboto3 and botocore required for this moduleというエラーがでたときの対処法

事象 AnsibleでS3を操作しようとしていたところ、以下のようなエラーが出てしまいました。 PLAY [s3_get] ***************************************************************************************************** TASK [Gathering Facts] ***************…

AnsibleからWindowsServerへファイルをコピーする方法

Ansibleを利用してWindowsServerへファイルをコピーする方法をご紹介します。 設定手順 AnsibleからWindowsを操作するためにはWindows側とAnsible側の両方にすこし準備が必要です。 AnsibleはターゲットのサーバにWindows Remote Manager(WinRM)を利用してア…

AnsibleでFailed to connect to the host via ssh: Permission denied (publickey).\r\nというエラーが表示されたときの対処法

Ansibileの勉強をしていたところ、以下のようなエラーが表示されてしまいました。 $ ansible -i test01_inventory.ini test_servers -m ping localhost | UNREACHABLE! => { "changed": false, "msg": "Failed to connect to the host via ssh: Permission d…