1.概要 ohai はマシンの環境(プラットフォーム・ネットワーク・カーネル・プロセス・ホスト等)の情報を取得するためのコマンドラインツールです。 ここでは ohai に独自のプラグインを追加して使用する方法を紹介します。 2.インストール ohai は環境設定ツールの chef と一緒に配布されています。 Debian 6 では以下の手順でインストールします。 $ export LC_ALL=C $ sudo apt-get update $ sudo apt-get install curl $ curl -L https://www.opscode.com/chef/install.sh | sudo bash $ ohai --version Ohai: 6.16.0 3.プラグインの追加 3.1.プラグインの作成 /etc/ohai/plugins ディレクトリを作成しプ
師匠様方が走り回りまくる今日この頃、皆様いかがお過ごしでしょうか。しんやです。 弊社AWSコンサルチームでは、AWSでの環境構築を『AWS CloudFormation単独(パッケージのインストール等もCloudFormationで兼ねる)』、若しくは『AWS CloudFormation+Knife Solo』という組み合わせで行うのが主流となっています。当エントリでは後者の方、『AWS CloudFormation+Knife Solo』で環境構築を行う際の『knife solo』に於ける環境構築手順について、意外と初見では踏むべき手順が多く、躓く点も多かった(と個人的には思っている)ので備忘録も兼ねてエントリとしてまとめておこうと思います。 スタート地点 Gitインストール rbenvインストール ruby-buildインストール Rubyインストール by rbenv knife-
こんにちは、Ruby大好きMiyakeです :-) "DevOps"という言葉がクローズアップされるようになってから、Chefがかなり流行ってきてますよね。 ブログとかTwitterをみていても、ここ1年で実際の業務や、開発環境を構築するのにChefを使ってる人がかなり増えたな~って思っています :-) 今日は、そんなChefを使っていく中で気になった、Recipeが実行されるまでの仕組みと、Recipe内で宣言している変数の関係について調べてみたので、紹介したいと思います。 実はこのRecipeが実行されるまでの仕組みを理解することで、Recipe内で宣言した変数の使い方が、より理解できるようになります :-) まずは、Recipeが実行されるまでの仕組みが見えてくるよう、わざと誤った変数の使い方をしたサンプルを書いてみました。 誤った変数の使い方をしているのは、リソースBlockとリソ
Vagrant と Chef Solo ってとてもベンリそうに見えてたのですが、ネット上にあるのは断片的な情報が多かったり、そもそもいろんなやり方があって混乱してたので、サックリ始めるためのチュートリアルを書きました。これをきっかけにベンリな Vagrant ライフを堪能して頂ければ幸いです。 [追記10/10/2013] Window 上の Vagrant でも問題なく動きました。ただ1点注意があって、UAC のポップアップに反応しないと、Vagrant か VirtualBox 側でタイムアウトになってしまうので、ポップアップを見張るか、放置したいなら一時的に無効にしておくとよいです。 [/追記終わり] [追記 10/23/2013] VirtualBox 4.3 だとまだうまく動かないようです(私も host-only adapter の作成で VirtualBox 側のエラーになり
Chef、Vagrantに興味があるけどRubyをやったことない技術者が最低限知っておいた方がいい知識 まとめ 最近、ChefやVagrantを勉強し始めたのですが、設定がRubyで記述されているため私は「たのしいRuby」を読んで勉強することにしました。 私は元々Rubyに興味があったのでいいのですが、Ruby知らないしそのために勉強するのは大変だから手を出すのをやめとこう、と思う人がいるかもしれないのでこれだけ知っていればある程度読めるのではないか、というポイントをまとめました。 まったくプログラミングをしたことない方には説明するのは無理なのでプログラミング経験があり 条件分岐、ループ、クラス、メソッド、文字列 が何か分かるくらいの方が対象です。if文、for文など他の言語でもあるようなものは省いていきます。 真面目にRubyを勉強したい方は下のアフィリエイトから「たのしいRuby」を
こんにちは! "ドワンゴ 弁当" で最近少し話題になったドワンゴエンジニア、の氏家です。 どんな人が中で働いてるのか想像しにくい方も多いかもしれませんが、普通の人・オタクな人・ギークな人・家庭持ち・リア充・イケメン、いろんな人が混じってる、楽しい会社だと思っています。 人と同じように 多種多様なサービス・システム・ミドルウェア・デバイス・プログラム言語を駆使してみんながニコニコできるものを産み出そうとがんばっていますので、こういったエンジニアリングに興味がある方は是非コチラからご応募ください!ニコニコ入社一時金制度もやっています。 そしていろいろと長くなってしまいましたが、今回でChef Solo話、完結したいと思います。今回はやってみて気づいた点・はまった点などを詳しく説明しますので、少しでもみなさんの参考になれば幸いです。 roleはjsonで書くべき? それともruby? recip
自分の働いている会社は、ロリポップや heteml, Sqale などのホスティング事業をしてたり、また mizzy さんをはじめとして Puppet などを使ったプロビジョニングへの知識・経験がある人が多く、インフラエンジニアの人も多い。 開発側としては正直ものすごく楽なことが多々ある。けれどそうやって頼ってると、個人的な遊びとか開発に必要な簡単な VM とか以外ではなかなか Puppet や Chef を使ってという機会が少ないんで、まずは適当なネタをでっちあげて偉大なプロビジョニングマスターの人たちから少しずつ色々教えてもらおうと思いました。 ということでまず最初にやったのは rails-dev-box を chef で移植してみました。 banyan/chef-rails-dev-box rails-dev-box rails-dev-box は Contributing to R
tily/chef-serverspec-handler · GitHub 『Chef のレシピは「こうあるべき」を記述するものだから、レシピからテストが自動生成できるべきだよな』とずっと思っていたんだけど、最近触りはじめた serverspec がシンプルで簡単に自動生成できそうなのでやってみた。 使い方は上記リンクに書いてある通りなのですが、たとえば Chef のレシピにこう書いてあるやつを、 template '/var/tmp/template.txt' do source 'template.txt.erb' mode 0777 owner 'root' group 'root' variables(:val1 => 'val1', :val2 => 'val2', :val3 => 'val3') action :create end このような serverspec のテスト
まとめてたくさん処理したい! を解決する「Capistrano」:特集 DevOps時代の必須知識 インフラ運用の自動化を実現し、DevOpsを支援するツールはいくつかあります。ここではその中から「Capistrano」というツールについて、サンプルを用意しつつ紹介します。 はじめに インフラ運用の自動化を実現するツールには「Chef」や「Puppet」などいろいろあります。今回の記事ではそういったツールのうち、Capistranoというツールを簡単なサンプルを用意しつつ紹介します。 Capistranoとは Capistranoとは簡単にいうと、オープンソースで提供されている、複数のサーバ上で同時にスクリプトを実行するためのソフトウェアツールです。主に、同じ役割のサーバが複数台存在するような環境での自動化であったり、アプリケーションのデプロイ自動化に利用されています。 特にRuby On
2024年4月1日より、Supership株式会社は親会社であるSupershipホールディングス株式会社に吸収合併されました。 合併に伴い、存続会社であるSupershipホールディングスは社名をSupershipに変更し、新たな経営体制を発足しました。本件に関する詳細は、プレスリリースをご確認ください。 2024年4月1日より、Supership株式会社は親会社であるSupershipホールディングス株式会社に吸収合併されました。 合併に伴い、存続会社であるSupershipホールディングスは社名をSupershipに変更し、新たな経営体制を発足しました。 本件に関する詳細は、プレスリリースをご確認ください。
斎藤です。こんにちは。 今日は、Chefをインストールすると共に入るohaiを用いて、サーバの情報をプログラムで扱ってみます。 ※ohaiは6.16(github版)を用いています ohaiとは もともと、Chef Client/Chef Soloが実行環境の情報を取得するためのライブラリです。ただ、単独でもライブラリを使用したり、コマンドを実行する事で、Chefと同様に情報を利用する事ができます。ポイントは、外部コマンドの結果を内部でパースしてプログラムで扱いやすい形にできます。まさに、パーサーライブラリですね。 ohaiがなければ、コマンドでサーバの環境(例えば"df")の情報を取得しようとする時、コマンドの結果を取得した後に「お手製」のパーサーでプログラム内で活用できるようにしなければなりません。これが、"df"のほうに簡単なものならまだしも、"ip addr show"のような設定
1 平成 23 年度 研究レポート課題 サーバの構築作業や運用管理を自動化する 「Chef」を使うためのチュートリアル サービスディベロップメントグループ 並河 祐貴 2011 年 8 月 31 日 2 概要 「Chef」は、Ruby製のシステム管理ツールで、サーバOSでのミドルウェアやア プリケーションのインストール・OSやミドルウェアの設定・各稼動サービスの 状態管理等、諸々のシステム構築や運用作業を自動化してくれるツールで、オ ープンソースソフトウェアとして公開されている。Chefは、世界中で主にサー ビスプロバイダの運用基盤として利用されており、利用実績も出始めている。 本レポートでは、この「Chef」の概要やアーキテクチャ、セットアップ手順を 解説した上で、実際の設定の流れをチュートリアル形式で解説する。 3 第1章 はじめに 「Chef」は、Ruby製のシステム管理ツールで、
最近のChefのブレイクで、サーバの構築も自動化でという潮流になっています。そんな中でチラホラ見受けられるのが、アプリのリリースもChefでという考え方です。私は微妙に違うのではないかなぁと思っているので、ちょっと考えを整理してみました。併せてCapistranoの紹介もしてみます。 Chefの役割 まずChefについてです。Chefの役割としては、サーバの状態を管理するものです。ここで言うサーバの状態というのは、各種ミドルウェアのインストール状態&設定です。いわいるサーバ構成ですね。またChefを使う最大のメリットは、開発環境やステージング環境、本番環境と全ての環境を同じスクリプトで構築するので、手作業によるミス等による微妙な差異が発生しなくなることです。 さてここで問題になるのが、サーバ上のアプリケーションのコードやデータベースのテーブル定義は、サーバの状態に入るのかという点です。入る
サーバーのセットアップは perlbrew とかじゃなくてよくね? という時のライフハック - blog.64p.org 本番環境でのperl/ruby/nodeのセットアップ - tagomorisのメモ置き場 本番環境で使う LightweightLanguages を **env とかで入れるのはアレだよね。な流れに乗ってそういう環境を作る Chef の Cookbook を書きました。 作ったとは言っても、tagomoris/xbuild · GitHub をそのまま cookbook に書き換えた、という感じです。 chef-xbuild https://github.com/studio3104/chef-xbuild お気軽にお試しいただけます。 Ruby 実行環境があり、Virtualbox がインストールされていれば、簡単に試していただくことが出来ますのでご興味を持たれま
斎藤です。こんにちは。 Chef の話題がアツくなっている今日この頃、みなさまいかがお過ごしでしょうか?Chefの解説本も出つつある今日この頃ではありますが、プログラミングそのものに慣れないうちはそれさえ読むのもちょっと大変かもしれません。そこで今回は、 Chef のレシピ+ライブラリを用いて、MySQLの設定の自動化を試します。いわゆる「写経」から始めてみて、少しずつ「手動」からプログラムを通じた「自動化」にチャレンジしてみましょう。 ※Chef 11.04.0, knife-solo 0.2.0, Ruby 1.9.3p327, CentOS 6.3 で検証しています。 今回のお題 MySQLサーバをインストールしてみます。ITインフラを構築・運用している方ならご存知かと思いますが、MySQLはインストールだけでなくmy.cnfの設定までが作業です。その際にinnodb_buffer_
タイトルは釣りです。11個もやり方をしらないまま書き始めます。 最近 chef が流行っていますが、みなさんどうやって各サーバに chef をインストールしていますか? ここでは僕がいままで紆余曲折していた方法を紹介します。 列挙だけするとこんな感じです。 vagrant の VM イメージに入っているもの omnibus installer を使う knife solo を使う OS の ruby 環境に chef を入れる RVM 環境を作って chef を入れる rbenv 環境を作って chef を入れる roundsman を使って chef を入れる vagrant の VM イメージに入っているもの vagrant の VM イメージには、大抵 ruby と chef がインストールされています。 veewee を使ってあたらしい VM イメージを作成すると必ずインストールさ
去る2/22(金)に恵比寿の弊社オフィスにて初の勉強会となる「初めてのChefの教室」を開催しました。インフラエンジニアだけでなく、アプリケーションエンジニアからも注目が集まっているChefの勉強会という事で様々な方にお集まり頂き、濃い情報交換が繰り広げられました。 この記事では内容のまとめてスライドや動画などの各種資料を集約します。さらに公開された記事などの資料も順次追加していきます。 Chef未経験者向けのセッション [eytokyo] 初めてのChefの教室 from suzuki on Vimeo. まずは最初のセッションとしてRubyもChefも未経験な人(≒PHPer)向けのChefのセッションをyandoが担当しました。セッションではChefの動作原理やアーキテクチャの全体像を示した上で、最低限レシピを書いて実行する為に必要な手順だけをデモを交えて紹介しました。また実際に公
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く