Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

その1で作成したshellをAnsibleに変えてみる 実施環境 OS: OS X Yosemite (10.10.5) Vagrant: 1.7.4 Virtualbox: 5.0.8 r103449 Ansible: 1.9.4 目標 Ansible + Vagrantを使用して下記環境を構築する OS: CentOS6.6 Server: Apache PHP: PHP5.6 FuelPHP: FuelPHP1.7.3 今回のゴール vagrant upだけでFuelPHPのWelcomeが表示できるようにする 今回の成果物 こちらに置いてあります negibouze/vagrant-fuelphp_part2 1. 各ツールの準備(インストール済みの場合不要) step1. Homebrewをインストールする (省略) step2. Homebrew Caskをインストールする (
- hosts: api name: "○○のAPIサーバー" vars: ansistrano_deploy_to: /opt/myqpp/api ansistrano_deploy_via: git ansistrano_git_repo: git@github.com:NewGyu/myapp.git ansistrano_git_branch: master ansistrano_shared_paths: ["log","config"] ansistrano_after_update_code_tasks_file: "{{ playbook_dir }}/roles/myapp/ansistrano/after_update_code.yml" ansistrano_after_symlink_tasks_file: "{{ playbook_dir }}/roles/mya
見ての通り ini 形式です。[セクション]でグループ化出来ます。このグループは後述する playbook で指定する際に使用しますが別に無くても構いません。 このファイルを/etc/ansible/hostsとして保存すると ansible 実行時に対象ホストが定まり、各ホストで ssh 経由で色々やってくれるということです。 ※ hosts の場所は/etc/ansible/hostsじゃなくても構いません。環境変数や-iオプションで指定できたりします。 1022 はポート番号ですが、標準の 22 であれば指定はいりません。また、ssh_config も見てくれるので、ポートや鍵ファイルの指定は本来そちらで行うべきでしょう。 playbook 簡単にいえば後述のモジュールを組み合わせて、「このホストたちにはこのモジュールをこういうオプションで実行してよ」という命令書です。 yaml 形
これはアルファ時点の古い情報です。Ansible 2.0.0正式版では、旧スタイルのモジュールも動く様に対応されています。 ただし、これから作る自作モジュールのスタイルとしてはnew, non_native_want_jsonが推奨される点は変わりませんので、記事は残しておきます。 Ansible 2.0.0のalpha版が出たので、そろそろ本腰入れて使ってみようと思ったら、bashスクリプトで書いた自作モジュールが動かなくなっていたので、対応方法のメモ。 自作モジュール: parrot ここでは、以下の様な与えられた引数をオウム返しするだけのparrotと言うカスタム・モジュールを例にして話を進めます。 (ちなみに、このまま使うと値にスペースが入る場合には正しく動かないです) # !/bin/bash # 引数ファイルが与えられなかったらエラー if [ -z $1 ]; then ec
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Ansible 2.0 変更点まとめ Ansible 2.0のアルファ1.0がリリースされましたね! (2016.01.13追記: Ansible 2.0出ました。Qiita上ではリリースニュースを Ansible 2.0リリース! という記事で訳していただいています。) まだ開発中ではありますが、CHANGELOGを元に大きめの変更点をまとめてみます。 (よく使われそうと主観的に思うものと、個人的によく使うものについての記述粒度が細かくなってます。) 下記情報は全て2015年8月28日時点での公式ドキュメント・リリースノート・git
/etc/ansible/hostsに置くか、適当なとこにおいて-i(--inventory)オプションないしANSIBLE_HOSTS環境変数でパスを指定。 なおInventoryファイルに実行権限(+x)があるとDynamicInventoryと勘違いされ、実行できないよ!!みたいなエラーが出るので注意。Windowsの共有フォルダをマウントしたら全ファイルに+xついてて嵌りました。 これ作るの面倒 カンマで区切れば引数で直接指定できるようです。カンマで区切れば、なので、一つだけ指定したい時も先頭か末尾にカンマをつける必要があります。 http://stackoverflow.com/questions/17188147/how-to-run-ansible-without-specifying-the-inventory-but-the-host-directly https://g
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Ansibleのroleを実際に使ってみてわかったことを共有します。さらに便利に活用するtips等ありましたら、ぜひコメントをお願いします。 Ansibleのroleは単にインクルードの単位 最初roleという名前を聞いたときは、webserverとかdbserverといった役割を設定するのだろうと予想しました。が、Rolesのドキュメントを読んで、playbookの一部をインクルードして再利用するための仕組みだということがわかりました。つまり、playbookを分割・構成するコンポーネントという意味合いです。 もともとroleはなくて
多種多様な構成のサーバーを Ansible で管理する場合、単一のベストプラクティスツリーに押し込むのは管理が大変すぎて現実的ではないなとおもい、どうしたものかなと悩んでいました。で、最近やっとこれかなという構成ができたので共有してみます。 何が問題か? ロールには共用できるものとできないものがある、それがいっしょこたに混ざるのが嫌 無理に共用できるようにと変数を多用するととても管理が大変。変数も覚えられないし、テストが大変 読み込むファイルのパスが大元のymlからの相対パスであり、include ではディレクトリ階層での整理が難しい -l で対象サーバーを絞り込んでも全てのタスクが表示され、skipped, skipped, skipped と関係ない task 表示がターミナルが埋まって見づらい そして、たどり着いたオレオレベストプラクティス まとめて管理したいサーバーグループ毎にベス
Ansible を15分程度で「もう使えそう」と感じてもらうために書きました。 Ansible はプロビジョニング用アプリケーションです。 同じ目的のものでは Chef、Puppet などがあります。 Ansible の特徴だと感じたのは、とても簡単ですぐ実用できることです。 Chef で挫折してしまった私(不勉強ですみません)も、一日で仕事で必要なことができました。 簡単というと Fabric (やCapistrano) がありますが、環境構築やデプロイには Ansible が強いと感じます。 Python で書かれたものですがユーザーは YAML でタスクを書きます。 以下の作業で Python は出てきますが、Ansible をインストールする以外では本質的に不要なのでご安心(?)ください。 次を前提とします。 Vagrant に Ubuntu 13.10 が用意されていること Ma
MySQLのマスター1台、スレーブ2台、mysql-master-haのマネージャ1台の計4台構成です。 4台すべてを起動するとトータルで3.5GBほどメモリを使用しますので、ご注意ください。 手順は全部Ansibleで自動化してもよかったのですが、それだとフェイルオーバーの動作がよくわからないかと思ったので、レプリケーション、HA構成の設定は手動です。 HA構成にはmysql-master-haを使用します。 準備 VirtualBox、Vagrant、Ansibleはあらかじめインストールしておき、ターミナル上でコマンドが実行できるようにしておいてください。 OSはCentOSを使用します。 以下のコマンドでCentOS6.5のボックスを追加します。
/etc/ansible/hostsに置くか、適当なとこにおいて-i(--inventory)オプションないしANSIBLE_HOSTS環境変数でパスを指定。 なおInventoryファイルに実行権限(+x)があるとDynamicInventoryと勘違いされ、実行できないよ!!みたいなエラーが出るので注意。Windowsの共有フォルダをマウントしたら全ファイルに+xついてて嵌りました。 これ作るの面倒 カンマで区切れば引数で直接指定できるようです。カンマで区切れば、なので、一つだけ指定したい時も先頭か末尾にカンマをつける必要があります。 http://stackoverflow.com/questions/17188147/how-to-run-ansible-without-specifying-the-inventory-but-the-host-directly https://g
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く