206 Views
May 30, 19
スライド概要
2019年5月28日に開催されたヤフー名古屋Tech Meetup #2の内容です。
#2 は「コンテナ技術」をテーマに開催しました。
https://yahoo-nagoya.connpass.com/event/121472/
ヤフー名古屋Tech Meetupは、名古屋で開催されるクリエイター向け勉強会です。
東京大阪に行かなくても技術的な話が出来る場、クリエイターのアウトプット/インプットの場、多種多様なクリエイターと交流できる場を目指しています。
2023年10月からSpeaker Deckに移行しました。最新情報はこちらをご覧ください。 https://speakerdeck.com/lycorptech_jp
仮想マシンからの移⾏先として PaaSとKaaS、どちらを選ぶか? 2019年5⽉28⽇ ヤフー株式会社 Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved. ⾼⽊ 克彰
⾃⼰紹介 名前 ⾼⽊ 克彰(たかぎ かつあき) 18新卒⼊社 @tkgtransit ヤフーでの仕事 Yahoo!地図、Yahoo!カーナビ、 DevRelアソシエイト(HackU, MeetUP) 趣味 ガジェット、ダーツ、 ゲーム(光の戦⼠)、写真 Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved. 2
ここでの⽤語の扱い ・仮想マシン:ここではOpenStackのVMを指します ・PaaS:Platform as a Serviceのこと ・KaaS:Kubernetes as a Serviceのこと ※CaaSはKubernetes以外のコンテナオーケストレーションも含む為、 今回はあえてKaaSと表現します。 Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved. 3
移⾏することに⾄った経緯 Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
バックエンドの運⽤保守で課題を抱えていた ・デプロイ〜本番投⼊に時間がかかる ※イメージ 本番から切り離して デプロイして 再度本番に投⼊ 膨⼤な数をこなさなければならない Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved. 5
バックエンドの運⽤保守で課題を抱えていた ・セキュリティパッケージの更新などでも同様 ※イメージ 本番から切り離して デプロイして 再度本番に投⼊ 膨⼤な数をこなさなければならない Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved. 6
バックエンドの運⽤保守で課題を抱えていた ・障害が発⽣した場合… ※イメージ 障害が発⽣したら 本番から切り離して 再起動して 再度本番に投⼊ 障害の度に対処しなければならない Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved. 7
実際の移⾏パターン Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.
既存構成に応じて移⾏先の選択 既存構成例① (簡易イメージ) Rest API系 API群 Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved. 9
既存構成に応じて移⾏先の選択 移⾏先例① (簡易イメージ) Rest API系 API群 Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved. 社内DBaaS 10
移⾏のポイント ・DBと同居しないように変更 ・ロジックを整理し、Java+SpringBoot化 ・PaaSにすることでサーバーの保守コスト減 API群 Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved. 社内DBaaS 11
既存構成に応じて移⾏先の選択 既存構成例② (簡易イメージ) BFF層 エンジン系API群 API群 Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved. バイナリデータ 社内オブジェクトストレージ 12
既存構成に応じて移⾏先の選択 移⾏先例② (簡易イメージ) BFF層 エンジン系API群 API群 Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved. バイナリデータ 社内オブジェクトストレージ 13
移⾏のポイント ・エンジン系APIは速度が必要 ・既存は「ApacheModule and C++」 → 「ApacheModule and C++ on k8s」 ・保守コストが多少上がるが速度重視 ・バイナリデータはPod毎にinit containerで取得 バイナリデータ エンジン系API群 Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved. 社内オブジェクトストレージ 14
移⾏により解決されたこと ・デプロイから本番投⼊までの作業時間が短縮 ・ミドルウェアの更新に伴う作業時間も短縮 ・障害発⽣時も⾃動復旧 ・アクセス数増加時のスケールも⾃動化 新規開発などに集中できるように!! Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved. 15
まとめ ・無理にKaaSにする必要はない ・PaaSの組み合わせで⼗分ではないか? ・アクセス数などの負荷 ・移⾏コスト ...etc ・場合によって使い分けが⼤事 Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved. 16
Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.