ヤマムギ

growing hard days.

*

「Kubernetes(k8s)導入とその後」を聞きにCTO Meetupというイベントに来ました

      2019/04/04


CTOではないのですが、参加者要項に「Kubernetesを知りたいエンジニア」とありましたので来ました。

以下は、気になったことのメモとか感想を書いています。
登壇者、発表者、主催企業などの意図とは異なる可能性がありますことをご了承ください。

flexyさんのご紹介

開催されてて、会場や飲み物のご提供をされている、flexyさんのサービスのご紹介から始まりました。
CTOさんやCEOさんから課題を聞いて、エンジニアさんやデザイナーさんとの橋渡しをされているサービスとのこと(間違えてたらすいません!)。
仕事をする場所がなくても1Fのワーキングスペースは無料で利用できるらしい。

急成長中スタートアップでのKubernetes導入事例

勢い + 若さ + 副業エンジニア = 「スタートアップキメラプロダクト」との横山さん。
「禁欲」Kubernetesを導入したのも禁欲によるものらしい。
どういうことだろう?
fanpという広告型チャットボットサービスを展開されているZEALSさんの事例をお話いただけるとのこと。
2~3人で5ヶ月かけてGCP上のkubernetesへ移行中。
導入理由は、マイクロサービス同士の信頼性と「垂直なオーナーシップ」で縦に見れるところ。
アプリケーションの疎結合(規律化)、自律化、オートヒーリング、自動スケール、なめらかなデプロイ、1つの目的を確実にこなすのが導入してみてのメリット。
キメラの解体は辛かったらしい。
モノリシックからというわけではなく、中途半端なマイクロサービスからの解体は余計に大変とのこと。
ここ、もう少し聞きたい。
Kubernetesによりトータルエンジニアリングが規律化されるが、デプロイなど複雑性は増すとのことでした。

ChatworkにおけるKubernetesの活用

Chatworkさんの導入社数は214,000社を超えられたらしい。
スピーカーさんは2017年7月からJOINされてその時点でKubernetesは導入済みの環境だったらしい坂本さん。

Kubernetes導入の経緯としては、2016年末のメッセージング部分のリプレイス。
ECSでもよかったらしいですが、当時の判断で拡張性の高さからKubernetesを採用された。
PHP部分の一部はまだEC2で動いているらしい。
導入の頃のトラブルとしてはコンテナログのローテートができてなくてディスクが溢れたのと、ステートレスかと思ってたらクラスタ内部でステートを持っていたこと。
kube-aws(CloudFormationでkubernetes on AWSを構築するツール)で構築されている。
メトリクスはDatadog、ログはfluentd。
cluster-autoscaler はワーカーノードをpodのリソースに基づいて調整してくれる、kiamはpodにIAMロールをつけてくれるとのこと、falcoでコンテナ内のプロセス監視をして、GuardでkubernetesユーザーのGithub認証を楽にしている。

Kubernetesは3ヶ月に1回アップデートがある。これに追従するための移行が発生。
ELBに新旧のクラスタをぶら下げてアプリ移行してアップデートに対応していると。
こちらでもdev側に権限移譲ができるが学習コストが高いのでこれから触る人に敷居が高いイメージ。分かる人がメインで対応してしまっている。
CI/CDはConcourseを利用sているが2,000行ぐらいのyamlがあってしっくりきていないそう。
contoroller, etcdを持たなくてよくなるのでEKSへの移行を今後検討されている。

Do you like Kubernetes?

スピーカーさんはオイシックスさんのAKS(Azure Kubernetes Service)化の支援をされたMSの寺田さん。
オイシックスさんは当初、GPC、AWSを検討していたが、寺田さんの支援の結果、AKSに決められたらしい。

「なんのためのKubernetes?」
これ聞きたいですね。
使っている人みなさんに聞きたいです。

スケールアップが必要なアプリケーションはKubernetesは向かない。
スケールアウトできるアプリケーションは向いていると。
ここでも垂直スケールの選択肢が狭まるのですね。ふむ。

一回作ったら機能追加はしないようなアプリケーションもKubernetesには向かない。

パネルディスカッション

アップデートのリリースはやっぱりブルーグリーンデプロイなんですね。
でもクラスタが多いと大変だと。ふむ。

CI/CDに求めるものとして、手動デプロイの気楽さを求めながら規律のあるツールを探されていると。
そしてMS寺田さんからAzureDevopsについて少しご説明。
「VisualStudoって名前があるからどうせC#のことしか考えてないんでしょ」と思っておられたら、CI/CDが超便利らしい。
AWS Tool Kitのような位置づけなのかなあ。
全然違うのかなあ。

このあとは会場質問へのご回答

kubernetesにしたとこで後悔したこととかはありますか?(CD以外)

「ないです。夜寝れるようになりました。」
「コンテナやりたい、Kubernetesやりたい、だと後悔する可能性がある。どこにどの技術が向くのかを見極められる力がこれからのエンジニアに求められる。」

Kubernetes のマニフェストの管理についてどうされてますでしょうか

「エントリポイントをDev向けに置いている。」
「Dockerファイルもyamlも1つのリポジトリに置いている。」

学習コストが高く、運用コストが高いとのことで、人材の獲得難易度(コスト)が高いように思えますが、それでもなお導入している最大の理由は何ですか?

「難しいというより新しいだけ。慣れればわかりやすい。」
「Enterprise Javaとkubernetesはそっくり。」
「Azureは監視オプションを有効にすると監視のためのエージェントがインストールされる。これはお客様のビジネスロジックに集中したいという要望に応えている。」

アプリdeveloperのcontainer技術/k8sに対する無関心、「俺の仕事じゃない」感にとても困っています。

「エンジニアとしてどう成長していきたいのかによる。これからますますできるエンジニア、できないエンジニアの差が出てくる。給料格差も出てくる。」
「全部にキャッチアップするのは大変だけど、標準化されるタイミングはある。勉強して損するかしないかだと損しない技術。」

感想

いまだ自分の中ではコンテナファースト、Kubernetesファースト、ではないのですが、もっと触らないと。できれば本番により近い何かで。


最後までお読みいただきましてありがとうございました!
【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。

 - event, study

ad

ad

  関連記事

隣の芝生は青かった?!VoiceUI/UXデザイナーがスキル解剖して気づいたいくつかのこと(Alexa Day 2019でのブログ)

以下は、気になったことのメモとか感想を書いています。 登壇者、発表者、主催企業な …

「MonotaRo Tech #3 テスト自動化」に行ってきました

モノタロウさんの「MonotaRo Tech #3 テスト自動化」に行ってきまし …

「JP_Stipes Osaka meetup vol.1」を運営させていただきました

Stripeのユーザーグループ、JP_Stripesの大阪ミートアップの運営をさ …

Developers Summit 2018 「もしSIerのエンジニアがSRE本を読んだら」を聞きました

以下は、思ったことや気になったことをメモしていますので、必ずしも登壇者の発表内容 …

DevLove関西 「プロジェクトマネジメントの勘所」に行ってきました

DevLove関西 「プロジェクトマネジメントの勘所」に行ってきました。 サイボ …

「GitLab Meetup Tokyo #7: 新年度応援&GitLab 11.0」にSNS & ブログ枠で参加しました

GitLabのミートアップがあるのか!さすが大東京! GitLabのもとユーザと …

Developers Summit 2018 「自然言語処理・機械学習を活用したファクトチェック業務の支援」を聞きました

以下は、思ったことや気になったことをメモしていますので、必ずしも登壇者の発表内容 …

第17回 人工知能研究会 「今後のDeepLearning技術の発展とビジネス応用」に行ってきました

第17回 人工知能研究会 「今後のDeepLearning技術の発展とビジネス応 …

「JAWS-UG 四国クラウドお遍路」からの特急南風にて変わり続けなければならないなあと思った

「JAWS-UG 四国クラウドお遍路」というAWSのユーザーグループJAWS-U …

Alexaで操作するスマートホームシステムの概要(Alexa Day 2019でのブログ)

以下は、気になったことのメモとか感想を書いています。 登壇者、発表者、主催企業な …