Slide 1

Slide 1 text

The Go gopher was designed by Renée French. Cloud Nativeなエンジニアのオ ススメツールや最新情報を英語 で1年追いかけ続けてみた 2021/01/24  July Tech Festa 2021 Winter #jtf2021w, #jtf2021w_b 藤原 善基

Slide 2

Slide 2 text

話すこと □自己紹介 □なぜSRE/DevOps/Kubernetesをテーマに ブログを書き始めたのか? □推しツール/記事(各ブログごと) □DEVOPS WEEKLY: The DevOps Reading List: Choosing your next DevOps book(ブログ#44) □SRE Weekly: SLA-Uptime-calculator(ブログ#12) □KubeWeekly: Kubernetes YAML generator(ブログ#32) □英文記事の読んでいる様子のデモ 話さないこと □各スライドの全文 □現在の業務内容など 本日のメニュー

Slide 3

Slide 3 text

この話の想定リスナー □Cloud Native/SRE/DevOps/Kubernetesに興味がある □上記テーマに興味あるが、何から手を付ければ良いのか分からない .... □英語の資料ばかりでツライ □実務でバリバリ実践してるぜ!という方には物足りないかも スライドはSpeakerdeckに上げています □Speaker Deckリンク:https://speakerdeck.com/yoshiki0705/july-tech-festa-2021-winter □はてなブログ □英語ブログ(Medium) 本日のメニュー

Slide 4

Slide 4 text

自己紹介: そもそも藤原って、誰?

Slide 5

Slide 5 text

自己紹介 □名前:藤原 善基(ふじわら よしき) 仕事 □所属:株式会社エーピーコミュニケーションズ クラウド事業部 兼 エンジニアリングメンター室←New!! □技術領域: ネットワーク、AWS、K8s □社歴: 4年目(2017年12月入社) / プロフェッショナル職 □経歴(IT業界前): 物理コンテナの営業(国際貨物運送業)    コールセンター(バイリンガルチーム)のリーダーなど プライベート □帰国子女: ギリシャ育ち(生後10ヶ月~7才) □夏フェス(ROCK IN JAPAN)などによくいる □自然言語/文化/雑学オタク □運転免許無し/全国通訳案内士(英語)あり

Slide 6

Slide 6 text

自己紹介 仕事 □名前:藤原 善基(ふじわら よしき) □所属: ネットワーク事業部(異動前) →現在: クラウド事業部 兼 エンジニアリングメンター室←New!! □プロフェッショナル職 / エンジニアリングメンター □SRE/ DevOps/Kubernetesに関する3つの英語のメルマガをまとめたブログを毎週執筆 →今回のテーマに繋がった取り組み コミュニティー活動(2020年) □July Tech Festaのプログラム委員 □CloudNative Days Tokyoの実行委員 □SRE NEXTの当日ボランティアスタッフなど

Slide 7

Slide 7 text

なぜSRE/DevOps/Kubernetesをテーマ にブログを書き始めたのか?

Slide 8

Slide 8 text

SRE/DevOps/Kubernetesをテーマにした理由 □Cloud NativeとSRE/DevOps/Kubernetes □Cloud Nativeとは? →CNCF(Cloud Native Computing Foundation)のTOC(Technical Oversight Committee:技術 監督委員会)が定義しています。 この定義では、「疎結合」「回復力」「管理性」「可観測性」「自動化により、堅牢かつ期待通りに、最小 限の労力で更新できる」といった点が、クラウドネイティブの特性として挙げられています。 クラウドなどを使う際のベストプラクティスを文言化したもの が、クラウドネイティブだと思います。あく までも、ベストプラクティスとしての属性を表現したものです。それを達成するために、技術やコンセプ ト、考え方があります。これらについては、現在とは別のものが、今後新たに出てくる可能性がありま す。 「どうやってスケーラブルなアプリケーションを作れるようにしていくか 」がテーマなので、それを目指し ていくことによって、クラウドの使い方のベストプラクティスとか、適切なアプリケーションの設計ができ るようになっていくと私は信じています。 引用: 「クラウドネイティブ」はどう誤解されているか

Slide 9

Slide 9 text

SRE/DevOps/Kubernetesをテーマにした理由 □Cloud NativeとSRE/DevOps/Kubernetes □Cloud Nativeとは? →「クラウドなどを使う際のベストプラクティスを文言化したもの 」 →「どうやってスケーラブルなアプリケーションを作れるようにしていくか 」
 
 □インフラエンジニアとしてどう向き合っていくか?
 →ブログを書いていこうと決めた2020年2月の時点での私のメイン技術領域は ネットワーク。アプリ、 コードはほとんど書いていない。
 会社としてもクラウドネイティブを進めているが、 
 Cloud Nativeなエンジニアとは? →何から手を付ければ良い?

Slide 10

Slide 10 text

SRE/DevOps/Kubernetesをテーマにした理由 その1 ネットワーク事業部時代(2018/01~2020/03) □担当領域: ISPのNW運用/保守→設計/構築 □環境: バージョン、仕様、ツールなどの変更は少なめ。 ・「Youは何しにココへ?」と言われるぐらい、 興味があるが業務で関わっていない分野の勉 強会にも顔を出してみたり ・24/365のシフトで運用をしていた頃は、体調 も目標も定まらなかった →SRE本に出会い、魅力を感じた エラーバジェット、非難なきポストモーテム、ト イルの削減など。 →「エンジニア」として指針 /指標を持って課題 を解決していけるようになりたい。 →Cloud Nativeなエンジニアに近い? 1. クラウドなどを使う際のベストプラクティス 2. スケーラブルなアプリケーションを提供する →本やブログの読者/視聴者として情報収集 →インプットからアウトプットへ ・Juniper/Cisco機器のルー ターやスイッチを扱ったり ・Interopに参加して、ネット ワーク機器を眺めたり

Slide 11

Slide 11 text

SRE/DevOps/Kubernetesをテーマにした理由 その2 □クラウドネイティブな情報多過ぎ問題 □常に新しいツール、プロダクト、組織が出てきて変化が激しい、情報源が無数にある □現場(2020年2月時点/異動前)で扱っている技術領域、環境などがコミュニティーのメンバーと違い 過ぎる →キャッチアップする場や時間を確保したい。 →できれば定点的な進捗が見えるものが良い。 →興味のあるメルマガをまとめてアウトプットするのが良さそう。 □英語という言語の壁を自他にとって低くする、 身近な接点を持てるようにしたい →自身が「日本語」の壁で悩んだ経験 (7歳でギリシャ語→日本語に第一言語をスイッチ。)から言語 の違いを越えて、技術や知見の取得に挑戦している方々に強く共感する。 □このあたりは、ブログ記事「SRE/DevOps/Kubernetesを追いかけてき た2020年をふりかえる」に記載していますので、 次のページの内容は割愛します。

Slide 12

Slide 12 text

SRE/DevOps/Kubernetesをテーマにした理由 その3 □新しい情報、アイデアに触れるのは純粋に楽しい →興味あるジャンルが英語のメルマガで毎週出ているので、集めて読みたい。せっかくなのでシェア したい □社内で「プロフェッショナル職」という「自分の技術で、経験で、技術にこ だわっている人を感動させる」事をミッションにするロールについたの で、アウトプットをしていきたい →アウトプットするので、インプットと期限の強制力が働きそう □メルマガを複数取っていると、メールボックスが埋まったり、件数増えて 邪魔 →まとめて読めるブログを書けば、メルマガを一々受け取らなくて良いし、追いかけなくて良いので、 自他の工数が減るのでは

Slide 13

Slide 13 text

□各メルマガと各オススメツール →お待たせしました! □ここから各ブログをサッと紹介して、ツールを実際に動かしな がら案内させて頂きます。 □同じペースでしゃべりを聞いてばかりだと、食後で眠くなると 思いますので、ここからピッチを上げています〜!

Slide 14

Slide 14 text

DEVOPS WEEKLY

Slide 15

Slide 15 text

DEVOPS WEEKLYとは? □Snyk社のVP ProductであるGareth Rushgrove氏が発行しているメ ルマガおよびWebページ。ロゴは無し。 □これまで525回発行されている(2021/01/23時点) □メルマガ内に「Tools」のコーナーがあり、テーマと一致 □毎週日本時間の日曜日の夜に発行/アップロード □(メーリングリスト登録していない場合はDevops Weekly Archiveから閲覧可能) □EditorのGareth Rushgrove氏について □前職はDocker、Puppet、UK Cabinet Office □自身を「Open source geek」と呼んでいる □OPA(Open Policy Agent)のRego言語を使ってテストを 書けるツール「Conftest」のmaintainer □セキュリティー、構成管理ツールなどの登壇回数/資料多数

Slide 16

Slide 16 text

DevOpsとは? □DevOpsとは「開発チーム(Development)と運用チーム(Operations)がお互いに協 調し合うことで、開発・運用するソフトウェア/システムによってビジネスの価値をより高 めるだけでなく、そのビジネスの価値をより確実かつ迅速にエンドユーザーに届け続け る」という概念である。 □この概念の原典ともいえるものが2009年にオライリー主催の「Velocity 2009」というイ ベントにおいて、 当時Flickrに所属していたJohn Allspaw氏とPaul Hammond氏による「10+ Deploys Per Day: Dev and Ops Cooperation at Flickr(1日10回以上のデプロイ: Flickrにお ける開発と運用の協力)」というタイトルのプレゼンテーションである。 引用: DevOpsとは何か? そのツールと組織文化、アジャイルとの違い 用語の認識合わせ

Slide 17

Slide 17 text

□ツールや環境に入る前にご自身の興味に応じた本はいかが? □全部興味ありつつ、読み切っているのはSRE本のみ □Team Topologiesの共著者の1名の方は諸事情により、オンラインでミーティン グしましたが、とても人当たりの良い人でした。 The DevOps Reading List: Choosing your next DevOps book

Slide 18

Slide 18 text

SRE Weekly

Slide 19

Slide 19 text

SRE Weeklyとは? □Fastly社のApplication Site Reliability EngineerであるLex Neva氏 が発行しているメルマガおよびWebページ □これまで252回発行されている(2021/01/23時点) □inspired by devops weekly←前述のメルマガ □毎週日本時間の月曜日午前中に発行/アップロード □(メーリングリスト登録していない場合Webページから) □EditorのLex Neva氏について □前職はHerokuなど □登壇資料はあまり無いですがHeroku社時代にYouTube動画で 話されているものがありました: The Phone Book Is On Fire: Lessons From the Dyn DNS DDoS -- Velocity NYC 2017 □他にもDevOps/SRE周りのメルマガが気になる方はDEVOPS NEWSLETTERSに更にあります

Slide 20

Slide 20 text

SREとは? □Site Reliability Engineeringの略。Google提唱のDevOpsの実装 □Googleにおいては、ソフトウェアの知見、プログラムスキルのある方 が、インフラを数値目標や明確な指標、ツール、文化を持って運営、知 見を共有/普及する活動、と私は認識しています。 □以下はSRE本のChapter 1 - Introductionより抜粋 □ My explanation is simple: SRE is what happens when you ask a software engineer to design an operations team. □スキルセット、ミッション、文化は組織によって千差万別です。 →この発表では、一意見/見解として楽しんで頂ければと思います。 →みんなの心の中に、それぞれのDevOps、SREがある →上下や王道/邪道などはなく、それぞれの組織の価値提供の形 →ただし、改善活動としてのDevOps、SREのベストプラクティスなどをど う活用するか、どうあるべきかを常に考えることが大事 用語の認識合わせ

Slide 21

Slide 21 text

□SREとDevOpsの違い □Google社では「class SRE implements DevOps」と解説しています。 →DevOpsの実装クラスとしてのSRE。 □SRE WorkbookのChapter 1 - How SRE Relates to DevOpsでもま とめられていて、「Compare and Contrast」を見るとわかりやすいで す。以下一部抜粋。 □DevOps is in some sense a wider philosophy and culture. □DevOps is relatively silent on how to run operations at a detailed level. □SRE, on the other hand, has relatively narrowly defined responsibilities and its remit is generally service-oriented (and end-user-oriented) rather than whole-business-oriented. 用語の認識合わせ

Slide 22

Slide 22 text

□JavaScript製ツール。でブラウザ上でサッとUptimeが見れる □SLO/SLAを考慮/計算する際に活躍 □SLAを日/週/月/四半期/年単位で瞬時に計算できてメッチャ便利! □SLO/SLAを考慮/計算する際に活躍 SRE本のAvailability Tableの外の数字を見たい場合に Uptime calculator

Slide 23

Slide 23 text

KubeWeekly

Slide 24

Slide 24 text

KubeWeeklyとは? □Kubernetes、クラウドネイティブ、オープンソース、およびクラウドネイティブエコシステ ムのプロジェクトをカバーするメルマガおよびWebページ □これまで247回発行されている(2021/01/23時点) □開発者、ITオペレーターなどの技術者を対象としている □毎週日本時間の土曜日の未明~日曜日に発行/アップロード □(メーリングリスト登録していない場合Webページから) □CNCFのGitHub上のガイダンスはこちら □他の2つのメルマガに比べると、アップロードタイミングにばらつきがあり、リンクが おかしかったり、アップロードされない回もあったりする (今週(01/22/2021 - KubeWeekly #247)もそう) □Editorのチームについて □Kubernetesコミュニティーの下記編集者チームによって編集されている □Saiyam Pathak, L Körbes, Alison Dowdney, Chris Short, Craig Box, Daniel Oh, Kristi Tan, Bill Mulligan, Michael Hausenblas and Shilla Saebi

Slide 25

Slide 25 text

Kubernetesとは? □SREと同じく、Google社が生み出したもの。OSSのコンテナオーケストレーションプラッ トフォーム。 Red Hat社などを最初に巻き込みながら、普及させた。 □系譜: Borg→Ω(ギリシャ語)→κυβερνήτης(ギリシャ語) □Borg: 「スタートレック」に登場する、機械生命体の集合体に由来する。 □κυβερνήτης: 車輪のロゴから伸びる 7 本のスポークは、プロジェクトの 最初の名前「Project Seven of Nine」を表している。 □Google社ではコードネームをギリシャ語で付ける習慣があるらしい。 *これには、社内で反対運動もあるらしい。 □上記の理由により、Kubernetes周りのプロジェクトは、ギリシャ語や航海関係の用語 が多い。 用語の認識合わせ

Slide 26

Slide 26 text

ギリシャ語のアルファベット(Ελληνικό αλφάβητο) Αα アルファ Νν ニュー Ββ ベータ Ξξ クシー Γγ ガンマ Οο オミクロン Δδ デルタ Ππ パイ Εε エプシロン Ρρ ロー Ζζ ゼータ Σσς シグマ Ηη イータ Ττ タフ Θθ シータ Υυ イプシロン κυβερνήτης ←発音記号を英語に変換すると : kivernitis Ιι イオタ Φφ ファイ *大事なのは「伝えたい相手に伝わる」呼び方である事 Κκ カッパ Χχ ヒ *メジャー/マイナー/ルーツよりもコミュケーションを重視する Λλ ラムダ Ψψ プシー →プロトコルを合わせる Μμ ミュー Ωω オメガ Greek Names in Software Projects □Prometheus(Προμηθέας) □Istio(Ιστίο) □Paketo(Πακέτο) 余談: ギリシャ語とソフトウェア

Slide 27

Slide 27 text

□Prometheus(Προμηθέας) ・ギリシャ神話では、ゼウスの反対を押し切り、天界の火を盗んで人類に与えた存在として知られる。 怒ったゼウスは、人類に災いをもたらすためにヘパイストスにパンドラ (Πανδώρα: 全ての贈り物の 意)を作らせ、神々が特徴を贈り物として添えた。 ・プロメテウスの名は"pro"(先に、前に)+"mētheus"(考える者)と分解でき、「先見の明を持つ者」 「熟慮する者」の意。 同様に、弟のエピメテウスは"epi"(後に)+"mētheus"に分解でき、対比的な命名。プロローグ⇆エ ピローグと同じ対比。logue = 言葉。 ・パンドラの「箱」 エピメテウスは、「ゼウスからの贈り物は受け取るな」という プロメテウスの忠告にも関わらず、魅力に負け、パンドラと結婚。 パンドラが開けたのは、ピトス=「甕」→→→→→→→→→→→→→→→→→ の意だが後代に「箱」といわれるようになる。 余談: ギリシャ語とギリシャ神話とソフトウェア

Slide 28

Slide 28 text

□Octopus社提供のYAML作成ツール □Webブラウザ上でK8sのマニフェストを作成可能 □ドロップダウンと、オプションが入力でき、 リソース/オプションごとに考慮事項/リンクがある □とても便利で教育的なUI。 初学者にとって厄介なリソース作成作業と学習のハードルが下がる □現在選べるリソースは ・Deployment ・StatefulSet ・DaemonSet Kubernetes YAML generator

Slide 29

Slide 29 text

英文記事を読んでいる環境/実践

Slide 30

Slide 30 text

□Chrome ・ページごと翻訳したい場合に便利 ・様々な言語に一瞬で変換可能 □Google翻訳 ・翻訳元/翻訳先の文章の差分を左右で比較しながら見れる ・様々な言語に一瞬で変換でき、発音も確認可能 □英辞郎 on the WEB Pro ・単語登録: 2万件まで可能(私は約5,000件ほど登録) ・登録しようとした回数を表示する (以前登録したのに記憶が無かったり ...) ・モバイルアプリもあるので、いつ /どこでも気軽に使える ・月額コース: 330円(税込)/ 月額コース: 3,630円(税込) (2021年1月時点) 英文記事を読んでいる環境/実践

Slide 31

Slide 31 text

日常の英文記事を 読んでいる様子のデモ

Slide 32

Slide 32 text

まとめ: KEY TAKEAWAYS □発表内容 □SRE/DevOps/Kubernetesの起源、ツール群、文化、改善活動 □いくつかのツールの利用風景 □英文記事を読んでいる環境の紹介 □ふりかえり □2020年は上記をテーマにクラウド、インフラにおけるベストプラクティス、  ツール、文化、改善活動を学んできました。 □今年は学びを実践により適用していきたいと考えています。 □「推しツール」「推し環境」をテーマとした発表でしたが、何かお土産となるもの を提供できたでしょうか? □発表後、イベントのZoomのブレイクアウトルームの#jtf2021w_bに 顔を出しますので、ご都合良ければお話ししましょう。

Slide 33

Slide 33 text

QAタイム

Slide 34

Slide 34 text

The Go gopher was designed by Renée French. Cloud Nativeなエンジニアのオ ススメツールや最新情報を英語 で1年追いかけ続けてみた 2021/01/24  July Tech Festa 2021 Winter #jtf2021w, #jtf2021w_b 藤原 善基 Bye Now!!