Japan Container Days v18.4に参加したので、内容紹介は他の人にまかせて所感をば。

次のイベントに参加してきましたので、所感をまとめます。

containerdays.jp

トップバナーはもう次回12月分になってますね。下にスクロールすると今回のプログラム等がまだチェックできます。

セッション資料については、まとめてくださっている方がいるようですので、そこから私が参加したものを著と引っ張ってきます。さすが仕事が早いですね。。。

medium.com

各セッションの詳細内容は、スライドと、また上記記事末尾の他の方のブログを参考にしていただければ良いと思います(一応自分でもメモしていはいますが・・・)。

では、一つずつみていきます。


[keynote K-1] サイバーエージェントにおけるプライベートコンテナ基盤AKEを支える技術

自社用に開発したコンテナオーケストレータAKEの使用技術や変遷のお話でした。

所感

内製パワーがあり、かつ先見性があっての取り組み・成果ですね。早くから取り付くことで、メンバーの意識・スキルともに成熟してくると思います。

後続の私としては、成立し、これから枯れていく技術としてのk8sや、用意されたサービスとしてのGCP、Azure、AWSを使用していくことになります。

エンジニアと会社、それぞれのスタイルがマッチしていて、良いと思いました。

[keynote K-1] マイクロサービスアプリケーションとしての機械学習

実行環境として従来のフロントエンド・バックエンドアプリケーションとは異なるスタック・スペックを要求される機械学習アプリケーションだからこそ、マイクロサービス、コンテナ管理が適している、というお話でした。

所感

セッションの中でも言及がありましたが、今のビジネス用途のニューラルネットワークの場合、学習・使用という2段階の処理で求められるスペック・使用ライブラリが大きく異なり、アプリケーション=>コンテナ=>ノード(マイクロサービスとして)と各階層で組み合わせがしやすいのがよさそうですね。

ステージ・ツールが明確になるので、CI管理もしやすそうです。

そして、忘れてはいけないのが、それを実現できるチーム体制を準備しているからこそ、機械学習アプリケーションチーム=>インフラ、と役割分担もスムーズにできるわけですね。

潤沢な資源や設計スキルもそうですが、そういったチーム体制を取れる会社組織としても、いいなぁ〜と羨望していました。

Yahoo! JAPANKubernetes-as-a-Service”で加速するアプリケーション開発

Yahoo!内で使用されるKaaSのしくみと、その事例の話。

所感

最初に事例や使用しての感想、そのあとに仕組み、という流れがとっつきやすくてよかったですね(理解しているかどうかは別の話)。

実現方式でも出てきた「既存の社内システムとの連携」というのは、どこでもつきまとってくる問題だと思います。

ここは技術的な話だけでなく、政治的な話もどこかで聞けたらいいな〜と思いました(でも大体「聞きたい!」って思うのは、直面したときなんだよなぁ)。

[lunch B-L] Kubernetesセキュリティベストプラクティス

Kubernetesでセキュリティ施策として、攻撃のパターン=>防止策の設定やツールなどの紹介というお話でした。

所感

昼食で若干出遅れて入室し、立ち見になったので全然メモできなかったのが、心残り。。。

かな〜り有用な内容だと思います。私もスライド見て少しずつ復習していきます。

[B-1] Cloud Native Apps入門

CNCFの一員(コントリビュータ?細かいところがわかりませんが)の方から、Cloud Native Appを目指そうということと、実際の取り組みの経緯のお話。

所感

実際のセッション中ではスキップされていましたが、12-factor appが、Cloud Nativeにおいても必要な視点になってくるのかなと思いました。

12factor.net

これはマイクロサービスアーキテクチャの文脈でよく出てきますが、Cloud Nativeにおいても、サービスメッシュの構築やスケーリングを実現するためには12factorに従ったアプリケーションを構築するほうが、コンテナ・ノード管理しやすいのかなと思います。

マイクロサービスについては、セッション中でも言及されていたように「”マイクロサービス”を広義・狭義でどこまで考えるか」について、言葉に縛られている人が多いと思います。

目的を考えて、適切な粒度を、PDCA回しながら実現していくのが良いかと思います。

[B-2] 今こそKubernetes。最高の仕事道具で使いこなそう

k8sを裸で使うんじゃなく、便利で・かつ生き残るオープンソースのツールを使っていきましょう、今日はHelmをオススメ、という話。

所感

IBMの人らしいですが、ツール宣伝が本編中ほとんどなかったのが好印象でした。

k8s、入門本読書中勢としては、これから勉強していくマイルストーンの1つになるような話で、とても参考になりました。

個人的には読み返したい資料No.1。

[CFP C-3]

2セッション構成です。

Helmを利用したKubernetes as a Serviceの実装

モチベーションとして社内など限られた環境でもk8sを使うために、まず自宅でKaaSやってみた話。

所感

実現したこととしてはKeynoteのAKEと同じようなk8s deploy k8sと言う感じだが、それを自前でやってしまうのが、まずすごいです。。。

私もクローズなSIer勤めなので、こういった実現例があるのは、私自身のモチベーションにもなります。

Google Kubernetes Engineにおけるバッチ処理のパターン

Kubernetesのシステム環境でのバッチ実行方式パターンを示していただいたセッション。

所感

モノリシックからマイクロサービスになったり、オンプレからクラウドになったり、またVMからコンテナになったり・・・内部構造のパラダイムが変わるときに一番気になるのが、これまでのシステム要件をどのようにケアしていくかというころです。

そういった意味で、このセッションは、ランチセッションのセキュリティ話と同様のありがたみがありました。

これからスライド見直して勉強します(当日はもう頭パンクしてました)。

[A-4] Dockerだけじゃないコンテナruntime徹底比較!

ついに、k8sではなくコンテナレイヤの話。OCI、CRI等インタフェース整備のおかげで台頭してきた他のランタイムと、もともとdockerがやってたcontainerdとの比較を中心としたお話。

所感

docker自体は使用しつつも、本番導入ではなく社内の開発環境用途だったので、ランタイムという目線があるという知見を獲得しました。

あと、当分デフォルトのdocker(runC + containerd)でよさそう、ということで当分安心してオーケストレーションのレイヤのことを考えられます。

あと、なにがって、スライドがオシャレなんだよな。macOSKeynoteかな?スライドの作り方のセッションとか聴きたい。

[B-5] CNCF: Evolving the Container Landscape

※スライド情報なし

完全に英語セッション。CNCFの中の人が、実施しているプロジェクトCloud Native Landscapeの中で、”Cloud Native Trail Map”のステップを詳細に紹介していただきました。

所感

英語オンリーというのはちゃんと注意書きがあったので、それを知った上で、チャレンジ的な意味でこのセッションにしました。

私からは、「なるほどな」という言葉しか今は出てきませんので、察してください。

一緒に、スライドを復習して、英語を勉強して、Cloud NativeなLandscapeを一緒に見ましょう!(カメラが下からグイッとパンしてタイトルロゴがドーン

まとめ

Twitterやまとめブログ等で、「コンテナとはいいつつ、ほとんどKubernetesじゃん!」というのがよく言われていますが、それだけKubernetesが今後トレンド、ではなくスタンダードの位置になってきますよ、ということだと思います。

以前参加した、Javaのコミュニティイベント「JJUG CCC 2017」でも、SpringFrameworkとマイクロサービスである程度のセッションの割合が占められていました。

今回のイベントはコンテナ技術に特化したもので、技術が盛り上がり、それが発展していく先には本番システムとしての利用がもちろん目的地として存在します。そしてそれを実現するためには、現代的な計算リソースとしてのクラウドコンピューティング、プライベードクラウドがある以上、オーケストレーションが必要になります。

もちろん規模の小さいオンプレミスでも、少なくとも2台以上の冗長構成があるはずですので、その点では量の違いだけしかなく、クラウドと同じことが言えます。

そこに、各ベンダーがここまで中立に作り上げていくKubernetesへの注目度というのは、いままでのどの固有名詞を持つフレームワークやライブラリ・ツールと比較しても、相当なものです。Linux相当とまではいいませんが。

というわけで、私がKubernetesに対して言えるのはこれしかありません。

f:id:saikou9901:20180423002657p:plain

Kubernetes本、手を動かしながらやってるのでまだ半分くらいですが、必ずやりきって、実際のKaaS比較やHelm等ツール選択のレベルには最低限到達していきたいと思っています。