ansible」カテゴリーアーカイブ

Install Cloudera Manager with Ansible

この記事は【2016年7月3日】と作成から2年以上経っているため、記事の内容が古い可能性があります。最新の情報を合わせてご確認されることを推奨いたします。

Cloudera Managerを使って本番用のHadoopクラスタ環境を構築して運用している。アップデート時など調査・検証のためテスト環境を度々繰り返し構築しなおすことがあるため、ある程度構築を自動化しておきたいと思い、今回Ansibleを使ってCloudera Managerのインストールから起動までの手順を書いてみた。

構成

構成は以下の通り。

  • MySQL 5.6
  • Cloudera Manager 5.x
  • CentOS6
  • Running on a Virtual Machine with Vagrant

ディレクトリ構成

mysql-connector-javaは、事前に以下のページからダウンロードして配置しておく。

http://dev.mysql.com/downloads/connector/j/5.1.html

各種設定

Vagrantfile

vagrant.yml

cdh.yml

vansible.sh

これは、vagrantマシンへのアクセスを簡易化するためのただのスクリプト。

templates

cloudera-manager.repo

cm_versionからfilterを使ってバージョン指定している。

dot.my.cnf

vars

main.yml

以下例でパスワードを平文で設定ファイルに書いているが、必要に応じてansible-vaultで暗号化しておく。

tasks

main.yml

Cloudera Managerのインストール手順については、公式ドキュメントの『Installation Path B – Manual Installation Using Cloudera Manager Packages』のセクションを参照。

実行

無事起動できたら、以下のリンクにアクセスするとCloudera Managerのログイン画面が表示される。

http://localhost:7180/

cloudera-manager-login

参考リンク

  • http://www.cloudera.com/documentation/enterprise/5-5-x/topics/installation_installation.html
  • https://github.com/ymc-geko/ansible-cdh-cluster
  • https://dev.mysql.com/doc/refman/5.6/ja/linux-installation-yum-repo.html
  • http://qiita.com/KisaragiZin/items/e241f189c83580f92e9c
  • http://docs.ansible.com/ansible/mysql_db_module.html

AnsibleのplaybookをVagrantでテストする

この記事は【2016年6月23日】と作成から2年以上経っているため、記事の内容が古い可能性があります。最新の情報を合わせてご確認されることを推奨いたします。

AnsibleのplaybookをテストをするのにVagrantで構築した仮想マシンを使っている。VagrantではProvisionerとしてAnsibleが利用可能であり以下のようにすればvagrant upでAnsibleのplaybookを実行することができる。

テストするときに様々なグループやロールごとに実行したい時もあり、その場合はVagrantfileの中で指定するのでなく、ansibleコマンドでplaybookのテストをするようにしている。

Vagrant環境で手動によるplaybookの実行

provisionでansibleを指定すると以下のパスにVagrant環境のinventoryファイルが生成される。このファイルにsshアクセスするのに必要な情報が鍵情報含めて定義されている。

あとは、上の定義をコマンドラインオプションで渡してあげれば、Vagrant上での容易にplaybookの実行が可能となる。

ホスト名やinventoryは毎回同じ値を指定することになるので、簡単なスクリプトを用意して実行している。

以下サンプル。

vansible.sh

vagrant.yml

web

db

Vagrantfile

vagrant-inventory。ここにグループを加えておく。

inventoryのマージ。

ansibleの実行。

参考リンク

  • http://docs.ansible.com/ansible/guide_vagrant.html
  • https://www.vagrantup.com/docs/provisioning/ansible.html
入門Ansible

入門Ansible

posted with amazlet at 16.06.23
(2014-07-30)
売り上げランキング: 3,212
初めてのAnsible

初めてのAnsible

posted with amazlet at 16.06.23
Lorin Hochstein
オライリージャパン
売り上げランキング: 25,752