とある少人数チームのCloudNativeへの船出の話

11cc6d1632f92751debe9a3b7cae36c6?s=47 Hiro.Kamezawa
September 09, 2020
530

 とある少人数チームのCloudNativeへの船出の話

CloudNative Days Tokyo 2020の20分のキーノート。
プラットフォーム部門のとあるチームがほとんど初めてクラウドを触って1.5年目の振り返りです。

11cc6d1632f92751debe9a3b7cae36c6?s=128

Hiro.Kamezawa

September 09, 2020
Tweet

Transcript

  1. とある少人数チームの Cloud Nativeへの船出の話 亀澤 寛之 富士通株式会社 2020.09.09 @hiro_kamezawa Copyright 2020

    FUJITSU LIMITED 0
  2. 自己紹介 ◼ 名前:亀澤 寛之 ◼ 略歴: ◼ ~2003年:学生(OS開発) ◼ 2003年:富士通入社

    • Linux Kernel Hacker • OSS開発業務(含CNCFボード) ◼ 2019~:サービス開発 ◼ 好きな言葉 ◼ 枯れた技術の水平思考 Copyright 2020 FUJITSU LIMITED 基本的にはプラットフォーム・インフラのソフトウェアをやる部隊の所属です 1
  3. Copyright 2020 FUJITSU LIMITED ✓ 富士通の中の1個人の意見であり会社の意見ではありません ✓ 私のチームの話をしますが、実際はクラウドをもっとよく使いこな すチームは沢山あります。(もちろんK8sも使われています) ✓

    今日の話はインフラソフトウェアのプロダクト開発部門のある 小チーム(8人)が、部門で初めてオリジナルのサービス開発を 始めたらこうだったという話です。 ✓ チームの話、技術の話、その他ごっちゃ煮です。ごめんなさい。 ご理解のほどよろしくお願いします 2
  4. 去年していた話 Copyright 2020 FUJITSU LIMITED speakerdeckにあります 3

  5. 今日の話 さんざん Cloud Native を他人に薦めておいて 自分が使う側に回ったら………という お話 Copyright 2020 FUJITSU

    LIMITED 4
  6. コトの起こり(2018.12) Copyright 2020 FUJITSU LIMITED 何かCloud Native や DevOpsで 何かプラットフォームのサービスを

    上司 え~っと、わかりました 5
  7. 私の妄想 Copyright 2020 FUJITSU LIMITED ちゃんとコンテナ、 Golang, GRPC をつかってCICDがxxで DevOpsなチームを……

    6
  8. プラットフォーム部隊から公募 ◼ サーバ・ネットワーク装置・ストレージ ◼ サーバ管理ソフトウェア ◼ バックアップ管理ソフトウェア ◼ OSサポート ◼

    運用支援 etc… Copyright 2020 FUJITSU LIMITED 公募でどんな人が 来てくれるかな? 7
  9. 社内公募された開発スタッフ Copyright 2020 FUJITSU LIMITED Windows部隊で商品企画してました メインフレーム担当でした OpenStack運用やってました WebUIはわかります OSS開発担当でした

    ・・・ やってきた5人のインフラ戦士 (あと3人はPOと商品化担当) 8
  10. 社内公募された開発スタッフ(真) Copyright 2020 FUJITSU LIMITED プライベートでAWSやGCPの資格とってます やっとスクラムマスターの知識を活かせる現場に来ました インフラ自動化やログの扱いは得意ですよ サービスの立ち上げはもう何度もしてるんですよ プライベートでOIDCの認証認可サーバ自作してます

    (運よく)必要なスキルは揃っていそう 9
  11. Copyright 2020 FUJITSU LIMITED 部署的にサービス開発が初めてなら、公募は良いオプション ※興味をもってやれる人で始めましょう モチベーションが高い! 10

  12. “作り始める”まで ◼ ヒアリング ◼ デザインシンキング(の技法) ◼ 右往左往 ◼ テクノロジー Copyright

    2020 FUJITSU LIMITED カスタマージャーニーマッピング 個人的には意味アリ 11
  13. イチから勉強して始めました Copyright 2020 FUJITSU LIMITED アジャイルもクラウドもGoもDockerも Web開発も初心者ばかりだぞ・・・ 12

  14. 作ったサービス Copyright 2020 FUJITSU LIMITED tunaclo.net Tunaclo API Connect. エージェントを置くだけで

    リモート環境とプライベート接続 (14時のTrackAでセッションやります) Kubernetes等 ※サービスメッシュ的なアイデアでシステム間を繋ぐサービス Web Routing 13
  15. 裏側 Copyright 2020 FUJITSU LIMITED Router Agent Agent GW Auth

    API Monitor DB App Service ユーザ環境 14
  16. (今のところ)使ったツール ◼ Azure DevOps (Azure Pipeline) ◼ Docker ◼ Kubernetes

    ◼ Golang ◼ GRPC ◼ Fluentd ◼ Ansible/Terraform ◼ vue.js ◼ OpenResty(nginx) ◼ Keycloak Copyright 2020 FUJITSU LIMITED この辺りの話をざっくり 15
  17. コンテナ(docker)のいいところ Copyright 2020 FUJITSU LIMITED テストしたものがそのまま持っていける テスト環境が選べる(最近だとWSL2) docker-compose含め学習コストは低い サーバ一つに複数立てられる 起動・停止・ログの集約方法等、同一OP化

    16
  18. Copyright 2020 FUJITSU LIMITED コンテナはいいものだ・・・・・ ログ溢れやネットワーク周りで トラブったじゃないですか 17

  19. Golang, GRPC, javascript ◼ いいところ :Webの力を増幅する ◼ 学習コスト :思っていたより高くない ◼

    後方互換 :たまにしんどい ◼ 困った所 :本を買うと古い ◼ ポイント :“やってみる”こと Copyright 2020 FUJITSU LIMITED 学習コストは高くない 言語は選ぶべき 18
  20. Copyright 2020 FUJITSU LIMITED よく勉強が必要だったところ 学習コストは ある意味 高い(汗) DBやAPI系の従量課金 19

  21. 重要だったスキル ◼絵の描き方 ◼ クラウドサービスは絵が必要 ◼インフラ ◼ 設計も実装も知識差が効く ◼HTTPの理解 ◼ 全ての通信の基本

    ◼スクラムマスター ◼ いたほうがいいです、いや、ホント ◼セキュリティ ◼ OpenID Connectを理解してる人とか Copyright 2020 FUJITSU LIMITED チームで継承 20
  22. 助かったスキル ◦◦さんが一晩でやってくれました Copyright 2020 FUJITSU LIMITED “提案”&“突破”と アジャイルの組み合わせはシナジー 21

  23. 不足していたスキル データベース! Copyright 2020 FUJITSU LIMITED 経験者ゼロだと作り直し覚悟 22

  24. まだ評価できていないもの ◼Kubernetes ◼ 実際のところ、replica,auto-healingの機能ぐらいしか使えていない ◼ 学習:大変 ◼ サービスが小さいとdocker/ansibleでなんとかしたくなる ◼ ネットワーク処理を載せたいが、ネットワーク帯域設計はお勉強が必要

    Copyright 2020 FUJITSU LIMITED もうちょっと上手く使いたい 23
  25. チームの声 ✓ツール・技術が広範になって追随が大変 ✓GOはシンプルでライブラリが豊富。新サービスの開発に良い。 ✓GRPCは工夫されていて良い。デバッグではまると大変だけど・・ ✓L7 ルーティングは今後もっと面白くなるのではないか? ✓ OSSだとEnvoyとかIstioとか ✓もっと斬新な技術(Progressive Deliveryとか?)を使ってみたく

    もあるけど、チームのレベルやサービス規模に合わせる必要あり Copyright 2020 FUJITSU LIMITED 追加戦士 24
  26. 今試してる事 ◼実行可能な手順書:LC4RI Copyright 2020 FUJITSU LIMITED https://github.com/NII-cloud-operation/OperationHub 14時のTrackA~で紹介予定 散逸しがちな暗黙知を手順やコードと一緒に管理する 25

  27. POの振り返り Copyright 2020 FUJITSU LIMITED ✓POはマネージャーではない ✓「決める」ことがチームを加速する ✓ほぼ全ての情報、ロードマップは共有する ✓振り返りイベント(Keep-Problem-Try等)は重要 ✓ペアプロはよかった

    ✓リモートワークのスタイルを模索中 26
  28. 最近思うこと Copyright 2020 FUJITSU LIMITED 第13章 実際には、言語は等しくないんだ。 第12章 プログラミング言語はその力において差がある。 インフラの前に

    言語を変えてみようか 27
  29. 出港してみて ◼コンテナ自体は役に立ちます。 ◼ 小さく導入するところから始めるのは簡単なのでお勧め。 ◼使う言語は選びましょう。うちはGo言語でした。 ◼ 意外といろんなものがすばやく自作でき、他人に頼らなくてもよくなります ◼災対等を始めると運用系の自動化も複雑に ◼ 対策はお早めに

    ◼チーム・プロセス・言語・技法・プラットフォームは不可分、 モチベーションとアイデアが燃料 Copyright 2020 FUJITSU LIMITED 28
  30. Copyright 2020 FUJITSU LIMITED CloudNative Days Tokyo 2020 開催されてよかったです あと半日、楽しみましょう!

    29
  31. None