こんにちは。GMOペパボで広報を担当しているちんさつちゃんです。 先日の【前編】第5回ペパボテックカンファレンス〜インフラエンジニア大特集〜開催レポートに続き、今回は後半のトークセッションレポートをお届けします!
(8)トークセッション「ペパボのインフラを読み解く」
最後のプログラムは、長年ペパボのサービスインフラを支えてきた立役者たちのトークセッションです。 右から、先程LTにも登壇した福岡支社の @tshst 、ECサービスを中心に担当しているシニアエンジニア @sugy 、モデレーターと今回の司会を担当するインフラグループマネージャーの @tamon の3名が登壇します。
普段は東京と福岡、離れた場所で働いている3人。どんな話題が聞けるのか、ペパボスタッフも楽しみにしていました。 最初から最後まで濃い話が多かったため、できる限り当日の様子を略さずに お届けしようと思います。がんばるぞ!
今日のテーマは 「ペパボのインフラを読み解く」 ということで、サーバー等のファシリティを含めたモノとしてのインフラと、それに携わるエンジニアという2つの軸をもとに話を進めていきます。
「エンジニアとして成長しているのではなく、サーバーをつくるのがうまくなっているだけだった」
今でこそ、イベント前半で触れられたNyahのようなプライベートクラウドでの運用を行っているペパボですが、以前はGMOインターネットグループの専用サーバーを借りてサービス運用を行っていました。 そこからまずはハウジングに移行したのですが、そのときに苦労したことは?という話題に。
sugy「ちょうど私が入社した2006年頃に移行が始まったのですが、これまで外部に任せていたことをすべて自分たちでやらないといけなくなって、実はとても大変でした。ほぼ毎日データセンターに通っていましたね。」
真夏に汗だくになりながら十数台のサーバーを運んで、何日もかけて作業したこともあるそうです。
一方福岡ではどのような様子だったのでしょうか。
tshst「福岡ではしばらくホスティングで運用していたのですが、サーバーのマイグレーションを数百台単位で行うことになりました。ところがホスティングサービスのインフラエンジニアたちは福岡にいるので、なにかあっても離れた場所にあるデータセンターに簡単に行くことができないというのが悩みでしたね。現地に行かず、物理サーバーをどうやって運用管理するかが課題でした。」
tamonの「その頃はサーバーの構築にどれくらい時間がかかっていたんですか?」の問いについては、福岡で1台につき半日、東京では1〜3日かかっていたとのこと。
そんなサーバー構築ですが、作業を繰り返していくうちに、次第に1台あたりにかかる時間もだんだん縮小されていきました。 一見効率化されているようにみえる結果ですが、tamonはその事態にある不安を抱いていたそうです。
「たしかに、サーバー構築自体は効率よくできるようになっている。でもそれはエンジニアとして成長しているわけではなく、ただサーバーをつくるのがうまくなっているだけなんです」
構成管理ツールを導入してみて・・・
こうした思いもあり、積極的に新たな技術を取り入れていこうという動きが高まり、2007年頃には構成管理ツールのひとつであるPuppetの導入が始まりました。 当初はPuppetに対して社内エンジニアの知識も経験も少なく、「定まった手順書もあるし、今の方法でも問題なく構築できているのにどうしてこんな苦労をしなければならないのか?」と不安に思うこともあったとのことですが、Puppet導入を進めた結果は一目瞭然。 日単位で作業していたサーバー構築は、30分〜1時間ほどで完了するようになりました。また同時に、10台以上並列化して構築できるようになったため、時間の短縮以上の効果もありました。 またなによりも、検証やテストを簡単に行えるようになったということがエンジニアたちにとっては大きかったようです。
しかし一方で、Puppetのバージョンが上がると動かなくなってしまうなどの問題もありました。その場合に備えて、各エンジニアはどういった工夫をしてきたのでしょうか。
tshst「ホスティングチームは、Puppet導入の数年前に大規模な構築を行ったときのものを基本として引き継ぎました。 特に2x系から3x系に移すときにはかなり苦労しましたが、動かないトラブルに遭遇するたびにエンジニア同士が議論を交わしてブラッシュアップしていくという文化が生まれたのはよかったと思います。このときの経験が元で意識も高まり、エンジニアの成長にもつながりました」
一方、sugyからは「実はPuppet導入時には意識が高まらなかったんです」と驚きの一言が。
sugy「Puppetはうまく動かせない、実行後の反応が遅いといったイメージがあったので、導入が決まってからも最初はどれほどプラスになるのか懐疑的でした。時代の流れに乗って考え方も変わってきたのが正直なところです。仮想環境自体が充実して、Vagrantなどのツールも揃ってたところで初めてPuppetの価値がわかってきました」
現在では東京ではオンプレミスで150台、クラウドで600台弱の台数を管理しているとのこと。 福岡でも、これから集約予定ではありますが現段階で1,000台ほどのサーバーを管理しています。
普段福岡ではホスティングサービス、東京ではASPサービスを中心に運用しているので、実はお互いの最新状況を聞く機会はなかなかないペパボスタッフ。 この回答には社内スタッフからも驚きの声があがりました。
インフラエンジニアに迫る危機!?
ペパボでは既に多くの場面で開発エンジニアもPuppetを使っており、当日来場していた参加者の9割以上が構成管理ツールを使っているという現在。
前半のトークでも登場したペパボのプライベートクラウド「Nyah」の導入以降、ペパボの構成管理はどう変わったのでしょうか。
sugy「オンプレミスで運用していた頃にはハードウェアに依存するコードの書き方をしなければならなかったり、ハードウェアベンダーを交えて運用したりする必要があったんですが、仮想環境上で動かすことによってコードがよりシンプルになりました。それはすごくいいことだと思います」
サーバーそのものがこれだけの変遷を辿ってきた一方で、そこに携わるインフラエンジニアの立ち位置はどう変化してきたのでしょうか。
tamon「これまでの発表にもあったように、サーバーがコード化されつつあることによって開発エンジニアとインフラエンジニアの距離がどんどん近くなっています。インフラエンジニアの領域を開発エンジニアが理解してくれることはとても嬉しく歓迎すべきことではありますが、一方でインフラエンジニアにとっては危機的な状況かもしれません。我々の仕事がなくなるかもしれないんですから。インフラエンジニアならではの生き残り方を見つけないといけない状況にあると思います」
sugy「実はこのテーマで登壇のお話をもらったときに、“おじさんは生き残れるのか・・・”という気持ちを隠しきれませんでした(笑)。実際にペパボで今活躍しているインフラエンジニアを見ると、インフラエンジニアだけど開発に近いレイヤーに進出していく人と、より専門性を高めてレイヤーに深く潜っていく人の2種類がいるなという印象です」
tshst「福岡でも同様で、オンプレミスの強みを最大限に活かすためkernelを直接触るなど、レイヤーの深いところを掘り下げていくエンジニアがいる一方、mrubyなどをはじめとしてもっとコードを書く動きもある。ふた手に分かれて、それぞれの道を模索している感じですね」
しかしお互いの領域が重なりあってきた結果、コミュニケーションコストが省力化され、エンジニアがこれまで以上に運用の改善や効率化などに時間を割けるようになったことも事実です。 これらの動きを通じて、ペパボのインフラエンジニアはどのような動きをしていくのでしょうか。
tamon「ペパボはこれからも数年前から取り組んでいるDevOpsを引き続き進め、既存の物理やネットワークなどのレイヤーにとどまらず、専門性を高めたり、アプリケーション開発領域に取り組むなど、これまでの領域にとらわれない新たな挑戦をしていきます。その様子は、引き続きテックカンファレンスやテックブログでアウトプットしていく予定です」
ということで、このあたりでトークセッションは終了。続いて質疑応答に移ります。
Q. 構成管理ツールの扱いは難しい部分が多いが、新しい物を取り入れるときの社内教育などはどのように行いましたか?
A. 今は、ペパボが導入した頃にはなかった入門Puppetというエンジニア必携の素晴らしい教科書があるので、まずはそれをみんなで読むことをきっかけにするといいと思います。 例えば今自分たちが使っている手順書をコード管理に置き換えたときのメリットを、メンバーと一緒に考えると導入時の実感が湧くのではないでしょうか。 3つの大切にしてほしいことの中の「みんなと仲良くすること」にはみんなを巻き込むこと、遠慮しないことというニュアンスが含まれています。 まずは実際に手を動かしてみて、一緒にやってみるということが大事だと思います。
Q. 垣根がなくなってきたインフラエンジニアと開発エンジニアの責任範囲はそれぞれどう切り分けていますか?
A. ペパボでは、開発エンジニアのプルリクエストをインフラエンジニアがレビューしてOKするというフローを採用しています。リリースされたものに何かがあった場合であっても、どちらの責任と言うことはしません。コードが全てです。 ふりかえること自体はとても大切ですが、それぞれのエンジニアが責任範囲を意識しすぎて彼らの取り組みを制限するようなことはしたくないし、しないようにしています。
まとめ
イベント本編の最後に執行役員CTOあんちぽちゃんからペパボテックカンファレンスをご覧いただいたみなさまにメッセージ。
「インフラエンジニアと一口に言ってもさまざまな役割の人がいて、「エンジニア」という枠の中のかなりの部分を担っているということがわかっていただけたと思います。 いろんなことをやっているペパボという会社がどんなことをやっているのか、みなさんにお伝えできたことだけでもこのイベントを開催した意義があると考えています。 今後も継続して開催していくので、ぜひこれからも注目してください。」
本編終了後の懇親会では「インド人完全無視カレー」などでおなじみ渋谷カリガリさんのカレーをみなさまにお配りし、ハンドメイドマーケット「minne」やネットショップ運営サービス「カラーミーショップ」で販売中のスイーツやおつまみもお楽しみいただきました。
エンジニア同士のコミュニケーションも弾み、質疑応答では聞けなかったことやインフラエンジニアあるあるの共有など、組織を越えた交流を行うことができ、ペパボのエンジニアたちも楽しい時間を過ごしていました。
本番中はYouTube配信も行っていたため、会場には来ることができなかった方にもイベントをご覧いただくことができ、Twitterでハッシュタグがトレンド入りするなど大変盛り上がりました。 ツイートまとめはこちらからご覧いただけます。
本番のアーカイブ映像も公開しております。ぜひご覧ください。
今回登壇したエンジニアの話をもっと聞きたい! または、他のエンジニアの話も聞いてみたい!という方はぜひ、エンジニアに会えるランチミーティング「ペパランチョン」をご活用ください。
GMOペパボでは、今後も継続してエンジニアによるイベントを開催していく予定です。 情報はGMOペパボ公式Twitterなどで随時ご案内していきますので、気になる方はぜひフォローしてください!