VagrantとChefでnode.jsの開発環境を構築してみます。 Berksfileにrecipe[npm]を追加するとエラーになってしまうようです。 環境:MacOSX 10.9.5 Chefをインストール Development Kitでインストールする。 まず、https://downloads.getchef.com/chef-dk からpkgをダウンロードして、インストールする。 chef-dkに入っているのrubyへのパスを通す
ローカルの仮想マシンにChefでRails環境を構築する方法を説明します。 Chefで構築しているので、AWSやVPSなどのsshやrubyがインストールできる環境であれば同じ環境を構築できます。 具体的には、次のようなものを使用するようにしています。 CentOS 6.6 Ruby(rbenv) Nginx Unicorn PostgreSQL Redis Fluentd(td-agent) Chefのソースはnipe0324/chef - GitHubに配置しています。 また、インストール方法はREADME - install processに記載しています。 動作確認 Ruby 2.2.2 Vagrant 1.7.2 Chef 12.4.1 目次 1. Chefのあれこれ基本 2. Chefのインストール 3. chefリポジトリを作成 4. クックブックを作成 4.1. サーバーの
ある日何気なく最新版のvagrant-berkshelf(4.0.4)を入れたところ、 It appears that you are not using the ChefDK. Please note that Vagrant Berkshelf works best when used with the ChefDK, and other installation methods are not officially supported. Please download and install the latest version of the ChefDK from: https://downloads.getchef.com/chef-dk and follow the installation instructions. Do not forget to add the Chef
test-kitchen+chef-zero環境でchef-shellを起動するオプションが複雑だったので調べたメモ。 chef-shellはchef-clientのインタプリタ環境です。chefレシピの開発してると毎回全部のレシピを実行するには何かと時間がかかるので、こーゆーインタプリタをうまく使いこなせると、chefレシピ開発が捗って良い感じですね。 基本的なchef-shellの使い方は公式のドキュメントを参照。 https://docs.chef.io/chef_shell.html このエントリでは、test-kitchen+chef-zero環境で構築中のインスタンス内で、chef-shell起動するにはもろもろ色々なオプション指定してやらないといけないのですが、これが割りと複雑だったのでオプションのコピペ用のメモとしてまとめておきます。 まず、chefで構築対象のインスタンス
2014/06/24 に Opscode 公式ブログで From Solo to Zero: Migrating to Chef Client Local Mode という記事が公開されました。記事を要約すると「Chef Solo はオワコンだから Chef Client Local Mode を使え」ということのようです。 Chef Client Local Mode (旧 Chef Zero) って? Chef Client Local Mode (旧 Chef Zero) は Chef Solo の全ての機能を備えており、Chef Server に移行する際にも楽です。Chef Client 11.8.0 から採用されました。実行するには chef-client に --local-mode または -z オプションを付けます。 Local Mode ではローカルのファイルシステムか
はじめに ChefのCookbookを作成するにあたって,スケーラブルやメンテンナス性といった観点からどんなCookbookを作成すればいいか悩むことがある. これの解決策として,The Environment Cookbook PatternにしたがってCookbookを作成する方法があります. この記事の和訳やより詳しくかかれているのに以下があります. 大規模にchefを使い倒すためのcookbook pattern Chef Cookbook の管理方針、The Environment Cookbook Pattern について そしてすごくありがたいことに,2つ目の記事のなかに実際のCookbooksのStructureに関する件まで載せてくださっていました. environment-cookbook |_ .chef |_ knife.rb |_ cookbooks |_ env
今回の作業 ・Chef Development Kit(chef-DK)のインストール ・knife-soloインストール ・knife設定ファイルの作成 ・chefリポジトリ作成 ・Node設定 ・vagrant起動、ssh接続 ・nodeをchef対応にする ・cookbookを作成する chefとは? 複数サーバーをrubyコードで設定管理するツール chef-DKとは? 下記のようなgem、プラグインをパッケージングしている全部のせkit OS依存しないようにrubyなども内包されている。様々な依存関係を考慮することなく 扱えるようになっている。 ・chef-solo:chefを1台だけ管理するために用いるプラグイン ・knife:設定ファイル(レシピ)の雛形作成、設定のサーバーへの適用など実際にChefが調理する際の道具 ・Berkshelf:いろんな人が作ったレシピを複数保持す
はじめに Macでローカルのテスト環境を自動構築したいなーと思い、手を出してみました。 初心者なので、できる限りシンプルな構成で、とりあえず試してみることにします。 事前準備 まずはインストール VirtualBox:VirtualBox 4.3.26 Download VirtualBox Vagrant:Vagrant 1.7.2 Download Vagrant Chef:Chef Development Kit Version: 0.4.0 Download Chef 必要な Vagrant プラグインをインストールしておく $ vagrant plugin install vagrant-omnibus $ vagrant plugin install vagrant-chef-zero $ vagrant plugin install vagrant-vbox-snapshot
※chef-soloとかlocalmode前提の資料です。社内で需要があるようだったので。 手順だけ与えたら何も考えずに実行されちゃうホラーな危うい状況を回避する目的で軽くかいてます。 機能を把握しないままコマンド打つのやどのように冗長性が保たれるか知らずに構成組むのと同じことで Chefも何が行われるか分からないで実行すると無知は罪になる場合があるという単なる事実を認識するとよさげ。 chefリポジトリ内にあるchef用の設定ファイルにそれぞれの機能のpathを指定しているはず。 ex) cat /path-to-ChefRepo/.chef/knife.rb -------------- chef_repo = File.join(File.dirname(__FILE__), "..") current_dir = File.dirname(__FILE__) log_level :
普段はChef Soloしか使う機会がないので、Chef Serverを試してみた。 ちなみに、Chef12からはClientからServerへのリクエストにおいて、SSL証明書の検証が必要になり安全性がたかまったとか。 初めに一度それぞれの名称を整理しておく。 Chef Server:Clientの管理を行う(host name: chef_server) Chef Node:Chefによって構築、管理される対象(host name: chef_client) Chef Workstation:Cookbookの作成、更新を行う端末 Vagrantfileを作成chef-server、chef-clientの2台分VMを定義する Vagrantfileにプロビジョニングコード追加して、 とりあえず、Chef ServerとChefのインストール。 ntpで時刻も合わせておく。 Chef
一口にChef-Clientといっても、Chef-Solo、Chef-Clientローカルモード、Knife-Solo、Knife-Zeroとたくさんあるので、どれを選べばいいか迷ってしまうでしょう。さらにクライアント・サーバ構成を取ろうとすると、オンプレミス版Chef-Server、ホステッド版Chef-Serverが出てきます。 まずChefを活用する前に、あなたのインフラにはどのような構成がふさわしいか、チャートで簡単に確認してみましょう。なお、Chefバージョン12を前提としています。 Chef-Serverの機能が必要? Chef-Serverの機能とは、次のものが挙げられます。 Search Organization, Group, User 認証 承認 まず、おおざっぱにこれらの機能が必要かどうかを確認します。ここで注意してほしいのは、確認するのはChef-Serverの機能
本稿は Managing Secrets with Chef Vault (2013/09/19) の和訳です。 本記事(訳注:原文)はjtimberman's Code Blogに掲載されたものです。 2年前、PostfixのSASL認証のためにChefの暗号化Data Bagを使う記事を書きました。当時、私のISPが認証なしのSMTPを許可していなかったので、自宅サーバからのcronメールやその他重要なメールを受け取るための解決策を見つけなければいけませんでした。そのあたりをあまり気にしないISPに変更してから、その記事で書いたコードはもう使っていません。 しかし、それは秘密情報を扱わないことを意味するものではありません! 実際、Chefで管理している個人システムでは扱っていませんが、OpscodeのホステッドEnterprise Chef環境ではもちろん扱っています。ウェブアプリケー
一部のサブシステムの構築で、プロビジョニングツールを捨ててみた。じゃあどうするのかというとシェルスクリプトでやる。今回はこのやりかたが一番楽できるような気がしたので試している。 具体的にはPackerからシェルスクリプトとServerspecを実行してAMIを煮込む。おいしくできあがったらそいつから構築。もしミドルウェアより下の層のコンフィグ類に変更があったらまた煮込む。構築する。新しい方に切り替える。つまり”捨てるインフラ”にする。 プラットフォームはAWS。 (追記)ちなみにchefなどのプロビジョニングツールがめんどくさいからシェルスクリプトにしたというよりは、捨てる前提のサーバだからシェルスクリプトでの構築も選択肢として出てきたということです。ただ自分個人の嗜好としてchefはもう飽きたというのも事実です。なお、オンプレだと同じサーバで継続してプロビジョニングすることになるのでch
2015/03/03 この記事は書かれてから1年以上が経過しており、最新の情報とは異なる可能性があります techChefSSHVagrant Vagrant, Chef 周りの知見が溜まってきたのでそろそろまとめていきたいと思っているのですが、 まだまだ自分の中で分からない部分も多く、 かつ自分はインフラエンジニアではないので、 正直どこまで書いたらいいのか迷っています。 また、chef-solo はなくなるから、これからは chef-zero だ、なんて言われても、 インフラに関する前提知識が薄いので、なかなかついていくことができません・・・。 とはいえ、少なくとも使っていく中で自分なりの思想みたいなものははっきりしてきたので、 まずはそこから書いてみようと思います。 Vagrant の用途を考えるVagrant が何なのかを知らない人に説明するとすれば、 仮想マシン(VM)をコマンド
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く