はじめに
赤帽エンジニア Advent Calendar 2019 の12日目の投稿です。
気づけば赤帽かぶってます。(買収は関係ないです。転職です)
※会社とはまったく関係ない話をします。
※諸事情で控えてたIPAをついに解禁したので,IPA(いまはBrewdog5本目)をがぶ飲みしながら書いてます。支離滅裂(?)になってたらすみませn
※12/12, 23:58に投稿してからも適宜更新
ポエム: 僕たち/私たち,Kubernetes
「赤の他人かもしれない皆で即興のジャズがやれるといいな」
(訳)
個々人(Controller)が,地道にインプット/アウトプットを共有し議論し正しい方向に向い続ける(Control Loop, Reconciliation Loop)ことによって,それぞれ独立しているはずなのに,結果的に協調動作(Ochestration)する。
そんな美しい世界ができると良いなぁ。
あれ?
これ,まさにKubernetes。
K8sの産みの親である Joe Bedaさんが言われていた "Kubernetes Controller群が織りなす様" の比喩を拝借させて頂きました。
"Kubernetesは,即興で構成されていくJazzのようだ"
-- by Joe Beda (Kubernetes Meetup Tokyo #19)
背景と主旨
"クラウドネイティブ" がバズワードになってる昨今,情報が溢れかえっています。
(ふつーに考えると嬉しすぎる状況なんやけど) 何からやろうか手をつけづらい方も多いようです。実際,カンファレンスで登壇させて頂くと必ず出てくる質問の一つに以下があります。
「私 (弊社) もKubernetesをはじめとするテクノロジーを活用していきたいんですが,何から始めれば良いですか?」
答えは簡単ですね。
私: 「Kubernetes完全ガイド,Kuberenetes実践ガイド,を熟読しましょう。(写真は一部)」
冗談です。
いや,冗談というのが冗談で,上述の書籍で必ず知識をつけられます。さらに,2019年12月現在は,他にも多数の書籍がリリースされているため,日本語で膨大な情報を 書籍でまとまった情報として
得られますね。
そしてよく見聞きするパワーフレーズ。
Kubernetes界隈の方は,一家に一台 "おうちKubernetes" みたく既にお持ちかと思います。
当たり前ですよね?我が家にもあります。
実際にトライしてみることは何より重要。
物理的に用意しなくても良いかもしれません。GKEやAKSやEKSなどはボタンをポチっとすれば簡単に使えるManaged Kubernetesも多数あります。(Managedの定義は範囲の細かい部分は主題ではないのでいったんスルー)
実はManagedじゃないソフトウェアなKubernetesも案外簡単に構築・使用できちゃいます。(なんて便利な世の中になったんだ・・!!)
構築したKubernetes上で試すチュートリアルや研修コンテンツも山程ある。
色んな会社が新人向けや,K8s初学者向けコンテンツなども公開してくれちゃってたりする。(ほんとにありがたい)
- (ご参考) 新人向けの研修資料まとめ
- https://gist.github.com/gcchaan/02f4746a323acac4095c30e0783a3912
- インフラ/アプリエンジニアに必要とされる基礎的なことから,最近だとKubernetesやクラウドネイティブ関連テクノロジーを含む
ほんとに無償公開してよいのか心配になるぐらいリッチなコンテンツが揃ってます。
さて,やや話が逸れましたが,何を言いたいかというと,
「本気でやりたいならいくらでもやりようがあるやんっ!ということ」
・本をじっくり読む
・実際に試す
実践するのは楽しいし為になるけど,時間がかかる/まとまった時間が必要になるからできない ことが理由で進められないならば,テックコミュニティ に目を向けてもいいのでは?
-
Purpose (なんでやるの)
なんでコミュニティに参加すると良いんでしょうか?
・自分ひとりで情報収集するなんて効率悪い。(いやそもそも無理) -
Do (まずやろう)
まずはやってみませんか?
・コミュニティに参加しましょう。
・懇親会でお酒やピザを食べながらお話しましょう。 -
Try (チャレンジしてみよう)
インプットに加えてアウトプットしてみませんか?
・コミュニティで登壇しましょう。
・自分がやってみたこと,普段試行錯誤していることを共有してみよう。 -
Value (得られる価値)
・最新情報を素早く収集できる。
・検証や開発・運用ノウハウなどの知見を得られる。
・自身がトライしてることについて意見をもらえる。
・気づけばたくさんの知り合いができる。
・世界が広がる。
(余談)
「勉強会に参加すると,社員が辞めていく。なので勉強会への参加を禁止する。」
アホみたいな話もたまーに聞こえてきますが,(言うまでもなく)それは皆さんにとって今より良い環境がたくさんあるってことなので積極的に活用しましょう! (この投稿はそういう話ではないけどw)
この投稿でやること
私が認知(というか高頻度で参加している,していた)クラウドネイティブ界隈のコミュニティについて紹介していきます。あまり厳かなゴール設定をしても無理があるので,
今回は 「どんなコミュニティがあるのかを知って頂くこと」 をゴールにしたいと思います。
気軽にビールでも飲みながら,Youtubeでも見ながら,ぜひ最後までお目通しくださいませ。
※本投稿は私の独断と偏見に基づいて書いています
※修正した方が良いコトや誤りなどあれば教えてくださいませ
※組織や何かを代表することは一切ありません
※Kubernetes=クラウドネイティブ と言ってるわけはありません
※CNCF(Cloud Native Computing Foundation)
クラウドネイティブなコミュニティ(自分調べ at 東京)
-
クラウドネイティブ全般 (を取扱うコミュニティ)
-
CNCF Project 単品 (をメインに取扱うコミュニティ)
-
Cloud Native Days (旧Japan Container Days=JKD)
※他にも有益なコミュニティがたくさんあるのと,各コミュニティに対する想いもあるので,随時加筆修正しようかなと思っています
(前半)Kubernetesをはじめとしたクラウドネイティブ全般
Kubernetes Meetup Tokyo
-
メインテクノロジー: アップストリームKubernetes + ALL
-
カテゴリ: ALL
-
説明:
- Kubernetes Meetup Tokyo は強力なコンテナオーケストレーションツールである Kubernetes について詳しく聞く会です!(connpassページより)
-
所感:
- CNCF認定Official Meetup
- 日本を代表するKubernetes Meetup!たぶん一番人気
- Youtubeでリモート配信してくれてて超ありがたい
- Kubernetesの最新バージョンの機能検証結果やノウハウが聞ける
- 初心者には多少敷居が高く感じられるかもしれない
- 主な開催エリアは,六本木(Google),渋谷(CyberAgent),永田町(Yahoo/Z Lab)
-
開催歴:
- 2016/05/10(火)Kubernetes Meetup Tokyo #1
- 2016/06/20(月)Kubernetes Meetup Tokyo #2
- 2017/01/19(木)Kubernetes Meetup Tokyo #3
- 2017/04/20(木)Kubernetes Meetup Tokyo #4
- 2017/06/14(水)Kubernetes Meetup Tokyo @ Google Cloud Next Tokyo
- 2017/06/27(火)Kubernetes Meetup Tokyo #5
- 2017/08/08(火)Kubernetes Meetup Tokyo #6
- 2017/10/12(木)Kubernetes Meetup Tokyo #7
- 2017/11/24(金)Kubernetes Meetup Tokyo #8
- 2017/12/18(月)Kubernetes Invitational Meetup Tokyo #2
- 2018/01/12(金)Kubernetes Meetup Tokyo #9
- 2018/03/08(木)Kubernetes Meetup Tokyo #10
- 2018/05/17(木)Kubernetes Meetup Tokyo #11
- 2018/07/11(水)Kubernetes Meetup Tokyo #12
- 2018/09/04(火)Kubernetes Meetup Tokyo #13
- 2018/09/19(水)Kubernetes Meetup @ Google Cloud Next'18 Tokyo
- 2018/09/28(金)Kubernetes Meetup Tokyo #13
- 2018/11/08(木)Kubernetes Meetup Tokyo #14
- 2018/12/18(火)Kubernetes Invitational Meetup Tokyo #3
- 2019/01/10(木)Kubernetes Meetup Tokyo #15 - KubeCon 2018 Recap
- 2019/02/19(火)Kubernetes Meetup Tokyo #16
- 2019/03/18(月)Kubernetes Meetup Tokyo #17: セキュリティ & オブザーバビリティ
- 2019/04/22(月)Kubernetes Meetup Tokyo #18
- 2019/05/31(金)Kubernetes Meetup Tokyo 19 (Yahoo! JAPAN MEETUP共催)
- 2019/06/18(火)Kubernetes Meetup Tokyo #20 - KubeCon Recap
- 2019/07/25(木)Kubernetes Meetup Tokyo #21 - Cloud Native CI/CD
- 2019/08/28(水)Kubernetes Meetup Tokyo #22
- 2019/09/27(金)Kubernetes Meetup Tokyo #23 - Operator Deep Dive
- 2019/10/24(木)Kubernetes Meetup Tokyo #24
- 2019/11/13(水)Kubernetes Meetup Tokyo #25
- 2019/12/03(火)Kubernetes Meetup Tokyo #26
- 2019/12/18(水)Kubernetes Invitational Meetup Tokyo #4 (予定)
-
録画:
Cloud Native Meetup Tokyo
-
メインテクノロジー: ALL
-
カテゴリ: ALL
-
説明:
- Cloud Native に近しい技術や CNCF がホストするプロジェクトについて共有し合う会です!
-
所感:
- CNCF認定Official Meetup
- CNCFがホスティングしているプロジェクトをメインに取り扱う
- Cloud Nativeな サービスメッシュ,モニタリング,ストレージ,ランタイム,セキュリティ,他
- CNCF Sandboxプロジェクトなど,ニッチ(!?)なテクノロジーのイロハも聞けちゃう
- 主な開催場所は,渋谷(CyberAgent),恵比寿(Red Hat)
-
開催歴:
- 2018/05/21(月)Cloud Native Meetup Tokyo #1
- 2018/06/01(金)Cloud Native Meetup Tokyo #2
- 2018/07/06(金)Cloud Native Meetup Tokyo #3
- 2018/09/11(火)Cloud Native Meetup Tokyo #4
- 2018/09/26(水)Kubeflow Meetup #1(Cloud Native Meetup Tokyo #5)
- 2019/01/09(水)Cloud Native Meetup Tokyo #6 KubeCon + CNCon Recap
- 2019/03/29(金)Cloud Native Meetup Tokyo #7 @Abema Towers
- 2019/06/04(火)Cloud Native Meetup Tokyo #8 ServiceMesh Day Recap
- 2019/08/07(水)Cloud Native Meetup Tokyo #9特別編 feat.Kaslin Fields
- 2019/09/26(木)Cloud Native Meetup Tokyo #10
- 2019/12/10(火)Cloud Native Meetup Tokyo #11 KubeCon Recap
-
録画:
Cloud Native Developers JP
-
メインテクノロジー: ALL
-
カテゴリ: ALL
-
説明:
- Cloud Native Developers JPは、”Cloud NativeなOSSスタック”を勉強するグループです。
-
所感:
- Cloud Nativeにまつわる基礎を丁寧に扱っている
- 体型立てた学習,実環境での運用ノウハウ,などテーマを決めて開催
- オーガナイザー陣の所属企業が,Web系/SIer系/ベンダー系のMIX構成で色んな意見があってオモロイ
- 主な開催場所は,外苑前(Oracle)
-
開催歴:
- 2017/11/22(水)Kubernetes ときどき Serverless -- cndjp第1回
- 2017/12/18(月)Kubernetes in プロダクション ! -- cndjp第2回
- 2018/01/31(水)Kubernetesで実現する高可用性システム -- cndjp第3回
- 2018/02/28(水)[リラン]Kubernetes入門 -- cndjp入門編第1回
- 2018/03/28(水)Kubernetes Network Deep Dive!(Istioもあるよ)- cndjp第4回
- 2018/04/27(金)あつまれ! CI/CDツール大集合! - cndjp第5回
- 2018/06/14(木)隅からスミまでKubernetes総復習 - cndjpシーズン1まとめ
- 2018/07/27(金)一晩で押さえるKubernetes監視の世界 - cndjp第7回勉強会
- 2018/10/04(木)結局Kubernetesのストレージどうするの? - cndjp第8回勉強会
- 2019/01/30(水)今回は特別編!Cloud Nativeなアプリ開発から学んだことを全部シェア - cndjp#9
- 2019/03/25(月)一晩でKubernetesを覚えて帰ろう。ワンナイトBootCamp! -- cndjp#10
- 2019/04/17(水)Serverlessについて思いを馳せる一夜 - cndjp第11回勉強会
- 2019/07/01(月)恐るることなかれ! Cloud NativeリレーショナルDB特集!! - cndjp第12回
- 2019/11/28(木)俺たちの最適なCloud Nativeを求めて…。本気のこと始め! - cndjp第13回
-
録画:
Cloud Native Deep Dive
- リンク: https://deepcn.connpass.com/
- メインテクノロジー: ALL
- カテゴリ: ALL
- 説明:
- Cloud Native プロダクトの現場での試行錯誤や課題について参加者全員でディスカッションする場です!
- 所感:
- セミナー形式ではなく有識者のみでディスカッション (他コミュニティには無い特徴のひとつ)
- 長期間の本番運用ノウハウや,第一線で活躍しているメンバーとDeepな知見共有ができる場
- 開催歴:
- 2018/06/25(月)Cloud Native Deep Dive #1: Kubernetesのマニフェストをどう管理するか
- 2018/08/06(月)Cloud Native Deep Dive #2: サービスメッシュ現状確認会
- 2018/10/09(火)Cloud Native Deep Dive #3: Release Engineering
- 2018/12/05(水)Cloud Native Deep Dive at Japan Container Days v18.12
- 2019/03/14(木)Cloud Native Deep Dive #4: Monitoring
- 2019/07/23(火)Cloud Native Deep Dive at CloudNative Days Tokyo
- 2019/09/25(水)Cloud Native Deep Dive #5: 教育
Docker Meetup Tokyo
- リンク: https://dockerjp.connpass.com/
- メインテクノロジー: Container
- カテゴリ: Container Runtime
- 説明:
- オープンソースの軽量コンテナ Docker のmeetupです.
- 所感:
- コンテナ系ミートアップとしてはおそらく最も老舗
- 最近は初心者向け開催や,ハンズオンなど様々な形態で開催
- 開催歴:
- 2014/02/12(水)Docker Meetup Tokyo #1
- ...
- ... (なんと30回以上開催している)
- ...
- 2019/07/05(金)Docker Meetup Tokyo #31 (初心者歓迎LT祭り+KubeConCN報告)
- 2019/09/05(木)Docker Meetup Tokyo #32
- 2019/11/14(木)Docker Meetup Tokyo #33 (Docker入門ハンズオン)
NoOps Meetup Tokyo
- リンク: https://noops.connpass.com/
- メインテクノロジー: Infrastructure as Code
- カテゴリ: DevOps, SRE
- 説明:
- NoOps の実現に向けて、プラットフォームや技術を超えて知見と経験を共有していくためのコミュニティです。
- 所感:
- SREやNoOpsの考え方や,実運用者のノウハウ共有の場
- 個人的には,NoOpsを実現するためのテクノロジー選択としてコンテナ/Kubernetesがあると思っている
- 開催歴:
- 2018/09/12(水)NoOps Meetup Tokyo #1 recovery
- 2018/10/26(金)NoOps Meetup Tokyo #2
- 2018/12/07(金)NoOps Meetup Tokyo #3
- 2019/02/05(火)NoOps Meetup Tokyo #4
- 2019/03/26(火)NoOps Meetup Tokyo #5
- 2019/06/04(火)NoOps Meetup Tokyo #6
- 2019/07/29(月)NoOps Meetup Tokyo #7
- 2019/09/17(火)NoOps Meetup Tokyo #8
- 2019/11/28(木)NoOps Meetup Tokyo #9
- 2018/09/12(水)NoOps Meetup Tokyo #1 recovery
OChaCafe
- リンク: https://ochacafe.connpass.com/
- メインテクノロジー: ALL
- カテゴリ: ALL
- 説明:
- Oracle Cloud Hangout Cafeは、クラウドネイティブ時代の開発者を対象に巷で話題のオープン・スタンダードなテクノロジーをテーマに取り上げ、 短時間でガッツリ学んでお持ち帰りいただくテクニカルな勉強会シリーズです。
- 所感:
- テーマを決めて基礎的な紹介から始まり,その場でOracleのヒトがリアルタイムデモをやってみせてくれる
- Oracle Cloudや製品を使ってクラウドネイティブやりたい方には特におすすめ
- 開催歴:
- Season1: 1回目 コンテナを使ったCI/CD
- Season1: 2回目 Microservicesの運用・管理
- Season1: 3回目 MicroservicesなJavaアプリケーション
- Season1: 4回目 Hyperledger Fabricアプリケーション設計入門ガイド
- Season1: 5回目 避けては通れない!認証・認可
- Season1: 6回目 人にもマシンにもやさしいAPIのエコシステム
- Season2: 1回目 これからはじめる!Kubernetes基礎
- Season2: 2回目 一体何モノなの?GraalVM 入門
- Season2: 3回目 Serverlessな世界をのぞいてみよう!
OpenShift Meetup Tokyo
- リンク: https://openshift.connpass.com/
- メインテクノロジー: ALL
- カテゴリ: ALL
- 説明:
- Red Hat社の有志メンバーとOpenShiftを実際に利用しているユーザーによって成り立つコミュニティグループです。
- 所感:
- OpenShiftだけでなくKubernetesの最新情報が聞ける場
- Red HatのエンジニアやOpenShiftユーザーが主な登壇者
- 開催歴:
- 2018/10/16(火)OpenShift Meetup Tokyo #1 CoreOS,他
- 2019/02/28(木)OpenShift Meetup Tokyo #2 kubevirt,様々なMW on OpenShift,他
- 2019/03/28(木)OpenShift Meetup Tokyo #3 Kubernetes コントローラ開発,他
- 2019/05/22(水)OpenShift Meetup Tokyo #4 Red Hat Summit Recap,他
- 2019/07/24(水)OpenShift Meetup Tokyo #5 Operator特集!!
- 2019/09/11(水)OpenShift Meetup Tokyo #6 コンテナストレージ特集!!
- 2019/10/18(金)OpenShift Meetup Tokyo #7 Service Mesh&Serverless特集!!
- 2019/12/20(金)OPENSHIFT.RUN 2019 (予定)
(後半) CNCF Project 単品メイン
Envoy Meetup Tokyo
- リンク: https://envoytokyo.connpass.com/
- メインテクノロジー: Envoy
- カテゴリ: Service Mesh
- 説明:
- クラウドネイティブなプロキシサーバである「Envoy」について共有する会です。
- 所感:
- .o0(抽選漏れで行けなかった><)
- 開催歴:
- 2020/01/08(水)Envoy Meetup Tokyo #1 (予定)
OpenCensus User Group (OpenTelemetry)
- リンク: https://opencensus.connpass.com/
- メインテクノロジー: OpenTelemetry (OpenCensus, OpenTracing, OpenTelemetry)
- カテゴリ: Telemetry
- 説明:
- OpenCensusに関するミートアップ
- (OpenCensusとOpenTracingのマージにより,今後OpenTelemetryの知見も共有)
- 開催歴:
- 2019/04/03(水)OpenCensus meetup vol.1
- 2019/06/27(木)OpenCensus/OpenTelemetry meetup vol.2
Prometheus Meetup Tokyo
- リンク: https://prometheus.connpass.com/
- キーテクノロジー: Prometheus
- カテゴリ: Monitoring
- 説明:
- 次世代監視ツール Prometheus の東京や日本でのコミュニティ「Prometheus Meetup Tokyo」です。
- 所感:
- .o0(抽選漏れで行けなかった><)
- 開催歴:
- 2017/04/10(月)Prometheus Tokyo Meetup #1
- 2019/06/03(月)Prometheus Tokyo Meetup #2
- 2020/01/15(水)Prometheus Meetup Tokyo #3 (予定)
SPIFFE Meetup Tokyo
- リンク: https://spiffe-jp.connpass.com/
- メインテクノロジー: Spiffe
- カテゴリ: Identity
- 説明:
- Cloud Native Computing Foundation のサンドボックスプロジェクトである SPIFFE/SPIREを中心とした Zero Trust Network、Secure Introduction 関連の技術について共有する会です。
- 所感:
- やや敷居高めではあるが,個人的にはクラウドネイティブ(例えばMSA活用)で考えるべきゼロトラストネットワーク実現に必要なセキュリティ面の技術情報を取得できる場として重宝している
- 細かな要素技術の実践者による実体験やまとまった情報が大変ありがたい
- 開催歴:
- 2019/05/14(火)SPIFFE Meetup Tokyo #1
- 2019/10/02(水)SPIFFE Meetup Tokyo #2
Rook Meetup Tokyo
- リンク: https://rook.connpass.com/
- メインテクノロジー: Rook
- カテゴリ: Storage
- 説明:
- KubernetesのStorage Operator、Rookが好きな方々のグループです。
- 所感:
- コンテナストレージのオーケストレーターとして注目されているRookをメインに取り扱う
- 多くの場合,何をおいてもストレージは必要だと理解しているけど目を瞑ってきた領域だと思われるので知見共有できるヒトがいればWelcomeな感じ
- 開催歴:
- 2019/12/09(月)Japan Rook Meetup #1
一番大切なこと
「Give & Take」。
まずは感謝する。
エキスパートな面々が歩んできた道から,自分が貰ってきた鮮度の高いDeepな情報学ばせてもらうことになります。
初期フェーズでは受身になりがちかもしれないですが,それは仕方ないことです。ただし皆が死ぬ気で頑張ってきた知見の塊なので常に感謝しましょう。
コミュニティに参加すると,会話する機会はたくさんあります。
そこで休憩や懇親会などで自分のやってることを軽く話していると,同じ境遇の人がいて共感できることもあれば,アドバイスをもらえたりもするかもしれません。
アウトプットすることが大切です。
次に感謝してもらえるようになる。
近い将来に自分の体験をテックコミュニティを通じて共有してみることで,さらに世界が広がって楽しみが増えることと思います。このサイクルが回りだすと,もっと網羅的かつ深い情報も流れるようになるし,WinWinな構図も出来上がりますよね。
あるいは,過去の自分(半年前の自分,一年前の自分)のような初学者に対してモチベートしてあげられるような活動を繰り返すことも重要かなと思います。
(まずはお前がやれよって声が聞こえてきそうですが,私もがんばりますっ!)
まとめ
クラウドネイティブに関連するテクノロジーは溢れかえってします。同時にそれらの情報も膨大です。
勉強するには,大きく3つ。
- 自分で書籍(記事など)を熟読する
- 自分で実践する
- 自分をそういう場においてヒトから学ぶ (テクニカルコミュニティへの参加)
まずは情報を得る云々以前に,ムード(現在のクラウドネイティブ界隈の盛り上がり)を知る ことが大切です。
色んな理由があるのですが,3) からやってみると良いと思います。
その際に,たくさんの選択肢があって選べません。
あるいはコミュニティに不慣れな場合は探し出すのも困難かもしれません。(何がどんなことをやるのか分からん)
そんな方に役立てるように,(私が頻繁に参加している) テックコミュニティをリスト化してみました。