Submit Search
Upload
itamaeで一撃サーバーProvisioning
•
2 likes
•
4,041 views
Yuto Ogi
Follow
Hamamatsu.rb#58のLT
Read less
Read more
Technology
Slideshow view
Report
Share
Slideshow view
Report
Share
1 of 33
Download now
Download to read offline
Recommended
Vagrant+Chef
Vagrant+Chef
Daisuke Ando
Website build exercise_opsguide_japanese
Website build exercise_opsguide_japanese
meilai521
シンプルなシステム構成フレームワークalnair
シンプルなシステム構成フレームワークalnair
Naoya Inada
PHP7実環境ベンチ2016春
PHP7実環境ベンチ2016春
Ryo Tomidokoro
apachehereというPHPのBuiltin Serverっぽいやつをつくった
apachehereというPHPのBuiltin Serverっぽいやつをつくった
Junichi Ishida
これからはじめるCoda2とSublime Text 2
これからはじめるCoda2とSublime Text 2
masaaki komori
MHA, Murakumo & Me
MHA, Murakumo & Me
Michael H. Oshita
Webサーバ構築で心がけるべき二つのこと
Webサーバ構築で心がけるべき二つのこと
TrinityT _
Recommended
Vagrant+Chef
Vagrant+Chef
Daisuke Ando
Website build exercise_opsguide_japanese
Website build exercise_opsguide_japanese
meilai521
シンプルなシステム構成フレームワークalnair
シンプルなシステム構成フレームワークalnair
Naoya Inada
PHP7実環境ベンチ2016春
PHP7実環境ベンチ2016春
Ryo Tomidokoro
apachehereというPHPのBuiltin Serverっぽいやつをつくった
apachehereというPHPのBuiltin Serverっぽいやつをつくった
Junichi Ishida
これからはじめるCoda2とSublime Text 2
これからはじめるCoda2とSublime Text 2
masaaki komori
MHA, Murakumo & Me
MHA, Murakumo & Me
Michael H. Oshita
Webサーバ構築で心がけるべき二つのこと
Webサーバ構築で心がけるべき二つのこと
TrinityT _
Railsの運用について
Railsの運用について
Yuuki Namikawa
Re: WebServer BenchMarking
Re: WebServer BenchMarking
Ryo Tomidokoro
Webサーバ勉強会4 nginx で php-fpm を動かしてみた
Webサーバ勉強会4 nginx で php-fpm を動かしてみた
do_aki
社内勉強会 - chef
社内勉強会 - chef
Nemoto Yusuke
PowerShell de Azure
PowerShell de Azure
Atsushi Kojima
Varnish
Varnish
Ayako Hatori
Bgworkerで簡易クラスタ管理
Bgworkerで簡易クラスタ管理
Masahiko Sawada
恋に落ちるデプロイツール
恋に落ちるデプロイツール
totty jp
当社のawsへの取組
当社のawsへの取組
Mercari Inc.
Kickstart, Puppet, Docker
Kickstart, Puppet, Docker
Hirokazu Tokuno
React
React
卓馬 三浦
PHP 5.4のビルトインウェブサーバー
PHP 5.4のビルトインウェブサーバー
Atsushi Matsuo
Linux Server 冗長化~リアルタイム同期でラクラク運用~
Linux Server 冗長化~リアルタイム同期でラクラク運用~
miraitas
Sendslacker
Sendslacker
RyogaHorikoshi
PostgreSQL on Amazon EC2の可能性
PostgreSQL on Amazon EC2の可能性
Serverworks Co.,Ltd.
No SSH (@nojima; KMC関東例会)
No SSH (@nojima; KMC関東例会)
京大 マイコンクラブ
SubversionとSugarsync
SubversionとSugarsync
Hidenori Goto
JAWSUG版 PostgreSQL on Amazon EC2の可能性
JAWSUG版 PostgreSQL on Amazon EC2の可能性
Serverworks Co.,Ltd.
Devlove mackerel
Devlove mackerel
Daisuke Kasuya
130412 kayac-cinnamon
130412 kayac-cinnamon
Yuki Shibazaki
Chef
Chef
Ishikawa Yuya
ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chef
npsg
More Related Content
What's hot
Railsの運用について
Railsの運用について
Yuuki Namikawa
Re: WebServer BenchMarking
Re: WebServer BenchMarking
Ryo Tomidokoro
Webサーバ勉強会4 nginx で php-fpm を動かしてみた
Webサーバ勉強会4 nginx で php-fpm を動かしてみた
do_aki
社内勉強会 - chef
社内勉強会 - chef
Nemoto Yusuke
PowerShell de Azure
PowerShell de Azure
Atsushi Kojima
Varnish
Varnish
Ayako Hatori
Bgworkerで簡易クラスタ管理
Bgworkerで簡易クラスタ管理
Masahiko Sawada
恋に落ちるデプロイツール
恋に落ちるデプロイツール
totty jp
当社のawsへの取組
当社のawsへの取組
Mercari Inc.
Kickstart, Puppet, Docker
Kickstart, Puppet, Docker
Hirokazu Tokuno
React
React
卓馬 三浦
PHP 5.4のビルトインウェブサーバー
PHP 5.4のビルトインウェブサーバー
Atsushi Matsuo
Linux Server 冗長化~リアルタイム同期でラクラク運用~
Linux Server 冗長化~リアルタイム同期でラクラク運用~
miraitas
Sendslacker
Sendslacker
RyogaHorikoshi
PostgreSQL on Amazon EC2の可能性
PostgreSQL on Amazon EC2の可能性
Serverworks Co.,Ltd.
No SSH (@nojima; KMC関東例会)
No SSH (@nojima; KMC関東例会)
京大 マイコンクラブ
SubversionとSugarsync
SubversionとSugarsync
Hidenori Goto
JAWSUG版 PostgreSQL on Amazon EC2の可能性
JAWSUG版 PostgreSQL on Amazon EC2の可能性
Serverworks Co.,Ltd.
Devlove mackerel
Devlove mackerel
Daisuke Kasuya
130412 kayac-cinnamon
130412 kayac-cinnamon
Yuki Shibazaki
What's hot
(20)
Railsの運用について
Railsの運用について
Re: WebServer BenchMarking
Re: WebServer BenchMarking
Webサーバ勉強会4 nginx で php-fpm を動かしてみた
Webサーバ勉強会4 nginx で php-fpm を動かしてみた
社内勉強会 - chef
社内勉強会 - chef
PowerShell de Azure
PowerShell de Azure
Varnish
Varnish
Bgworkerで簡易クラスタ管理
Bgworkerで簡易クラスタ管理
恋に落ちるデプロイツール
恋に落ちるデプロイツール
当社のawsへの取組
当社のawsへの取組
Kickstart, Puppet, Docker
Kickstart, Puppet, Docker
React
React
PHP 5.4のビルトインウェブサーバー
PHP 5.4のビルトインウェブサーバー
Linux Server 冗長化~リアルタイム同期でラクラク運用~
Linux Server 冗長化~リアルタイム同期でラクラク運用~
Sendslacker
Sendslacker
PostgreSQL on Amazon EC2の可能性
PostgreSQL on Amazon EC2の可能性
No SSH (@nojima; KMC関東例会)
No SSH (@nojima; KMC関東例会)
SubversionとSugarsync
SubversionとSugarsync
JAWSUG版 PostgreSQL on Amazon EC2の可能性
JAWSUG版 PostgreSQL on Amazon EC2の可能性
Devlove mackerel
Devlove mackerel
130412 kayac-cinnamon
130412 kayac-cinnamon
Similar to itamaeで一撃サーバーProvisioning
Chef
Chef
Ishikawa Yuya
ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chef
npsg
環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介
Etsuji Nakai
20090328
20090328
小野 修司
20060419
20060419
小野 修司
成長を加速する minne の技術基盤戦略
成長を加速する minne の技術基盤戦略
Hiroshi SHIBATA
6 月 18 日 Next - Kubernetes のコンテナ技術ですべてをシンプルに
6 月 18 日 Next - Kubernetes のコンテナ技術ですべてをシンプルに
Google Cloud Platform - Japan
統合監視ソフトウェア Zabbix新バージョン2.0の紹介
統合監視ソフトウェア Zabbix新バージョン2.0の紹介
takanori suzuki
BioDevOpsによる再現性のあるバイオインフォマティクス環境の構築
BioDevOpsによる再現性のあるバイオインフォマティクス環境の構築
Itoshi Nikaido
Chef Howto with Vagrant + Berkshelf
Chef Howto with Vagrant + Berkshelf
Masahiro NAKAYAMA
Chef社内勉強会(第1回)
Chef社内勉強会(第1回)
Yoshinori Nakanishi
20080524
20080524
小野 修司
Composer による依存管理 と Packagist によるライブラリの公開
Composer による依存管理 と Packagist によるライブラリの公開
Shogo Kawahara
Version管理 1
Version管理 1
hakoika-itwg
Capistranoで自動デプロイ
Capistranoで自動デプロイ
toyoshi
今日から使い始めるChef
今日から使い始めるChef
Masahiro NAKAYAMA
Cloudstack user group meeting in osaka
Cloudstack user group meeting in osaka
Naotaka Jay HOTTA
Windows PowerShell 2.0 の基礎知識
Windows PowerShell 2.0 の基礎知識
shigeya
serverless
serverless
Akira Otsuka
Wasm blazor and wasi 2
Wasm blazor and wasi 2
Takao Tetsuro
Similar to itamaeで一撃サーバーProvisioning
(20)
Chef
Chef
ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chef
環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介
20090328
20090328
20060419
20060419
成長を加速する minne の技術基盤戦略
成長を加速する minne の技術基盤戦略
6 月 18 日 Next - Kubernetes のコンテナ技術ですべてをシンプルに
6 月 18 日 Next - Kubernetes のコンテナ技術ですべてをシンプルに
統合監視ソフトウェア Zabbix新バージョン2.0の紹介
統合監視ソフトウェア Zabbix新バージョン2.0の紹介
BioDevOpsによる再現性のあるバイオインフォマティクス環境の構築
BioDevOpsによる再現性のあるバイオインフォマティクス環境の構築
Chef Howto with Vagrant + Berkshelf
Chef Howto with Vagrant + Berkshelf
Chef社内勉強会(第1回)
Chef社内勉強会(第1回)
20080524
20080524
Composer による依存管理 と Packagist によるライブラリの公開
Composer による依存管理 と Packagist によるライブラリの公開
Version管理 1
Version管理 1
Capistranoで自動デプロイ
Capistranoで自動デプロイ
今日から使い始めるChef
今日から使い始めるChef
Cloudstack user group meeting in osaka
Cloudstack user group meeting in osaka
Windows PowerShell 2.0 の基礎知識
Windows PowerShell 2.0 の基礎知識
serverless
serverless
Wasm blazor and wasi 2
Wasm blazor and wasi 2
More from Yuto Ogi
Rails application template
Rails application template
Yuto Ogi
Ruby with AWS DynamoDB
Ruby with AWS DynamoDB
Yuto Ogi
s3_website
s3_website
Yuto Ogi
OSC浜名湖2016 Hamamatsu.rbの歩みとITコミュニティとの上手な関わり方
OSC浜名湖2016 Hamamatsu.rbの歩みとITコミュニティとの上手な関わり方
Yuto Ogi
浜松Ruby会議01
浜松Ruby会議01
Yuto Ogi
DMLを実行するrubyスクリプトをmigrationファイルのように管理するRailsプラグインを作った
DMLを実行するrubyスクリプトをmigrationファイルのように管理するRailsプラグインを作った
Yuto Ogi
Web制作者のためのサーバー勉強会@沼津
Web制作者のためのサーバー勉強会@沼津
Yuto Ogi
Hamamatsurb#30
Hamamatsurb#30
Yuto Ogi
Introducing aws ruby sdk
Introducing aws ruby sdk
Yuto Ogi
20130310 jaws tokai2013
20130310 jaws tokai2013
Yuto Ogi
20130112_出張JAWSUG浜松_Androidの会浜松支部
20130112_出張JAWSUG浜松_Androidの会浜松支部
Yuto Ogi
リーダブルコード 第二章
リーダブルコード 第二章
Yuto Ogi
More from Yuto Ogi
(12)
Rails application template
Rails application template
Ruby with AWS DynamoDB
Ruby with AWS DynamoDB
s3_website
s3_website
OSC浜名湖2016 Hamamatsu.rbの歩みとITコミュニティとの上手な関わり方
OSC浜名湖2016 Hamamatsu.rbの歩みとITコミュニティとの上手な関わり方
浜松Ruby会議01
浜松Ruby会議01
DMLを実行するrubyスクリプトをmigrationファイルのように管理するRailsプラグインを作った
DMLを実行するrubyスクリプトをmigrationファイルのように管理するRailsプラグインを作った
Web制作者のためのサーバー勉強会@沼津
Web制作者のためのサーバー勉強会@沼津
Hamamatsurb#30
Hamamatsurb#30
Introducing aws ruby sdk
Introducing aws ruby sdk
20130310 jaws tokai2013
20130310 jaws tokai2013
20130112_出張JAWSUG浜松_Androidの会浜松支部
20130112_出張JAWSUG浜松_Androidの会浜松支部
リーダブルコード 第二章
リーダブルコード 第二章
Recently uploaded
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Recently uploaded
(7)
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
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
Download now