ヤマムギ

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 クラウドプラクティショナー」という本を書きました。

【PR】 「AWSではじめるLinux入門ガイド」という本を書きました。

 - event, study

ad

ad

  関連記事

Alexa Day 2018にサポーターの中の人として(初)参加しました

2018/2/11に神戸三ノ宮のスペースアルファ三宮で開催されたAlexa Da …

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

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

Lotusphere 2010に行ってきました

Lotus Technical Award 2009 for Best Arch …

Developers Summit 2016 KANSAIに行ってきました

Developers Summit 2016 KANSAIに行ってきました。 熱 …

EC-CUBE3.0 コードリーディング勉強会第1回目に行ってきました

EC-CUBE3.0 コードリーディング勉強会第1回目に行ってきました。 ECサ …

第5回 八子クラウド座談会in関西 「関西まるっとIoTでやったらんかい♬」に行ってきました

SIMの契約変更のはざまで通信がほぼ使えず。 そんな状態なので、Twitterで …

家族目線(HVC-C2W)SDKサンプルコードを実行してみました(iOS編)

オムロンさんの家族目線(HVC-C2W)SDKサンプルコードを実行してみました。 …

交通情報系スキルを事例に見る日常生活に溶け込むスキルのテクニック(Alexa Day 2019でのブログ)

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

久しぶりにMonotaROさんの話しを聞いて興奮した「MonotaRO Tech Talk #6 (大阪梅田オフィスオープン記念)」

エンジニア人生というか、普通に仕事に対する考え方とか、自分に大きな影響を与えてく …

Innovation EGG 第7回 『クラウドネィティブ化する世界』に行ってきました

Innovation EGG 第7回 『クラウドネィティブ化する世界』に行ってき …