Upgrade to Pro — share decks privately, control downloads, hide ads and more …

EKS使って社内でコンテナ勉強会やってみた件

みのるん
February 16, 2022

 EKS使って社内でコンテナ勉強会やってみた件

みのるん

February 16, 2022
Tweet

More Decks by みのるん

Other Decks in Technology

Transcript

  1. EKS使って 社内でコンテナ勉強会 やってみた件 御田 稔 SRE / KDDI株式会社

  2. お前誰? š 御田 稔(おんだ みのる) KDDI 情シス系部門のSRE š 業務では協力会社さんに頼りがち 週末いろいろ触って勉強中

    š JAWS-UG SRE支部運営 š 好きなAWSサービス: @minorun365
  3. 最近、新人研修資料の社外公開がブーム? サイボウズ ミクシィ サイバー エージェント リクルート

  4. これをたまたま読みました サイボウズ ミクシィ サイバー エージェント リクルート

  5. めちゃくちゃ良かった!!! サイボウズ https://cybozu.github.io/introduction-to-kubernetes/ 「Kubernetesを使った開発入門」

  6. そうだ! 社内でハンズオン会開いて みんなに広めてあげよう!

  7. ユーザー企業(情シス)あるある? š 最近コンテナ、CI/CDが色んな上流検討で浮上するが 社員がイメージわいておらず若干ついてけてない š そもそもCI/CD以前に、ふだん社員がコード書いたり ビルドもデプロイもしないためメリットが刺さらない この状態で「ECS vs EKS」とか言われても、

    本質的な議論にならないのでは…?
  8. ユーザー企業(情シス)あるある? š 最近コンテナ、CI/CDが色んな上流検討で浮上するが 社員がイメージわいておらず若干ついてけてない š そもそもCI/CD以前に、ふだん社員がコード書いたり ビルドもデプロイもしないためメリットが刺さらない この状態で「ECS vs EKS」とか言われても、

    本質的な議論にならないのでは…? ⼿を動かせ!! ⽂化が必要
  9. ハンズオンの課題 ① 社用のOA端末は制限いっぱいなWindows。 でも「私用PC持ち込み」にしちゃうとハードル↑ ② CLI操作がメインだと「ハンズオンできました! …で結局これは何?」となってしまう懸念あり ③ みんな忙しいので長くても1h程度が限度 (離席長いと遊んでると思われると気にする人も…)

  10. 課題① PC環境どうするか問題 サイボウズさんの研修資料では ローカルPCにminikubeを直接インストール 会社の学習用AWSアカウントを用いて CloudShellを使うことに。ブラウザさえあればおk!

  11. 課題② CLI何やってるか分からん問題 š クラスターやノードの実態がGUIでも見られるよう minikubeではなくEKSを使ってアレンジ。 š EKSクラスター作成の待ち時間を利用して 「コンテナとは何ぞや」紙芝居を披露。 š ハンズオン中にやってることも

    しつこく概念図でおさらいするイラストを挿入。
  12. EKSならコマンド1行でおうちクラスター完成! š eksctl create cluster 打つだけで、VPCから サブネットから何から諸々、EKSが自動作成してくれる š デフォルトだとワーカーノードはEC2×2台のマルチAZ構成。 (ランダムで変なクラスター名が付きます)

  13. 待ち時間の紙芝居をちょっと紹介 コンテナって何? (Kubernetes入門) https://speakerdeck.com/ minorun365/kontenatuteh e-kubernetesru-men むかしむかし「サーバー」がいました 物理サーバー 業務アプリを 24h稼働できる

    つよいコンピューター。 データセンターに⽣息 スペック⾜りない 台数増やしたい 機材注⽂、搬⼊… くそメンドイし時間かかる。 気軽に構成変更できない。
  14. 物理は⾯倒なので「仮想化」されました 物理サーバー 業務アプリを 24h稼働できる つよいコンピューター。 データセンターに⽣息 物理機器そのままで サーバーをいくつも 動かせればいいのに 1台の物理マシン上で

    複数の仮想マシンを動かせる。 (VMware社のvSphereなど) これが15年前ぐらいのトレンド 仮想サーバー on 物理 OS(Linuxなど) アプリ 仮想ホストOS(ESXなど) 仮想マシン1 ゲストOS1 アプリ1 仮想マシン2 ゲストOS2 アプリ2 待ち時間の紙芝居をちょっと紹介 コンテナって何? (Kubernetes入門) https://speakerdeck.com/ minorun365/kontenatuteh e-kubernetesru-men
  15. クラウド化で根っこの物理も不要に 仮想マシン増えて 管理や増設⾯倒… 物理ホストすら もう持ちたくない 祝!⾃社データセンター卒業。 レイヤー低めなインフラエンジニアは ここで職を失うことに 仮想サーバー on

    クラウド パブリッククラウド EC2 ゲストOS1 アプリ1 EC2 ゲストOS2 アプリ2 仮想サーバー on 物理 仮想ホストOS(ESXなど) 仮想マシン1 ゲストOS1 アプリ1 仮想マシン2 ゲストOS2 アプリ2 待ち時間の紙芝居をちょっと紹介 コンテナって何? (Kubernetes入門) https://speakerdeck.com/ minorun365/kontenatuteh e-kubernetesru-men
  16. 仮想マシンすら邪魔になってきた EC2増設するたび Linux構築⾯倒… アプリ+環境だけ 持ち運べないかな アプリ+ライブラリ+ミドルウェアを 包み込んでOSから分離(Dockerなど) 超軽量で開発しやすく、デプロイも⾼速! これが10年前ぐらいのトレンド コンテナ

    on 仮想サーバー 仮想サーバー on クラウド パブリッククラウド EC2 ゲストOS1 アプリ1 EC2 ゲストOS2 アプリ2 パブリッククラウド EC2 ゲストOS1 コンテナ1 アプリ1 コンテナ2 アプリ2 EC2 ゲストOS2 コンテナ3 アプリ3 待ち時間の紙芝居をちょっと紹介 コンテナって何? (Kubernetes入門) https://speakerdeck.com/ minorun365/kontenatuteh e-kubernetesru-men
  17. Kubernetes の世界 ちょっと待ってコンテナ増えすぎた コンテナ on Kubernetes パブリッククラウド EC2 ゲストOS1 コンテナ1

    アプリ1 コンテナ2 アプリ2 EC2 ゲストOS2 コンテナ3 アプリ3 EC2 ゲストOS3 Kubernetes 管理ミドルウェア 管理 Googleのすごい⼈が 作った管理ツール 待ち時間の紙芝居をちょっと紹介 コンテナって何? (Kubernetes入門) https://speakerdeck.com/ minorun365/kontenatuteh e-kubernetesru-men
  18. Kubernetes の世界 低レイヤーはどんどんマネージド化 コンテナ on EKS パブリッククラウド コンテナ1 アプリ1 コンテナ2

    アプリ2 EC2 ゲストOS2 コンテナ3 アプリ3 管理 EKS Kubernetes 管理ミドルウェア Fargate 待ち時間の紙芝居をちょっと紹介 コンテナって何? (Kubernetes入門) https://speakerdeck.com/ minorun365/kontenatuteh e-kubernetesru-men
  19. 課題③ サッサと終わらせたい問題 š 基本リソースのデプロイと動作確認を中心に 理解☆実感できる最低限のスコープに絞る š 途中参加・退出してもキャッチアップしやすい よう懇切丁寧な手順書を準備。 š IAMユーザーなど全員分を事前に作っておき、

    ログインすれば即始められる状態に
  20. 手順書はQiitaで公開。世界の初心者に届け! Kubernetes初心者がAWSを活用してコンテナ入門ハンズオンやってみた https://qiita.com/minorun365/items/0441e4878f0984a9fc0a Copyright (c) 2019 Cybozu Released under the

    MIT license https://github.com/cybozu/introduction- to-kubernetes/blob/master/LICENSE
  21. しつこくスクショと概念図を入れました

  22. しつこくスクショと概念図を入れました コンテナ(Pod)を作ってみる あなた 会社PC AWSアカウント CloudShell IAMユーザー Kubernetesクラスター コントロール プレーン

    EC2(ノード) EC2 (ノード) データプレーン 注⽂書のとおりPodを作ってね (kubectl apply ‒f 注⽂書) 定義ファイル (注⽂書) YAML my- nginx 作成 Pod アップロード 今どこから何に対して 操作しているのか、、 どシロートでも 迷子にならないように イラスト化
  23. そして、ハンズオン当日…

  24. そして、ハンズオン当日… しくじった!!

  25. しくじりポイント eksctlでクラスター作成時「エラー出ました!」が多発 → みんなで同時作成しすぎてAWSクォータに抵触 同僚のとっさの判断に助けられる リージョン分散しますか。 みなさん⾃分の地域つぶやいてください ˞ ো֐ରԠ ྺઓͷ໠ऀ

  26. しくじりポイント eksctlでクラスター作成時「エラー出ました!」が多発 → みんなで同時作成しすぎてAWSクォータに抵触 同僚のとっさの判断に助けられる リージョン分散しますか。 みなさん自分の地域つぶやいてください 上限緩和しよう! ˞ ো֐ରԠ

    ྺઓͷ໠ऀ
  27. いろいろあったけど… š なんとか無事に終了。 š なんだかんだ2hぐらい掛かったが、 定時後だったのも幸いして多くの人が残ってくれた š 30名弱が参加してくれた。ウワサを聞きつけたCCoEが イベント宣伝に来たりして結構盛りあがった

  28. 参加者アンケート

  29. 参加者アンケート(コメント抜粋) 正直、••社のコンテナ研修よりも 分かりやすかったです(笑) 「コンテナって何?」状態だったが 理解がとても進んだ。 案件でも積極的に検討したい Qiita手順が親切で良かった。 容易に再現練習できるので助かる 他の人のエラーへの対処も 目の当たりにできて勉強になった

    Kubernetes楽しくて、 「もっと触ってみたい!」って思った
  30. まとめ š 非エンジニア層が多いIT職場でも 手を動かして理解の解像度を上げ、上流業務に生かそう! š EKS&CloudShellを使えば 誰でも簡単にK8sクラスターで遊べる š サイボウズさんマジ感謝!!

  31. おまけ

  32. 「ECS vs EKS」で悩んだことある方へ Toriさんのブログに神記事があるので読んでみてください https://toris.io/2019/12/what-i-think-about-when-i-think-about-kubernetes-and-ecs/

  33. ༧ࠂ

  34. 【2/25金】JAWS-UG SRE支部 #2 開催!! どこかで聞いたようなタイトルの通り、 色んな現場のSREsに生の声を聞いていきます。 LTはもちろん、熱いパネルディスカッションにも ご期待ください! テーマは「突撃!となりのSRE」 ぜひConnpassから参加登録を!

    https://jawsug-sre.connpass.com/event/237152/