Ansible

[Linux] yumで一度利用したパッケージをキャッシュする

小ネタです。
AnsibleのPlaybookを作成していたのですが、何度もyumで同じパッケージのインストールを繰り返していると、処理に時間はかかるしネットワーク利用量(利用料)もバカになりません。

そこで一度でも利用したパッケージはローカルにキャッシュするよう設定します。
続きを読む

はじめてのAnsible #4 template編

前回はタスクが終了した際に後続処理を実行する方法についてご紹介しました。今回は設定ファイルなどをローカルから管理対象のサーバへコピーする際に、単純なコピーではなくもう少し複雑なことができる「テンプレート」について取り上げます。

続きを読む

[Ansible] yumモジュールをdnfがインストールされていない環境で使う

Ansibleでyumモジュールを利用すると、裏側では環境に合わせて以下のいずれかのパッケージマネージャが自動的に選択されます。つまり、Ansible上ではyumモジュールなんだけど実際にはdnfがいつの間にか動いているといった自体が発生しますw

  • yum
  • yum4
  • dnf

このままだとdnfが入っていない環境下では利用することができませんし、AWSで頻繁に利用されるAmazon Linuxでは現在もyumが現役だったりします。困ったw

結論から言うと数行ちょちょいと設定すれば解決します。
続きを読む

はじめてのAnsible #2 Playbook分割編

前回はAnsibleやYAMLの基本的な使い方について書きましたが、今回はPlaybookを分割する方法について取り上げます。

例えば「Apacheをインストールするタスク集」「MySQLを設定するタスク集」などを作っておけば、必要なファイルをチョイスするだけで環境が構築できるというわけです。

続きを読む

はじめてのAnsible #1 入門編

Ansible便利ですよね。
一度設定ファイルを作ってしまえばあとはコマンド一発で同様のサーバ環境が作れます。対象サーバも一度に何台でもまとめて設定できるのも便利。最近では人間が手作業で実行する日々の運用でも活躍するシーンが出てきました。サーバのみならずクライアント環境に対しても利用できちゃいます。

Ansibleのようなソフトウェアを構成管理ツールと呼びます。同様の物にChefPuppetなど色々ありますが、管理対象のマシンはPythonが入っていれば他に余計なソフトウェア(Agent)をインストールしなくて良いのがAnsibleの特徴でもあり良いところです。

というわけで、ここしばらくサボって使わないでいたらすっかり使い方を忘れてしまったので再入門と相成りました。以前はVagrantとセットで利用していたのですが、今回はmacOS上でPlaybookを実行し、Linuxサーバの構成管理を行います。

ちょっと文量が多くなってしまったので何回かに分けてお話する予定です。今回は基本的な利用方法になります。
続きを読む