Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.

新卒3年目のぼくが、でぶおぷす???なインフラおじさん方にAnsibleを導入してみた

8.961 visualizaciones

Publicado el

弊社ブログで発表の詳細書きました。
https://future-architect.github.io/articles/20180209/

2017/08/28 3社共同企画 Ansible 夏祭り LT枠 (DevOps , Ansible)

Publicado en: Ingeniería
  • Sé el primero en comentar

新卒3年目のぼくが、でぶおぷす???なインフラおじさん方にAnsibleを導入してみた

  1. 1. 新卒3年目のぼくが、 でぶおぷす???なインフラおじさん方に Ansibleを導入してみた 0 3社共同企画 Ansible 夏祭り LT枠 2017/8/28 Future Architect, Inc. Shuntaro Saiba
  2. 2. 本日お話しすること 1 エンプラ基盤チームに対して (下っ端のわたしが、おじさんたちに) Ansible導入するの大変だったけど、 色々工夫して成功した話
  3. 3. Ansible導入の経緯を話します 2 Ansible導入をボスに提案した話 いきなり全部Ansibleは無理だから、スモールスタートした話 一人でやっていても厳しいから、Ansible仲間を広げた話 Ansibleをみんなが使えるような仕組みを整えた話 サーバを勝手に手でいじる人(先輩)を制した話 まとめ&これから 1つ 30sec ぐらいで しゃべります! 1 2 3 4 5 6
  4. 4. チームメンバー (イメージ) アプリチーム 基盤チーム ボス NWの人DBの人MWの人監視/ジョブの人 わたしOSの人 新人 : 後にJOIN
  5. 5. チームメンバー (イメージ) アプリチーム 基盤チーム ボス NWの人DBの人MWの人監視/ジョブの人 わたしOSの人 新人 : 後にJOIN Git使えるのは私だけ みんなDevOpsとは無縁
  6. 6. 5 ATTENSION チームメンバーに対する表現は 脚色しており、あくまでも”演出”です > チームのみなさまへ ※ 本当はおじさんとか思ってません ※ 悪く書いている部分は、特にモッテいるので気にせず
  7. 7. 自己紹介 6  齋場 俊太朗 (さいば しゅんたろう)  インフラ ~ CI回り担当 (新卒3年目) 配属からずっとAWS、今はオンプレ  Future Architect, Inc. Technology Innovation Group (OSS Vulsとかで聞いたことある人いますかね)  Qita 記事 “EC2上にHoneypot(T-Pot)をインストールして サイバー攻撃をELKで可視化してみた。” @tarosaiba
  8. 8. 話の経緯を少し
  9. 9. 話の経緯 8  金融系プロジェクトの基盤更改にアサイン(今年4月~12月) – サーバ&NWの下っ端として。最初はDCの入館申請作業ばっかり..  バリバリのエンプラ系 – なかなかお堅いです。もちろんオンプレ  問題あり。現行のサーバはまさに、ブラックボックス – Excelの設計書はもはや意味なし。「それ、信じちゃだめだからね」byボス  サーバ台数 ≒ 150台 (複数環境合わせて) – それぞれのサーバが5年間の手作業によって育ってきちゃっている
  10. 10. 9 が、しかし..
  11. 11. 10 「 サーバ構築は“元気玉”で 」 っえ?.. ※元気玉: メンバーみんなで手分けして、(手作業で)頑張ろうということ ボス わたし
  12. 12. 11 ウソだーーーー!
  13. 13. 12 ウソだーーーー! そこで Ansible を導入しようと 考えました
  14. 14. 13 Ansible導入をボスに提案した話 1 2 3 4 5 6  Infrastructure as Codeについての説明資料は自前で – DevOpsとかの言葉は通じない.. Gitも初なのでレベルを合わせて  初めは????だけど、実際に見せたらいい感じだった  エージェントレス & Redhatブランド は大きな後ろ盾になった こんなことができます 説明資料 ymlファイル DEMO ほー。ちょっとやってみてよ。 ボスわたし
  15. 15. チームメンバー (イメージ) アプリチーム 基盤チーム ボス NWの人DBの人MWの人監視/ジョブの人 わたしOSの人 新人 : 後にJOIN 好きに作ってよいよー 1 2 3 4 5 6
  16. 16. 15 スモールスタートした話 1 2 3 4 5 6  まずは、サーバへの設定ファイル配布に絞ってAnsibleを使い始めた – いきなり全てソースコード化するのはハードルが高い&拒否される可能性大と考えた – はじめは、hosts, resolv.conf のOS設定ファイル..等の配布にAnsibleを利用  Ansibleベストプラクティスとは反対をゆくrole構成 – 各サーバ種=各role 、 role/files / 配下はファイルシステムを再現 設定ファイル hosts roles/ etc/web-svr.yml db-svr.yml xxx-svr.yml db-svr/ xxx-svr/ tasks/web-svr/ deploy.yml files/ hosts resolv.conf サーバ種=role ファイルシステム を再現 構成 ※設定ファイルは別Gitリポ管理
  17. 17. チームメンバー (イメージ) アプリチーム 基盤チーム ボス NWの人DBの人MWの人監視/ジョブの人 わたしOSの人 新人 : 後にJOIN このDB設定ファイルも 配布してほしい! 1 2 3 4 5 6
  18. 18. 17 Ansibleの仲間を広げた話 1 2 3 4 5 6  垣根なくチームの要望に聞き耳を立てて、Ansibleでどんどんこなす!! – NW : NW機器のconfigの構成管理したいな.. – 基盤 : ifconfigの実行結果全部取集したいな..このpkg全台に導入してほしいな.. – APP:設定ファイル勝手に変更されてAPP動かなくなってる.. 構成管理したいな.. – 他にも: Windowsに対しても作業自動化したいな.. 要望を引出 Ansibleで できました!! 他メンバー NW機器も Windowsも NWの人 わたし
  19. 19. チームメンバー (イメージ) アプリチーム 基盤チーム ボス NWの人DBの人MWの人監視/ジョブの人 わたしOSの人 新人 : 後にJOIN NW便利になった! これはもっと使っていくべき 環境の精度があがってうれしい! あれはできます? これはできます? 1 2 3 4 5 6
  20. 20. 19 みんな使えるような仕組みを整えた話 1 2 3 4 5 6  AnsibleソースをExcel一覧から自動生成できるようにした – fileデプロイ、dir作成、user&group作成 けっこう簡単 (ymlの恩恵) – サーバ変更依頼は、Excelインターフェースで受けるようなフローに  Ansibleソース変更&実行フローはどんどん自動化 – “ Ansibleソース生成 → デプロイ → サーバへ適用 ” with Jenkins 専用Excelフォーマット 変換スクリプト with Ansibleソース @ Gitlab サーバへ適用 @
  21. 21. チームメンバー (イメージ) アプリチーム 基盤チーム ボス NWの人DBの人MWの人監視/ジョブの人 わたしOSの人 新人 : 後にJOIN dir一覧とusr&group一覧 書いたので適用していい?! 1 2 3 4 5 6
  22. 22. チームメンバー (イメージ) アプリチーム 基盤チーム ボス NWの人DBの人MWの人監視/ジョブの人 わたしOSの人 新人 : 後にJOIN もっとよくしよう! 1 2 3 4 5 6 手、動かします! 新メンバーも JOIN!! だんだん軌道に乗ってきた Git使える DevOps ♥ 研修でGit習った
  23. 23. 22 なのですが..
  24. 24. 23 サーバを手でイジイジして Ansible 導入を 阻害する人もいるわけで..
  25. 25. 24 サーバ勝手に手でいじる人を制した話 1 2 3 4 5 6  ソースコードとの差分は自動検知&フィードバック可能に – やっぱり(けっこうな先輩なので)、自分からは注意し辛い – 不整合一覧をチーム全体に共有して、ボスから指示いただくフローに  現状、fileの内容&dirのパーミッション変更は検知可能 シェルエラった パーミッション変更しよ パラメータ間違ってた file内容修正しよ 変更 ソースコードと 突合 フィードバック 情報を収集 (定期実行) ボス監視/ジョブの人 勝手にいじらないように! with わたし
  26. 26. チームメンバー (イメージ) アプリチーム 基盤チーム ボス NWの人DBの人MWの人監視/ジョブの人 わたしOSの人 新人 : 後にJOIN サーバ変更したら メモ渡すわ 1 2 3 4 5 6
  27. 27. 26 そして、ついに
  28. 28. 27 「 サーバ構築&管理は“Ansible”で 」 YES!! ( 大変だった… ) ボス わたし Not 元気玉
  29. 29. 28 まとめ&これから 1 2 3 4 5 6  DevOpsのツール&考え方と疎遠な人たちに導入するには工夫が必要 – 色々妥協して、やっと導入できました。(みんなGitは使えるようになっていません) – ほとんどの人にとってAnsibleはブラックボックスになっている(いい意味&悪い意味で) – トップダウンで導入ができない場合は、少しずつ仲間を広げていくしかなかった – もっと複雑なAnsibleコード書いてみたいけど..引継ぎが心配。。  ちょっと無理してでもAnsible導入して、本当に正解だった – 構築初期にソースコード化していなかったら、絶対にカオスになっていたと思います – 私もAnsible初だったので、皆に動かせるのを見せるまで大変でした..  まだ構築(Dev)フェーズ。本番運用(Ops)でどうやって使うかは検討中 – PJ全体として上の人がAnsible運用の検討を始めてくれた – まだまだ手さぐり状態なので、みなさまからアドバイスいただきたいです 一人では作業が 間に合わない
  30. 30. チームメンバー (イメージ) アプリチーム 基盤チーム ボス NWの人DBの人MWの人監視/ジョブの人 わたしOSの人 新人 : 後にJOIN ありがとうございました! Ansible 最高! 1 2 3 4 5 6

×