Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
20140221_geechs.pdf
Search
wadap
February 26, 2014
0
67
20140221_geechs.pdf
wadap
February 26, 2014
Tweet
Share
More Decks by wadap
See All by wadap
20200311_コネヒト_リモートワークを支える文化
wadap
2
2.5k
副業が難しいと思う理由
wadap
3
590
2016-11-10_chuo_university
wadap
2
3.8k
how_to_survive.pdf
wadap
0
100
how_to_choose_technology
wadap
7
4.2k
nanapiの会社風土と文化づくり
wadap
2
23k
20140826_nanapi_engineer_culture_pub.pdf
wadap
2
130
nanapiの開発現場をどのようにして回しているか
wadap
40
11k
nanapi TechBlog
wadap
1
6.9k
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
26
5.2k
Gamification - CAS2011
davidbonilla
80
5k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
Side Projects
sachag
452
42k
GitHub's CSS Performance
jonrohan
1030
460k
Making the Leap to Tech Lead
cromwellryan
132
8.9k
Embracing the Ebb and Flow
colly
84
4.4k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
231
17k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Rails Girls Zürich Keynote
gr2m
93
13k
Art, The Web, and Tiny UX
lynnandtonic
296
20k
Faster Mobile Websites
deanohume
304
30k
Transcript
geechs night 株式会社nanapi Co-Founder 取締役 執行役員 CTO 和田修一
Intruduction
自己紹介 • 和田修一 / @wadap • 1981年生まれ • 株式会社nanapi Co-Founder(共同創業者)
取締役 執行役員 CTO • サーバインフラ〜サーバサイド開発が得意分野 • I love emacs!
αʔϏεհ w ੜ׆ͷܙ͕ू·ΔαΠτ IUUQOBOBQJKQ w ༷ʑͳϋπʔΛఏڙ͢Δα Πτͱͯ͠ϦϦʔε w ݄̍̕ϦϦʔε w
݄ؒສ66 ݄ؒສ7JTJUPS
αʔϏεհ • 即レスQAアプリアンサー 「アンサー」で検索! • 質問してから数分以内に回答 がくるのが特徴 • 2013年12月リリース LineQとリリース被った!
個人的にやってること 6/*9తͳΞϨ IUUQXBEBQIBUFOBCMPHDPN ࿈ࡌˏHJIZPKQ ࠷ۙॻ͍ͯͳ͍ IUUQHJIZPKQBENJOTFSJBMVOJY
• Unixの入門講座 http://schoo.jp/class/286 • スライドだけならすぐに見ら れるので興味あればどうぞ スクーで講義もやりました
略歴 • 2005年 新卒にて楽天株式会社へ入社 システム知識ゼロ、配属されてから技術を学ぶ サーバ・インフラ系の部署に配属される • 2009年 楽天を退職し、弊社代表の古川と起業 ロケットスタートCTO(旧社名)に就任
主にやっていること • テクノロジーの文化を社内に浸透させること • エンジニア・デザイナーの採用活動 • nanapiのプロダクトすべてのインフラまわり • 新規事業の立ち上げのリードエンジニア
• 最近のこの取材で話してます http://itpro.nikkeibp.co.jp/ article/COLUMN/20140212/ 536209/ テクノロジーの文化?
How to manage the infrastructure
従来のインフラ管理 $ ssh server $ wget http://ftp.meisei-u.ac.jp/httpd/httpd-2.2.22.tar.gz $ tar xvfz
httpd-2.2.22.tar.gz $ cd httpd-2.2.22 $ ./configure $ make $ make test $ sudo make install
手順書は運用できない • その手順書はメンテナンスされている? • 手順書通りに開発環境も本番環境もつくられてる? • 個々の開発環境を使いたいときどうするの? • 100台のサーバでも同じことできんの? etc…
Infrastructure as Code
• インフラにおける作業を独自 DSLで記述することができる • Rubyで直接書くことも可能 • OSの違いなども抽象化するこ とで吸収 • 同様のツールでPuppet
Chefを使った管理
以下のrecipeで実現 remote_file "/tmp/httpd-2.2.22.tar.gz" do source "http://ftp.meisei-u.ac.jp/httpd/httpd-2.2.22.tar.gz" owner "root" group "root"
mode "0644" end ! script "install httpd" do interpreter "bash" user "root" cwd Chef::Config[:file_cache_path] ! code <<-EOH tar xf httpd-2.2.22.tar.gz && cd httpd-2.2.22 ./configure make && make test && make install EOH end
Code Review
• Chef用に書かれたコードは Github上で管理 • メインメンテナはインフラ担 当(いまは私) • アプリ担当者からの変更依頼 はPull Requestベースで受け
入れる インフラもコードレビュー
Chefの実行
新規環境構築 $ git clone
[email protected]
:nanapi/cookbooks.git $ cd cookbooks $ vagrant
up nanapi
Infrastructure as Code • コード化しておくことで、開発・本番環境すべてに おいで最新の環境を保つことができる • 開発・本番ともに新規環境構築はすべて自動 • 変更履歴もGit上で追うことができ、PullRequest
ベースで設定ファイルもレビューできる
これからやりたいこと • TDD(Test-driven development)のインフラ導入 • CircleCIなどを使用した、インフラにおける継続的 インテグレーション
• https://github.com/wadap/ emacs-chef • chefをより快適にかくための emacsマイナーモード • まだ実装中。思い出してpush したくらいのレベル 趣味的な活動
ΤϯδχΞɾσβΠφʔืूதʂ