こんにちは!グリフォンでSREをやってる徳田です。
2018年の5月2日から4日にKubeCon + CloudNativeCon Europe 2018がデンマークのコペンハーゲンで開催されます!
そのDay0としてWorkshopやLightning Talkが開催されています!今回はその2つについてのレポートになります。
KubeCon + CloudNativeConとは
まず簡単にKubeCon + CloudNativeConの紹介です。
KubeCon + CloudNativeConはCloud Native Computing Foundation(以降 CNCF)が主催しているカンファレンスで、主にはCNCFがホスティングしているプロジェクトについてのセッションやワークショップが開かれます。
ここ最近まではNAとEUを半年ずつ開催していましたが、今年から新たに中国での開催も決まっており、参加人数やコミュニティの規模も大きくなっています!
今回のKubeCon + CloudNativeCon Europe 2018の開催時点でのホスティングしているプロジェクトは以下の通りです。
KubeCon + CloudNativeCon Europe 2018 Day0
KubeCon + CloudNativeCon はメインの日付より前にWorkShopとLightning Talkを行っています。
Day0というのは勝手につけてしまっているだけですが(笑)
それでは参加したWorkShopとLightning Talkについて内容や感想など簡単に書いていこうと思います。
WorkShop
Kubernetes the AWSome Way!
AWSの方が主催で行われたWorkShopでした。(だからAwesomeがそれっぽい感じに・・w)
形式としてはドキュメントがまとまっているリポジトリのリンクを渡させて、そのドキュメントに従って作業を進めていき、分からないところや質問などがあれば適宜講師の方にして進めていく形でした。
WorkShopで使用したリポジトリはこちらです。
GitHub – aws-samples/aws-workshop-for-kubernetes: AWS Workshop for Kubernetes
3つのコースが用意されており、自分は「Standard Path」を進めました。
内容としては、kopsを利用してAWS上にクラスタを構築して
- CLIの使い方
- クラスタについて
- モニタリング
- アップグレード
- アプリケーションについて
- サービスメッシュ
- サービスディスカバリ
- ローリングアップデート
- オートスケール
を学習することができます。
このWorkShopを通してサービスメッシュに関するIstioやLinkerd、モニタリングに関するPrometheusなども体験することができます。
また、「Developer Path」と「Operations Path」というコースも用意されており、各役割に対してのより深い学習ができます。
最後にはEKSでるよ!という宣伝がありますw
このリポジトリでKuberentesについてはもちろんのこと、AWS上での開発・運用方法を学ぶことができるのでみなさんもやってみては如何でしょうか?
Kubernetes Hands-on Workshop with Heptio
Heptioの方によるKubernetesのハンズオンです。
qwiklabとGKEを利用したWorkShopでカリキュラムとしては以下のような内容でした。
- Create Kubernetes Cluster and Using kubectl
- Containerize Applications
- Deploy Applications using Kubernetes
- Manage and Modify Applications
- Secrets, ConfigMaps and Rolling Update
- Persistent Volume and Persistent Volume Claim
- Jobs, Probes, and Resource Limits
これらを全部理解/習得すればCKADは取得できるのでは?というぐらい密な内容になっていました。開発者としてのカリキュラムであれば十分だと思います。
ただ、3. と 4.の間であった「Kubernetes Architecture」という題目の講義でKubernetesの各コンポーネントでの処理についてはデータの処理の仕方についての解説がありました。この講義ではDeepな質問が多く飛んでいました。ここにいる参加者たちは上のカリキュラムやる必要あるのかな、とも思ってしまいましたw
Lightning Talk
Lightning Talkは数が結構あったのでいくつかピックアップして紹介します。
Why you Should Really Pay Attention to K8S Security Best Practices
Kubernetesのセキュリティについてのお話です。TeslaがKubernetesを運用していたようですが、そのクラスタのセキュリティの欠陥をつかれてマイニングに利用されていた例を出していました。
Tesla cloud resources are hacked to run cryptocurrency-mining malware
CISはKubernetesのセキュリティについてのチェックリストを公開しています(CIS Benchmark)。このBenchmarkにしたがってチェックを行ってくれるツールを紹介していました。
Schedule the Scaling of Your Kubernetes Resources Using kube-start-stop
スケジューリングによるスケールをさせたい!というのをKubernetesのCRDをつかって実装したkube-start-stopというツールの紹介でした。
selectorでDeploymentを指定し、start, stopで時刻を指定をしてスケール設定をします。まだ開発途中らしくこれから機能追加を行っていくようです。
ゲームではこういう要件がよくあるので今後に期待ですね!
A Desktop GUI for your First Kubernetes Deployment
GUIでKubernetesクラスタをデプロイできるツールを作ったよ!というものでした。
Atom + Reactで実装されているそうです。
I Got your RBAC – kube-rbac-proxy
SubjectAccessReviewsを使用してAPIサーバーに対してRBAC認証をするツールを作成したそうです。
利点としては
- APIサーバーの負荷を減らす
- サイドカーとして実行させる
というものだそうです。
現在は証明書認証とトークンを使用した認証が利用できます。将来的にOCIDも使えるようにしていくそうです。
Over-engineering my home with Kubernetes
Home Assistantの高可用性を追求し、KubernetesやPrometheus、MQTTを駆使してより良いSmart Homeを目指す、という内容でした。
一番LTっぽい内容だった感じがしますw(KubeCon NA 2017のWatch This!みたいなw)
スライドはこちら。
最後に
カンファレンスの申込みを2週間前ぐらいに終えたのですが、カンファレンスの2,3日前には2週間前にはなかった中・上級者向けのWorkShopが増えていました。WorkShopの選択はよほど行きたいものがある場合以外を除き直前まで待ったほうが良さそうです。
またLightning Talkは面白い話が多くてメモ取るの忘れるし、時間が短いため早口で英語が聞き取りづらいなどなど・・・。英語を勉強しないとなー、と再度認識しました。(後3日間ずっと思うことに・・)
Day0のレポートは以上となります。少々雑な気はしますがお許し下さい!🙇
明日からはカンファレンスの本番となりますので、Keynoteや各セッション、ブースなどの紹介もできればと思っています!
それではDay1の記事をお楽しみに!!