SlideShare une entreprise Scribd logo
1  sur  56
Télécharger pour lire hors ligne
クラウド上でのChef活用と
ベストプラクティス
2013年7月23日 ニフティクラウド meet-up!
#ncmeetup
ソリューション事業部 第一開発部
株式会社エスキュービズム
赤間 慧 Satoshi Akama
自己紹介
タブレットPOS
ECサイト構築
たまに
iPadアプリ開発
サーバサイド開発
サーバ構築・管理
company me
最近はフルスタックエンジニアに片足突っ込んでいます
基本的にdev側の人間です
Chef
CMS開発
Cassandraベースの
解析ツール
サーバ構築・管理
etc
赤間 慧 Satoshi Akama
https://github.com/sakama
Chefの基本
弊社での実際のシステム構築時のChef活用方法
Chefのベストプラクティス
service do
end
action [:enable, :start]
service do
end
action [:enable, :start]
今後Chefサーバ等の運用で実現したいことservice do
end
action [:enable, :start]
service do
end
action [:enable, :start]
本日のrecipe
Chefの基本
Chefとは
Configuration Management Framework
サーバセットアップの自動化を実現するためのFramework
IaaS
OpenStack
Puppet
Chef
Capistrano
Fabric
クラウド or
VM立ち上げ
OS
インストール
System Configuration
<OSやミドルウェアの設定・構成管理>
2013.07.14開催July Tech Festa 2013でのGosuke Miyashitaさんの資料で紹介されていた
「Provisioning Tool chain by Lee Thompson at Velocity 2010」による
日本語訳の責は私にあります。直訳だと全て「設定」「管理」のようになるので翻訳が難しい
http://www.slideshare.net/mizzy/serverspec-jtf2013
Application Service
Orchestration
<デプロイ等>
Bootstrapping
<初期セットアップ>
Configuration
Orchestration
Chefとは 2
RubyのDSLで記述
package "apache2" do
action :install
end
Infrastructure as Code
サーバ構築手順書を元にした手動セットアップ
スクリプトやファイルの記述を元にセットアップを行う
= プログラマブルなInfrastructure
= 特定のタスク向けに設計された言語
DSL(Domain-Specific Language)
汎用プログラミング言語
= C、Java...etc
汎用モデリング言語
= UML...etc
Chefの最大の特徴
冪等性
べき とう せい
ある操作を1回行っても複数回行っても結果が同じであることをいう概念
がChefによってある程度担保される
(使用するResource、recipeの記述による)
Chefの動作の仕組み
cookbooks
Apache cookbook
Postfix cookbook
recipes
Ruby cookbook
cookbookを元にChefが自動でサーバを設定する
サーバ群
recipes
recipes
Chef Family 1
Hosted Chef
Private Chef
Opscodeがホスティングする
Firewall内で稼働する
http://www.opscode.com/hosted-chef/
この2つは国内で採用した話を聞きませんが...
Facebook等で採用事例
私も詳しくは知りませんm(_ _)m
Chef Family 2
Chef Server/Client(管理対象数十台over)
Chef Solo(管理対象数台∼頑張れば数十台)
Chef ServerとChef ClientからなるClient/Serverモデル
Chefを単体で動作させるもの。最初はこちらで十分
Chef Serverを使っているようなケースでもテスト中はこちらを使ったり
Chef Server / Chef Server Web UI / Couch DB / Rabbit MQ / Chef Solr
構成要素がかなりFat
インストールは最近は楽
ネットで検索するとChef Severのインストール難しいというような
ブログが数多く出てきますが、最近はインストーラで一発です
ただし、運用はまた別の話
実質この2択になるのでは?
+
+
+
情報がChef Server 10.xのもので古かったです
懇親会でご指摘を頂いたのですが
Chef Server 11.xはコアエンジンがRubyからErlangに、
Couch DBからPostgreSQLになっているそうです。
手元で試したらフロントもnginxになっていた...
omnibus インストーラ
omnibusインストーラ
Opscodeより提供されているインストーラ。
Chef Serverからの実行時等様々な場所で使われています
OS/ディストリビューションを判断してChefをインストール。
独自パスでRubyも入るのでこれだけでChefを使う準備が整う
curl -k -L https://www.opscode.com/chef/install.sh ¦ bash
Rubyの実行パス→/opt/chef/embedded/bin/ruby
gemのインストール→/opt/以下になる
逆に言うとアプリでRubyが必要な場合等は別途インストールが必要
システムを汚しにくい
※Chef関連のコマンドが/usr/bin/以下にシンボリックリンクとして貼られる
cookbook
Chefでセットアップを行うための設定のまとまり。ミドルウェア単位が多い
cookbooks
attributes
definitions
files
recipes
属性を管理
例) ApacheのMaxClientsの値
レシピで使う共通関数等
サーバ上に配置したいファイル等
例) git cloneする際のデプロイキー
Cookbookの動作を決める一番よく触る部分
Apache cookbook
Postfix cookbook
recipes
Ruby cookbook
recipes
recipes
templates
erb形式のテンプレートファイル。
値をassignして使用する
例) httpd.conf.erb
Recipe
様々なResourceが各種処理を担当する
template
directory
service
Resource
package "apache2" do
action :install
end
package
Resourceや記述によっては冪等性が損なわれる
パッケージのインストール、アップグレードなど
erb形式のテンプレートを元にファイルを設置
ディレクトリを設定
サービスの管理/起動
script、executeリソースはChefのDSLの制約を受けずに何でもかけるが、
冪等性が損なわれる恐れがあるので多用は良くないと言われる
Chefの周辺ツール knife
Chef Server/Chef Client使用時
Chef Solo使用時
Chefに付属するコマンドラインツール
knife-*
knifeのプラグイン。
上のknife-soloの他、knifeコマンドでIaaS制御できるものなどがある
knife-soloというものがあります
Chef Soloは基本的に対象サーバ上でchef-soloコマンドを実行するが、
リモートサーバのprovisioningが実行できる
knife client create Clientの作成
knife cookbook upload Chef Serverへcookbookをアップロード
knife ssh 複数のサーバで同時にコマンドを実行
多用すると思います
Chefの周辺ツール Vagrant
VirtualBox等のVMをコマンドラインから立ち上げるツール。Chef界隈での利用率高し
基本コンポーネント
Box
利用方法
マシン起動やprovisioning実行したりするコマンドツール群
Vagrantfile
Vagrantコマンドライン
(仮想)マシンを作成する際のテンプレートとなる
Boxを元にマシンを立ち上げる際の設定を記述
# Boxを追加
$ vagrant box add base http://files.vagrantup.com/lucid32.box
# Vagrantfileの作成
$ vagrant init
# マシンの起動
$ vagrant up
ここ最近の「IT系難読単語」化してますが、
開発者のMitchel Hashimotoさんが「アイ メイク ヴェイグラント」と仰ってます
http://www.youtube.com/watch?v=vk7hHhhIt10
Vagrantのコマンド
vagrant up
vagrant provision
vagrant halt
vagrant destroy
VM起動、VMのprovisioningを実行
ChefやPuppetによるVMのprovisioningを実行
VMの停止
VMの破棄
vagrant ssh 起動したVMにSSH接続
コマンド一覧
Vagrant.configure("2") do ¦config¦
config.vm.provision :shell, :inline => "echo Hello"
config.vm.define :web do ¦web¦
web.vm.box = "apache"
end
config.vm.define :db do ¦db¦
db.vm.box = "mysql"
...
Multi Machine機能 Vagrantfileの記述を変えると1回のvagrant upで複数VM立ち上げ可能
Vagrant Plugin
Sahara
VMの状態を記録して後でその時点にロールバックできる
vagrant plugin installコマンドを使いますが、実体はrubygemsから取得
様々なpluginが公開されています
vagrant plugin install <name> プラグインのインストール
vagrant plugin list インストールされているプラグインの一覧表示
vagrant sandbox on sandboxモードをonにする
vagrant plugin install sahara
+ コマンド
vagrant sandbox rollback 変更を元に戻す
vagrant sandbox commit 変更を反映する
vagrant sandbox off sandboxモードをoffにする
IaaS等にも対応
Vagrant1.1からはIaaS上のサーバをVagrant経由で起動することも可能
gem経由ではなくパッケージでの提供に変更になっている (dmg、exe、rpm等) ので
旧バージョン使っている方や昔の雑誌・ブログ等を参照する場合要注意
VirtualBox
VMWare Fusion
AWS
Rackspace
対応状況
標準対応
標準対応
vagrant-awsプラグインで対応
vagrant-rackspaceプラグインで対応
Vagrant本あるよ
Vagrant: Up and Running
今のところ英語版だけですが、日本語版出すことが
2013/7/12のvagrant meetup後に決まったようです。
英語版でも150ページ弱、7章のプラグイン開発とか読まないなら100ページほどです。
Create and Manage Virtualized Development Environments
By Mitchell Hashimoto
Vagrantからのニフティクラウド利用
...私はあります
ところでニフティクラウドユーザなそこのあなた、こう思ったことはありませんか?
Vagrantからニフティクラウド上の
サーバ立ちあげたい...
vagrant-niftycloud ないの?
Vagrantからのニフティクラウド利用
...私はあります
 作ってみた /
ところでニフティクラウドユーザなそこのあなた、こう思ったことはありませんか?
Vagrantからニフティクラウド上の
サーバ立ちあげたい...
vagrant-niftycloud ないの?
vagrant-niftycloud(開発版)
ニフティクラウド上のサーバ立ち上げ、provisioning実行するためのVagrant plugin
・rsyncを使ったファイル転送
・VagrantがSSH接続してコマンド実行可能な状態にする
Chef以外も動作
Puppet / Ansible(Vagrant1.2.0+) / CFEngine (Vagrant1.2.0+)
$ vagrant plugin install vagrant-niftycloud
Chef以外はまだテストしていないが、pluginでやっていることは
だけなのでVagrantでサポートしているものは動く気がする...
vagrant-niftycloud コマンド
vagrant up --provider=niftycloud
vagrant provision
vagrant halt/suspend
vagrant resume
サーバ立ち上げ、サーバのprovisioningを実行
Chef等によりサーバのprovisioningを実行
サーバの停止
停止したサーバの起動
vagrant ssh 起動したサーバにSSH接続を実行
vagrant destroy サーバの破棄
用意しているコマンド ※Vagrantのnetwork機能については非対応
ローカルのVirtualBoxやVMWare Fusionではダメ?
Develop Locally.
Test Remotely.
今までもリモートサーバ上でchef-soloを叩いたり、
ローカルマシン上でknife-soloを使ってリモートサーバのセットアップを行うことはできた
実際に使うRemote環境でテストが簡単に行える
http://www.youtube.com/watch?v=vk7hHhhIt10
by Mitchel Hashimoto
providerは適材適所で使い分けましょう。VirtualBoxもproviderの一つに過ぎない
Vagrantを使うとより簡単にリモートサーバ上でのテストができる
vagrant-niftycloud 利用想定シーン
利用想定シーン
サーバが立ち上がるのはローカルマシン上のVirtualBox等より遅いがprovisioningは速い
本番環境にニフティクラウドを使用している場合、本番と同じ環境でテストできる
Chef cookbookやPuppetのマニフェストの開発を行いたい場合
オススメしない例
CIを行う際のJenkins等からの利用
Jenkinsサーバ上のVM立ち上げるよりサーバリソースを食わない(弊社事例紹介で後述)
本番環境構築
 →vagrantユーザがいたりするのでおすすめしません。あくまでテスト環境構築を想定しています。
サーバのprovisioningを行わない場合(単純にコマンドラインからサーバ立ちあげたい)
 →ニフティクラウドのCLIやSDK使うほうがいいと思います
  vagrant up --provider=niftycloud --no-provision である程度可能
  (rsyncによるローカルファイルの同期までは走る)
+
+
+
手元のVM向けboxと同じ名前でニフティクラウド用のbox追加しておけば、
普段はローカルでvagrant up、ニフティクラウドで動くか試す時はprovider指定してvagrant upとか
vagrant-niftycloud 制約
・vagrantユーザがパスワード無しでsudoできる必要がある
・sudoがttyなしで実行できる必要がある
・SSH秘密鍵はパスフレーズが空である必要がある
・場合によってはchef-client/chef-soloのインストールが必要
通常のVagrant使用時と同様に
各自プライベートイメージを作成して使用する必要があります m(__)m
ニフティクラウド公式のOSイメージそのままは使えません
vagrant-niftycloud 協力依頼
バグ報告、pull requestなどお待ちしています
https://github.com/sakama/vagrant-niftycloud
トラックナンバーが足りません!
Configuration Management Framework
周辺のテスト事情
Chef以外のもの、Chefと関係なく独立して動作するものも含みます
シンタックスチェック
ユニットテストと
呼ばれているもの
結合テストと
呼ばれているもの
Chef Spec
rspec-puppet
Minitest Chef Handler
Cucumber Chef
Test Kitchen
rspec-system
serverspec
Foodcritic
knife cookbook test
puppet lint
構築済みのサーバに対するテスト
Report Handler / Exception Handler
使い方によってはいろいろできると思います
実はよく目にしているかもしれない
handlerを作成するとChefで実行された内容等が取得可能
・実行完了時にメール通知
・実行完了時にIRCに通知する
・実行時のログをIaaSのディスクにアップロードする
http://docs.opscode.com/essentials_handlers.html
[2013-07-18T08:54:47+00:00] INFO: Chef Run complete in 37.044959889 seconds
[2013-07-18T08:54:47+00:00] INFO: Running report handlers
[2013-07-18T08:54:47+00:00] INFO: Report handlers complete
Chef Solo実行完了時に表示されるアレです
様々なhandlerが公開されています
Report Handler
Exception Handler
Chef実行完了時に特定動作を起動する
Chef実行失敗時に特定動作を起動する
ドキュメントを読んでいて魔が差した
ちょっとしたサーバ仕様書ぐらいだったら
出力できるんじゃない?
Report Handler / Exception Handler
サーバ仕様書書くの意外と大変ですよね?
ドキュメントを読んでいて魔が差した
ちょっとしたサーバ仕様書ぐらいだったら
出力できるんじゃない?
 作ってみた /
Report Handler / Exception Handler
chef-handler-pdf(3割程度ネタです)
サーバ仕様書がPDFで出力できます
・実装方法がいくつかあるようですが、cookbookとして実装
・Chefの初回実行時しか機能しません...
・全部はpushしてないので、気が向いたらUPします
・サーバの基本情報はOhaiから取得
・実行されたresourceの内容はReport Handler経由で取得
https://github.com/sakama/chef-handler-pdf
弊社での実際のシステム構築時の
Chef活用方法
利用範囲
ニフティクラウド
専用サーバ
VPS等
全体では数十台程度のサーバをChefを使って構築している
{
{
テスト環境構築
各開発者の開発環境構築
小売店舗向け端末
APIサーバ
ECサイト
飲食店向け端末
APIサーバ
本番環境構築
Chef利用について
Opscodeコミュニティcookbookをベースにしている
元々が個人的にサーバセットアップを自動化したくて始めたものが公式プロジェクト化
公開されているcookbookを使うだけでも「それなりに」動くので、
エンジニアの皆さんなら「作りました」メソッド使えばいいのでは...(私見)
サーバは構成が多岐に渡るのでロールで複数構成対応
基本的には全開発者が利用者
・Chefに詳しい人間ばかりではない
・Objective-C等の開発のみをやっている開発者が開発環境構築で使うこと
 等も考慮する必要がある
web、db、app等
改善できた点
クオリティの統一
基本Appエンジニアしかおらずサーバ構築スキルに差があったがクオリティの統一
サーバ提供の迅速化
開発環境構築の手間が減った
・新しく入社したメンバーやクライアントサイドの開発をしていて、
 サーバサイドに詳しくないメンバーでも開発環境構築が楽にできる
・全員が共通の環境構築が可能( ちょっと違う 環境はchefのattributeで対応可能)
以前はVMイメージ配布
→数GB単位のイメージファイルのネットワーク経由での配布は時間が掛かる
サーバ構築依頼からセットアップ完了までの迅速化
Chef Server
導入は進めていますが、まだ利用していません
使えるところと使えないところがある
通常の受注案件
・保守契約の絡み
・他社も作業を行う場合がある
使用不可
SaaS型での提供もやっていまして...
全て自社で管理
使用可
node.jsベースの管理画面までは作ってあるが、マンパワーが...
Chef cookbookの開発
ローカルでVagrant+VirtualBoxで開発
vagrant upでサーバ立ち上げ+provisioning実行
以後vagrant provisionを繰り返す
$ vagrant up
VM already created. Booting if it's not already running...
Clearing any previously set forwarded ports...
Forwarding ports...
-- 22 => 2222 (adapter 1)
Creating shared folders metadata...
Clearing any previously set network interfaces...
Running any VM customizations...
Booting VM...
Waiting for VM to boot. This can take a few minutes.
実際のサーバのセットアップ
http://www.engineyard.co.jp/blog/2013/chef-tutorial-updated/
https://speakerdeck.com/naoya/vagrant-plus-chef
実際のサーバのセットアップ 2
そのやり方でやっています(申し訳ございません)
(1) settings.jsonにサーバ設定内容を記述して下さい
(2) install.shをキックして下さい
全員にRubyの実行環境構築強制かつknife soloコマンド叩くの強制するのは時期尚早で
それよりはChefの効果を実感してもらって広めるのが先と判断
# omnibusインストーラでChefをインストール
curl -k -L https://www.opscode.com/chef/install.sh ¦ bash
# chef-soloコマンド実行
chef-solo -c ./solo.rb -j ./conf/settings.json
install.shの内容
というよりchef-soloコマンドすら叩かせてないです
使いたい人はknife solo使ってという形にしています
Chef cookbookのCI
社内サーバでJenkins+Vagrant+VirtualBox
Jenkinsサーバ
VirtualBox
Vagrant
cookbookをホストしている
社内Gitサーバ
master
develop
git pull
Cent OS6.x Cent OS 5.x
vagrant up
Chef cookbookのCI 2
Gitのmaster、developのcookbookに対して1日各2回
通常のソフトウェアのテストの場合、Jenkinsの「SCMをポーリング」を使用して
レポジトリにgit push(svn commit)されたらビルド実行が多いが、
・同時に同一のVagrantfileを使って複数のVM立ちあげられないので
 複数ビルドを並列実行できない(Multi VM機能という意味ではなく)
・複数ビルドが同時に走るとメモリ食う
・1回のテストに1h弱掛かるのでビルドのキュー待ちが凄いことになりそう
以上の理由により 定時実行
構築済みサーバのテストは行えていない
serverspec等利用してテストできるところまでできればいいが、
現状recipe適用時にexit 1吐かないかどうかを確認しているレベル
Chef cookbookのCI 3
JenkinsでBuild Pipelineを組んでいる
JenkinsのBuild Pipelineプラグインを使用しカスタムビューを作成
web
db
app
webロールのみ dbロールのみ その他のロール
Chef cookbookのCI 4
Build Pipeline
継続インテグレーションのプラクティスの1つで、
テスト等を複数のステップに分割し、順番に流していく
一般的なアプリケーションのBuild Pipeline
cookbookのCIのためのBuild Pipeline
SCMへの
コミットをトリガー
結合テスト
サーバへ
デプロイ
ユニットテストが
(成功したら¦失敗しても)実行
(手動¦自動)で実行
ロール1で
テスト
ロール2で
テスト
ロール3で
テスト
定時実行 ロール1のテストが
(成功したら¦失敗しても)実行
ロール2のテストが
(成功したら¦失敗しても)実行
+
+
ユニットテスト
Chef cookbookのCI 5
定期的なテストはやった方がよい
・(rpm¦deb)パッケージのダウンロードURLが変わった
・アプリ側の修正でデプロイの部分が動かなくなった
1回のテストで1時間弱かかるので手動は無理
・時間掛かるテストは機械に任せましょう
この方法はやめたい
テストがコード変更以外の理由で失敗することが多い
なぜかApacheの起動に失敗したり
→Jenkinsからのアラートメール多発で狼少年状態に
メモリ食う
8GBメモリ搭載のサーバ使っても
vagrantのMulti Machine機能使用して
同時にVM2つが限界
VirtualBoxがちょっと不安定...?
・i386のboxは追加できてもx86_64のboxが追加できないことがあった
・vagrant destroy -fに失敗することが多発→VMの残骸が残ってDisk Full
 CUIのみのホストOSだと設定が面倒なのでGUI使えるホストOSが良い
今後Chefサーバ等の
運用で実現したいこと
新CI環境 構想
IaaS上でテストする
Jenkinsサーバ
Vagrant
cookbookをホストしている
社内Gitサーバ
master
develop
git pull
Cent OS6.x Cent OS 5.x
vagrant up
IaaS
テストの並列実行が可能に
今まではJenkinsサーバのスペックの制約で1つずつ実行
ロール1で
テスト
ロール2で
テスト
ロール3で
テスト
並列実行でテスト実行時間を短縮
ロール4で
テスト
ロール1で
テスト
ロール2で
テスト
ロール3で
テスト
ロール4で
テスト
30分以上短縮
サーバ利用料節約のため、
ここでFailした場合
以降は実行しない
構築済みサーバのテスト
serverspecを入れたい
・記述が容易(RSpecベース)
・Chefを使用せずに構築したサーバのテストも行える
・SSHさえ繋がればテストできる
マンパワー不足により手を付けていなかったが
もっと早く取り入れていても良かった
IaaSとの連携
AWSでいうOpsworksが広く実装されれば
サーバセットアップ〜提供まで楽になる
本番環境一歩手前のテスト環境としての利用
http://www.youtube.com/watch?v=vk7hHhhIt10
VagrantのMulti Provider機能を利用して
・ローカルVM環境
・リモートテスト環境
 を適宜切り替えて利用
ニフティクラウドの場合
Cloud Automation βが6/4に公開された
(1) 設定用JSONから漂う芳醇なChefの香り
{
"run_list": [
"recipe[nc::dependency_resolver]",
"recipe[nc::manager_store]",
"recipe[nc::manager]"
],
"nc": {
(2) 中でもChef使ってるみたいです...よ?
Chefのベストプラクティス
アプリのデプロイは別に考える
アプリのデプロイはCapistrano等使う方が良いかも
Chef使ってアプリのデプロイまで行うと、
アプリ改修の余波を食らってデプロイ失敗するというのを食らったことが
IaaSのオートスケーリング使う場合、Chefで都度構築していると間に合わない
Dev、Opsが明確に分かれている場合ちょうど線引きできる?(作業的な意味で)
サーバセットアップまではやるので、以後デプロイからはよろしく...とか。
subversionリソースはsvnサーバが
https&自己署名(オレオレ)証明書だと動作しませんでした
ミドルウェア設定まで完了済みのイメージから
インスタンス起動&アプリのみデプロイツールでデプロイ
+
+
+
Chef Serverだけがあればいいというわけではない
・cookbookの開発環境
・運用態勢
・メンバーのスキル
・CI環境
無理にChef Server使う必要はなさそう
身の丈にあったツールを使えばいいんでは
どうせならChef Server入れるぜ!という気持ちは分かりますが
日々改善
END

Contenu connexe

Tendances

Chef+Vagrantでクラウド環境構築自動化ハッカソン 結果発表 #atithack
Chef+Vagrantでクラウド環境構築自動化ハッカソン 結果発表 #atithackChef+Vagrantでクラウド環境構築自動化ハッカソン 結果発表 #atithack
Chef+Vagrantでクラウド環境構築自動化ハッカソン 結果発表 #atithack
満徳 関
 
Performance and Scalability of Web Service
Performance and Scalability of Web ServicePerformance and Scalability of Web Service
Performance and Scalability of Web Service
Shinji Tanaka
 
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くしたNginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
toshi_pp
 
DevOpsを実現する為のChef実践テクニック Chef12対応版
DevOpsを実現する為のChef実践テクニック Chef12対応版DevOpsを実現する為のChef実践テクニック Chef12対応版
DevOpsを実現する為のChef実践テクニック Chef12対応版
Yusuke Ando
 

Tendances (20)

入門 Chef Server #biglobetechtalk
入門 Chef Server #biglobetechtalk入門 Chef Server #biglobetechtalk
入門 Chef Server #biglobetechtalk
 
130412 kayac-cinnamon
130412 kayac-cinnamon130412 kayac-cinnamon
130412 kayac-cinnamon
 
Infrastrucure as a CodeにおけるJenkinsの役割
Infrastrucure as a CodeにおけるJenkinsの役割Infrastrucure as a CodeにおけるJenkinsの役割
Infrastrucure as a CodeにおけるJenkinsの役割
 
さくらのインフラコード
さくらのインフラコードさくらのインフラコード
さくらのインフラコード
 
Chef(Server)と AWS OpsWorks(tm)の比較
Chef(Server)と AWS OpsWorks(tm)の比較Chef(Server)と AWS OpsWorks(tm)の比較
Chef(Server)と AWS OpsWorks(tm)の比較
 
さくらインターネットにおけるServerspec導入事例(DevOps勉強会 #3 Serverspecの巻)
さくらインターネットにおけるServerspec導入事例(DevOps勉強会 #3 Serverspecの巻)さくらインターネットにおけるServerspec導入事例(DevOps勉強会 #3 Serverspecの巻)
さくらインターネットにおけるServerspec導入事例(DevOps勉強会 #3 Serverspecの巻)
 
Redmine Ansible
Redmine AnsibleRedmine Ansible
Redmine Ansible
 
Ansible tower 構築方法と使い方
Ansible tower 構築方法と使い方Ansible tower 構築方法と使い方
Ansible tower 構築方法と使い方
 
Chefで作る開発環境
Chefで作る開発環境Chefで作る開発環境
Chefで作る開発環境
 
Vagrant+Ansibleで検証環境を簡単構築
Vagrant+Ansibleで検証環境を簡単構築Vagrant+Ansibleで検証環境を簡単構築
Vagrant+Ansibleで検証環境を簡単構築
 
Chef+Vagrantでクラウド環境構築自動化ハッカソン 結果発表 #atithack
Chef+Vagrantでクラウド環境構築自動化ハッカソン 結果発表 #atithackChef+Vagrantでクラウド環境構築自動化ハッカソン 結果発表 #atithack
Chef+Vagrantでクラウド環境構築自動化ハッカソン 結果発表 #atithack
 
Performance and Scalability of Web Service
Performance and Scalability of Web ServicePerformance and Scalability of Web Service
Performance and Scalability of Web Service
 
Server specのご紹介
Server specのご紹介Server specのご紹介
Server specのご紹介
 
Mackerelによる
簡単サーバー管理入門と発展形
Mackerelによる
簡単サーバー管理入門と発展形Mackerelによる
簡単サーバー管理入門と発展形
Mackerelによる
簡単サーバー管理入門と発展形
 
~Dockerfileの開発を劇的に楽にする~ Dockerfile開発環境 EDGE
~Dockerfileの開発を劇的に楽にする~ Dockerfile開発環境 EDGE~Dockerfileの開発を劇的に楽にする~ Dockerfile開発環境 EDGE
~Dockerfileの開発を劇的に楽にする~ Dockerfile開発環境 EDGE
 
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くしたNginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
 
Docker ホスティングサービス 'Arukas' での Mesos + Marathon の活用について(Mesos勉強会)
Docker ホスティングサービス 'Arukas' での Mesos + Marathon の活用について(Mesos勉強会)Docker ホスティングサービス 'Arukas' での Mesos + Marathon の活用について(Mesos勉強会)
Docker ホスティングサービス 'Arukas' での Mesos + Marathon の活用について(Mesos勉強会)
 
DevOpsを実現する為のChef実践テクニック Chef12対応版
DevOpsを実現する為のChef実践テクニック Chef12対応版DevOpsを実現する為のChef実践テクニック Chef12対応版
DevOpsを実現する為のChef実践テクニック Chef12対応版
 
Appsody でnodejsのアプリを立ち上げよう!
Appsody でnodejsのアプリを立ち上げよう!Appsody でnodejsのアプリを立ち上げよう!
Appsody でnodejsのアプリを立ち上げよう!
 
KUSANAGIユーザグループ東京 第1回勉強会 資料
KUSANAGIユーザグループ東京 第1回勉強会 資料KUSANAGIユーザグループ東京 第1回勉強会 資料
KUSANAGIユーザグループ東京 第1回勉強会 資料
 

Similaire à クラウド上でのChef活用と ベストプラクティス v0.2.0

Vagrant を Web開発環境に使う
Vagrant を Web開発環境に使うVagrant を Web開発環境に使う
Vagrant を Web開発環境に使う
Masashi Shinbara
 
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
Daisuke Ikeda
 
[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js
[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js
[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js
Amazon Web Services Japan
 

Similaire à クラウド上でのChef活用と ベストプラクティス v0.2.0 (20)

Vagrantと網元で開発環境を作ってみよう
Vagrantと網元で開発環境を作ってみようVagrantと網元で開発環境を作ってみよう
Vagrantと網元で開発環境を作ってみよう
 
Vagrant - 最近流行ってるらしいけど何者?
Vagrant - 最近流行ってるらしいけど何者?Vagrant - 最近流行ってるらしいけど何者?
Vagrant - 最近流行ってるらしいけど何者?
 
もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境
もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境
もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境
 
Vagrant を Web開発環境に使う
Vagrant を Web開発環境に使うVagrant を Web開発環境に使う
Vagrant を Web開発環境に使う
 
今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門
 
Wakame Project - 自作クラウド研究会
Wakame Project - 自作クラウド研究会Wakame Project - 自作クラウド研究会
Wakame Project - 自作クラウド研究会
 
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
 
2016/12/17 ASP.NET フロントエンドタスク入門
 2016/12/17 ASP.NET フロントエンドタスク入門 2016/12/17 ASP.NET フロントエンドタスク入門
2016/12/17 ASP.NET フロントエンドタスク入門
 
OpenShift 3で、DockerのPaaSを作る話
OpenShift 3で、DockerのPaaSを作る話OpenShift 3で、DockerのPaaSを作る話
OpenShift 3で、DockerのPaaSを作る話
 
Ansible/Vagrantでアドテク環境を最速構築
Ansible/Vagrantでアドテク環境を最速構築Ansible/Vagrantでアドテク環境を最速構築
Ansible/Vagrantでアドテク環境を最速構築
 
PWA 総まとめ @ABC 2018 Spring
PWA 総まとめ @ABC 2018 SpringPWA 総まとめ @ABC 2018 Spring
PWA 総まとめ @ABC 2018 Spring
 
分散環境におけるDocker とオーケストレーション
分散環境におけるDocker とオーケストレーション分散環境におけるDocker とオーケストレーション
分散環境におけるDocker とオーケストレーション
 
Scala 初めての人が Heroku で Web アプリを公開するまで
Scala 初めての人が Heroku で Web アプリを公開するまでScala 初めての人が Heroku で Web アプリを公開するまで
Scala 初めての人が Heroku で Web アプリを公開するまで
 
Serverless frameworkを使ってみた話 at #nseg #90
Serverless frameworkを使ってみた話 at #nseg #90Serverless frameworkを使ってみた話 at #nseg #90
Serverless frameworkを使ってみた話 at #nseg #90
 
cross2012a fujya
cross2012a fujyacross2012a fujya
cross2012a fujya
 
[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js
[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js
[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js
 
はてなのサービスの開発環境
はてなのサービスの開発環境はてなのサービスの開発環境
はてなのサービスの開発環境
 
VM 基盤運用チームの DevOps
VM 基盤運用チームの DevOpsVM 基盤運用チームの DevOps
VM 基盤運用チームの DevOps
 
ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chef
 
Vagrant で作る PHP 開発環境 [実践編]
Vagrant で作る PHP 開発環境 [実践編]Vagrant で作る PHP 開発環境 [実践編]
Vagrant で作る PHP 開発環境 [実践編]
 

Dernier

Dernier (10)

LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 

クラウド上でのChef活用と ベストプラクティス v0.2.0