SlideShare a Scribd company logo
Submit Search
Upload
Login
Signup
itamaeで一撃サーバーProvisioning
Report
Yuto Ogi
Follow
Software Engineer/Programmer at FOURIER.Inc
Nov. 12, 2015
•
0 likes
•
4,038 views
1
of
33
itamaeで一撃サーバーProvisioning
Nov. 12, 2015
•
0 likes
•
4,038 views
Download Now
Download to read offline
Report
Technology
Hamamatsu.rb#58のLT
Yuto Ogi
Follow
Software Engineer/Programmer at FOURIER.Inc
Recommended
Vagrant+Chef
Daisuke Ando
377 views
•
15 slides
Website build exercise_opsguide_japanese
meilai521
304 views
•
13 slides
シンプルなシステム構成フレームワークalnair
Naoya Inada
1.7K views
•
30 slides
PHP7実環境ベンチ2016春
Ryo Tomidokoro
1.5K views
•
56 slides
apachehereというPHPのBuiltin Serverっぽいやつをつくった
Junichi Ishida
5.1K views
•
35 slides
これからはじめるCoda2とSublime Text 2
masaaki komori
5.2K views
•
11 slides
More Related Content
What's hot
Railsの運用について
Yuuki Namikawa
1.5K views
•
7 slides
Re: WebServer BenchMarking
Ryo Tomidokoro
3.1K views
•
23 slides
Webサーバ勉強会4 nginx で php-fpm を動かしてみた
do_aki
3.8K views
•
20 slides
社内勉強会 - chef
Nemoto Yusuke
1.1K views
•
37 slides
PowerShell de Azure
Atsushi Kojima
1.6K views
•
20 slides
Varnish
Ayako Hatori
573 views
•
14 slides
What's hot
(20)
Railsの運用について
Yuuki Namikawa
•
1.5K views
Re: WebServer BenchMarking
Ryo Tomidokoro
•
3.1K views
Webサーバ勉強会4 nginx で php-fpm を動かしてみた
do_aki
•
3.8K views
社内勉強会 - chef
Nemoto Yusuke
•
1.1K views
PowerShell de Azure
Atsushi Kojima
•
1.6K views
Varnish
Ayako Hatori
•
573 views
Bgworkerで簡易クラスタ管理
Masahiko Sawada
•
815 views
恋に落ちるデプロイツール
totty jp
•
5.1K views
当社のawsへの取組
Mercari Inc.
•
3.3K views
Kickstart, Puppet, Docker
Hirokazu Tokuno
•
453 views
React
卓馬 三浦
•
312 views
PHP 5.4のビルトインウェブサーバー
Atsushi Matsuo
•
2.2K views
Linux Server 冗長化~リアルタイム同期でラクラク運用~
miraitas
•
2.3K views
Sendslacker
RyogaHorikoshi
•
62 views
PostgreSQL on Amazon EC2の可能性
Serverworks Co.,Ltd.
•
2.4K views
No SSH (@nojima; KMC関東例会)
京大 マイコンクラブ
•
2K views
SubversionとSugarsync
Hidenori Goto
•
1.2K views
JAWSUG版 PostgreSQL on Amazon EC2の可能性
Serverworks Co.,Ltd.
•
1.7K views
Devlove mackerel
Daisuke Kasuya
•
2.6K views
130412 kayac-cinnamon
Yuki Shibazaki
•
1.2K views
Similar to itamaeで一撃サーバーProvisioning
Chef
Ishikawa Yuya
306 views
•
27 slides
ネットワークエンジニアのための Puppet / Chef
npsg
8.1K views
•
57 slides
環境構築自動化ツールのご紹介
Etsuji Nakai
2.7K views
•
23 slides
20090328
小野 修司
3K views
•
112 slides
20060419
小野 修司
479 views
•
24 slides
成長を加速する minne の技術基盤戦略
Hiroshi SHIBATA
9.4K views
•
40 slides
Similar to itamaeで一撃サーバーProvisioning
(20)
Chef
Ishikawa Yuya
•
306 views
ネットワークエンジニアのための Puppet / Chef
npsg
•
8.1K views
環境構築自動化ツールのご紹介
Etsuji Nakai
•
2.7K views
20090328
小野 修司
•
3K views
20060419
小野 修司
•
479 views
成長を加速する minne の技術基盤戦略
Hiroshi SHIBATA
•
9.4K views
6 月 18 日 Next - Kubernetes のコンテナ技術ですべてをシンプルに
Google Cloud Platform - Japan
•
2.9K views
統合監視ソフトウェア Zabbix新バージョン2.0の紹介
takanori suzuki
•
12.4K views
BioDevOpsによる再現性のあるバイオインフォマティクス環境の構築
Itoshi Nikaido
•
5.2K views
Chef Howto with Vagrant + Berkshelf
Masahiro NAKAYAMA
•
3.6K views
Chef社内勉強会(第1回)
Yoshinori Nakanishi
•
15.6K views
20080524
小野 修司
•
1.2K views
Composer による依存管理 と Packagist によるライブラリの公開
Shogo Kawahara
•
18.8K views
Version管理 1
hakoika-itwg
•
1.4K views
Capistranoで自動デプロイ
toyoshi
•
4.6K views
今日から使い始めるChef
Masahiro NAKAYAMA
•
7.6K views
Cloudstack user group meeting in osaka
Naotaka Jay HOTTA
•
948 views
Windows PowerShell 2.0 の基礎知識
shigeya
•
3.3K views
serverless
Akira Otsuka
•
3.2K views
Wasm blazor and wasi 2
Takao Tetsuro
•
354 views
More from Yuto Ogi
Rails application template
Yuto Ogi
1.5K views
•
15 slides
Ruby with AWS DynamoDB
Yuto Ogi
856 views
•
28 slides
s3_website
Yuto Ogi
943 views
•
13 slides
OSC浜名湖2016 Hamamatsu.rbの歩みとITコミュニティとの上手な関わり方
Yuto Ogi
1.2K views
•
32 slides
浜松Ruby会議01
Yuto Ogi
1.2K views
•
57 slides
DMLを実行するrubyスクリプトをmigrationファイルのように管理するRailsプラグインを作った
Yuto Ogi
2K views
•
14 slides
More from Yuto Ogi
(12)
Rails application template
Yuto Ogi
•
1.5K views
Ruby with AWS DynamoDB
Yuto Ogi
•
856 views
s3_website
Yuto Ogi
•
943 views
OSC浜名湖2016 Hamamatsu.rbの歩みとITコミュニティとの上手な関わり方
Yuto Ogi
•
1.2K views
浜松Ruby会議01
Yuto Ogi
•
1.2K views
DMLを実行するrubyスクリプトをmigrationファイルのように管理するRailsプラグインを作った
Yuto Ogi
•
2K views
Web制作者のためのサーバー勉強会@沼津
Yuto Ogi
•
925 views
Hamamatsurb#30
Yuto Ogi
•
1.3K views
Introducing aws ruby sdk
Yuto Ogi
•
1.8K views
20130310 jaws tokai2013
Yuto Ogi
•
1.3K views
20130112_出張JAWSUG浜松_Androidの会浜松支部
Yuto Ogi
•
958 views
リーダブルコード 第二章
Yuto Ogi
•
7K views
Recently uploaded
20230921_IoTLT_vol103_kitazaki_v1.pdf
Ayachika Kitazaki
81 views
•
16 slides
2023情報処理学会関西支部大会-G12.pdf
KoseiShimoda1
6 views
•
11 slides
IGDA Japan SIG Audio #20-1 室内・野外でのマイク収録と整音.pdf
IGDA Japan SIG-Audio
97 views
•
31 slides
遠隔お酌IoTLT2309.pptx
Yoshiaki Ito
57 views
•
12 slides
GraphQLはどんな時に使うか
Yutaka Tachibana
6 views
•
37 slides
gtk4_gem_usage.pdf
ssuser0ef4681
11 views
•
6 slides
Recently uploaded
(10)
20230921_IoTLT_vol103_kitazaki_v1.pdf
Ayachika Kitazaki
•
81 views
2023情報処理学会関西支部大会-G12.pdf
KoseiShimoda1
•
6 views
IGDA Japan SIG Audio #20-1 室内・野外でのマイク収録と整音.pdf
IGDA Japan SIG-Audio
•
97 views
遠隔お酌IoTLT2309.pptx
Yoshiaki Ito
•
57 views
GraphQLはどんな時に使うか
Yutaka Tachibana
•
6 views
gtk4_gem_usage.pdf
ssuser0ef4681
•
11 views
CCoE実践者コミュニティ#1_CCoEが進めるセキュリティカイゼンの旅.pptx
Tomoaki Tada
•
25 views
松下研究室紹介_関西大学高槻キャンパスオープンキャンパス
Matsushita Laboratory
•
26 views
テスト自動化.pdf
ssuserf8ea02
•
16 views
CatBoost on GPU のひみつ
Takuji Tahara
•
203 views
itamaeで一撃サーバーProvisioning
1.
itamaeで 一撃サーバー構築 Hamamatsu.rb #58 @jacoyutorius
2.
itamae • サーバーのプロビジョニングツール • サーバーにインストールするパッケージや ミドルウェアのインストール内容や設定を Rubyのコードで記述する
3.
package "nginx" do action
:install end
4.
• サーバーの あるべき状態
を定義したファ イルに従ってパッケージやミドルウェアの インストールや設定を自動的にかつ一括で 行うツール • Linuxディストリビューションによる違 いを吸収してくれたりする プロビジョニングツール
5.
• 冪等性(何度実行しても同じ状態になる) • プログラムから扱いやすい形式のファイ ルで定義することで、バージョン管理ツー ルによる差分管理が容易 •
Chef, Puppet, Ansibleなど プロビジョニングツール
6.
覚える用語
7.
・レシピ ・リソース
8.
レシピ • パッケージやミドルウェアのインストール内容 をRubyで記述したもの package "nginx"
do action :install end
9.
リソース • 対象サーバー上にて実行する命令 package "nginx"
do action :install end
10.
リソース • package • file •
directory • git • remote_file • template • user • group • execute
11.
install nginx package "nginx"
do action :install end
12.
create user user "yuto"
do action :create end
13.
create group group "yuto"
do action :create end
14.
template template "/root/.bash_profile" do source
"./templates/bash_profile.erb" variables(root_path: node[:root_path]) end
15.
shell execute echo helloitamae"
do user "root" command "echo helloitamae" end
16.
$ tree ├── Gemfile ├──
Vagrantfile ├── cookbooks │ └── recipes │ ├── ruby_install.rb │ └── templates └── servers └── target_server └── node.yml
17.
install (gem) gem install
itamae
18.
install (package) > echo
'deb https://dl.bintray.com/ itamae/itamae trusty contrib' ¦ sudo tee /etc/apt/sources.list.d/itamae.list > sudo apt-key adv --keyserver keyserver.ubuntu.com --recv D401AB61 > sudo apt-get install itamae Ubuntu 14.04 trustly https://github.com/itamae-kitchen/omnibus-itamae
19.
実行(local) itamae local ruby_install.rb
20.
実行(vagrant) itamae ssh --vagrant
-h hostname ruby_install.rb
21.
実行(ssh) itamae ssh -h
hostname ruby_install.rb
22.
色々オプションをつけて結局こうなる bundle exec itamae
ssh -h hostname cookbooks/recipes/ruby_install.rb -y servers/ servername/node.yml -l debug
23.
オプション ̶dry-run, -d - 試しに実行したい ̶log-level,
-l - 詳細なログが見たいとき ̶node-yaml, -y - サーバーの固有情報を記述したファイル(node.yml)のパスを指定 and more …
24.
plugins •itamae-plugin-recipe-rbenv •itamae-plugin-resource-iptables •itamae-plugin-recipe-minecraft •itamae-plugin-resource-aws •and more... (https://rubygems.org/search?query=itamae- plugin) plugins
25.
plugin usage Gemfile gem "itamae" gem
"itamae-plugin-recipe-rbenv"
26.
覚えるリソースも数種類しかないので gemの中身も読みやすい。 itamae-plugin-recipe-rbenvのコア部分 (system.rb) itamae-plugin-recipe-rbenv
27.
• 使われているのはgit, package,
file, executeリソースくらい • インストールパスやrubyのバージョン はnode.ymlに定義。 ディストリビュー ションによる分岐はSpecinfraから取得 itamae-plugin-recipe-rbenv
28.
system.rb
29.
node.yml system.rb
30.
まとめ
31.
まとめと今後 • itamae楽しい • 上手く動くと全能感 •
多少ハマるところもある (VM宛てに実行した時と実行結果が違う とか。OSイメージの問題かもしれない) • 実運用ではサーバー構築手順書をレシピ化した(検証中) • 出来上がったサーバーのテスト( => Serverspec)
32.
otto • 何も考えずにとりあえず開発環境の入ったVMが 欲しい場合はotto • Ruby
/ PHP / Go / node.jsのインストール されたVMが一発で手に入る(尚、バージョンの指定 はできない模様)
33.
おわり Hamamatsu.rb #58 @jacoyutorius