SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

CodeZineニュース

メルカリ、プルリクエストをトリガーにKubernetesでテスト環境を作成するOSS「KubeTempura」を公開

  • このエントリーをはてなブックマークに追加

  • このエントリーをはてなブックマークに追加

 Mercari US Microservices Platform TeamのYuya Yaguchi氏は、同社の4月8日のブログにて、プルリクエストの作成時にKubernetes上にテスト環境を簡単に作成できるツール「KubeTempura」をOSSで公開したことを発表した。

 KubeTempuraは、GitHubでのプルリクエスト(PR)をトリガーとしてKubernetesのリソースを作成できるツール。PRの作成だけでなく、PRへのコミットのプッシュもトリガーとして機能する。

 同氏によると、「PRごとに環境をつくるというアイデアはHeroku Review Appsなど広く知られているもの」で、社内でもKubernetes向けに似たアイデアのツールがあり、利用されていたという。

 しかし、以前のプログラムでは同社内の典型的な設計のマイクロサービスにはうまく対応できるものの、ServiceやDeploymentが複数あったり、Ingressがあったりなかったりといったケースに対応する場合は、コードの変更と特別なアノテーションの追加が求められていた。

 KubeTempuraでは、ReviewApp CRDを定義し、そこで配置するリソースをテンプレートとして定義することで、PRに対してどのようなリソースを配置するかユーザーが決定できるように設計し、柔軟性が向上した。

 GitHub ActionsなどのCIを利用してもこうした機能を実装できるが、Kubernetes Operatorとして実装した理由として、Mercari US社内で50のマイクロサービスとそれに対応するレポジトリを運用しており、それぞれでGitHub Actionsを設定する際の煩雑さを挙げている。KubeTempuraでは、すべての設定をKubernetes上にReviewApp resourcesとして集約することで、組織やサービス数の拡大に対しスケーラブルな設計となっている。

 KubeTempuraの利用手順や注意点については、同社のブログのほか、KubeTempuraのGitHubレポジトリにて案内されている。

関連リンク

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
この記事の著者

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/15810 2022/04/12 15:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング