kiyoto_murakoshiのブログスマートフォン用の表示で見るkiyoto_murakoshiのブログこの広告は、90日以上更新していないブログに表示しています。Solo環境で利用するためにユーリティリティツールで、knife-soloを使うと、手元で作ったクックブックをリモートのサーバに転送してchef-soloコマンドを実行するといった一連の作業を自動化できる。knife-soloはRubyGemsとして公開されており、gemでインストール可能。そのため、はじめにrubyとgemのインストールを行う。コンパイルコマンドを含めzip解凍などに必要なライブラリをインストールする。公式サイトから最新版を入手してソースからコンパイル&インストールを行う。公式ページに行って最新版をダウンロード。この時点では、2.4.0が最新版(安定版)なのでこちらを使う。ライブラリを作っておく。つぎに同じくソースディレクトリからopensslのライブラリをつくる。同様の流れでmakeを行うと以下のエラーが出てしまう。以下コマンドを実行することでopensslのライブラリをつくる。pwd)」という部分は、rubyのソースディレクトリを指定しておけばOK。公式サイトに行って最新版をダウンロード。この時点では、2.6.8が最新版(安定版)なのでこちらを使う。knife-soloは、他のgemのインストール有無によってデフォルトのオプションが変化するため、クックブックの依存関係を管理するBerkshelfをインストールしておく。Soloを利用するにあたって、まずはChefリポジトリを新規にローカル側に作成する。」コマンドを実行するとChefに必要な各種ファイルとディレクトが展開される。.'※原因はgemのknife-soloが二つ存在していること。Soloのインストールを実行してみる。knifeでクックブックを作成クックブックの作成はknife-soloではなく、先ほどと同じくknifeで作ります。Solo用にknifeを拡張するプラグインという関係。soloのようにサブコマンとsoloを付けて実行する。実行しクックブックを作成する。クックブックの出力先をsite-cookbooksディレクトリに指定します。Chefにおいては自作のクックブックはsite-cookbooksに置くのが慣習になっているのでそれに従うようにする。Soloを実行knife-soloを使ってリモートのノード(192.168.33.11)にプロビジョニングを実施。cookコマンドの裏側では、rsyncでknife-soloサーバからリモートにクックブックが転送され、SSH経由でsudo付きでchef-soloコマンドが実装されている。その際、先に作ったNodeオブジェクトからノードの状態が読み込まれている。用語Chefでは「コードで書いたサーバ設定の手順」をレシピと呼ぶ。ファイルに対するディレクトリ、あるいはクラスに対する名前空間のように、特定のレシピに必要なデータやファイルをまとめたものを「クックブック」と呼ぶ。クックブック群を含む、Chefの実行に必要な一連のファイルをまとめた入れ物のことを「リポジトリ」または「キッチン」と呼ぶ。レシピという階層でレシピ群が管理されている。knifeコマンドでクックブックを作成デフォルトでは、Chefのリポジトリは/var/chefディレクトが使われるので、サンプルではこのディレクトの中にというリポジトリを操作するためのツールがインストールされ、クックブックはこのknifeコマンドを使って作成する。/var/chef/cookbooks※/var/chef/cookbooksディレクトリ内にhelloというクックブックが作成される。World!」というログ出力を行うレシピを作成する。クックブックを作成するとrecipesディレクトリの中にdefault.rbという名前でひな形ファイルが作成されており、今回はそのファイルに以下一文を追記する。World!"*クックブックを作りレシピを用意できたら、chef-soloコマンドをテスト実行する。-oオプションでhelloクックブックを使うことを明示的に指定し、実行する。サーバモニタリングツールのdstatをテストインスト―ルする。dstatパッケージをインストールする設定を、recipesディレクトリの中のdefault.rbに記述。chef-soloコマンドを実行し、dstatのインストールを行う。rpmコマンドでdstatがインストールされたか確認。Soloはサーバもクライアントも必要とせず、コマンドとして実装される。Chefのようにサーバ構成を自動化するツールは一般的に「プロビジョニング(構成)ツール」と呼ばれるが、最近このプロビジョニングツールの世界では、Vagrantを併用するのが定番になっている。ダウンロードURLhttps://www.vagrantup.com/downloads.html※Vagrant用のOSイメージは「box」と呼ばれ、インターネット上で公開されているものを利用することもできる。インターネット上で公開されているものとしては、Vagrantbox.esというサイト、あるいはChef社によるプロジェクトBentoなどがあり、自作のbox以外を使う場合は、そのboxが安全なのかどうか自身で検証する必要がある。ここでは、Bentoで公開されているCentOSを使用。CentOSの最新バージョンの有無についてはBentoプロジェクトサイトを参照。[boxのURL]コマンド実行しイメージを取得。公式VagrantBoxが用意されている。今回は、Vagrantを用いてLaravel5.3の開発環境の構築を行う。Homesteadの利用には、統合開発環境としてグローバルで環境を共有する方法と、プロジェクトごとに環境を構築する方法の2種類があり、それぞれVirtualBoxやVagrantのインストール後に実行する。Windows環境の軸にコマンドを実行している。次のコマンドでhomesteadをboxに追加する。以下サイトよりインストーラーをダウンロードし、exeファイルを実行する。Homesteadに含まれるinit.shを実行するclone実行後、Homesteadに含まれるinit.shを実行。設定ファイルのHomestead.yamlが作成される。シェルスクリプトを追加Homestead.yamlと同じ階層にafter.shを設置して、実行したいスクリプトを記述すると、vagrant環境実行時にHomestead環境に反映される。今回は、PHPやOSのタイムゾーンを日本時間に設定されるように記述しておく。アクティブチェック先。インストール構築2016年2月16日、Zabbix3.0がリリースされました。100以上の機能改善が行われました。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。