Skip to Content
Kubernetesパターン 第2版 ―クラウドネイティブアプリケーションのための再利用可能パターン
book

Kubernetesパターン 第2版 ―クラウドネイティブアプリケーションのための再利用可能パターン

by Bilgin Ibryam, Roland Huß, 松浦 隼人
September 2024
Intermediate to advanced
392 pages
5h 35m
Japanese
O'Reilly Japan, Inc.
Content preview from Kubernetesパターン 第2版 ―クラウドネイティブアプリケーションのための再利用可能パターン

15章Init Container(Initコンテナ)

Init Container(Initコンテナ)パターンを使うと、初期化関連タスクのライフサイクルをメインアプリケーションコンテナから切り離すことによって、関心の分離が実現できます。この章では、初期化ロジックが必要な際に、さまざまなパターンで使われるKubernetesの基本的な考え方を詳細に見ていきます。

15.1 問題

初期化(initialization)は、多くのプログラミング言語においてよく語られる懸案事項です。言語によっては言語機能の一部として含まれ、また別の言語では構成要素がイニシャライザであることを表すのに命名規則やパターンが使われます。例としてJava言語では、何らかのセットアップが必要なオブジェクトをインスタンス化するのにはコンストラクタ(またはもう少し凝った使い方では静的ブロック)を使います。コンストラクタはオブジェクト内で最初に実行されることが保証されており、管理ランタイムによって1度だけ実行されることが保証されています(これはあくまで例であり、別の言語やまれなケースを取り上げることはしません)。また、必須パラメータなどの事前条件が満たされているかの検証にもコンストラクタを使います。さらに、渡された引数やデフォルト値でインスタンスのフィールドを初期化するのにもコンストラクタを使います。

Initコンテナはこれに似ていますが、Javaのクラスレベルではなく、Podレベルで動きます。メインアプリケーションに相当するPodに1つ以上のコンテナがある時、これらのコンテナには起動する前の前提条件があるはずです。このような前提条件には、ファイルシステムでの特別なパーミッション、データベーススキーマのセットアップ、アプリケーションのシードデータの設定などがあるでしょう。あるいは、この初期化ロジックには、アプリケーションイメージには含まれないツールやライブラリが必要な場合もあるでしょう。そういった場合には、外部依存関係が満たされるまではアプリケーションの起動を遅らせたいかもしれません。こういったユースケースすべてに対するKubernetesにおける実装方法として、メインアプリケーションの役割から初期化処理を切り離すことができるInitコンテナを使います。 ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

エンジニアリングマネージャーのしごと ―チームが必要とするマネージャーになる方法

エンジニアリングマネージャーのしごと ―チームが必要とするマネージャーになる方法

James Stanier, 吉羽 龍太郎, 永瀬 美穂, 原田 騎郎, 竹葉 美沙
プログラミング言語AWK 第2版

プログラミング言語AWK 第2版

Alfred V. Aho, Brian W. Kernighan, Peter J. Weinberger, 千住 治郎
進化的アーキテクチャ ―絶え間ない変化を支える

進化的アーキテクチャ ―絶え間ない変化を支える

Neal Ford, Rebecca Parsons, Patrick Kua, 島田 浩二

Publisher Resources

ISBN: 9784814400881Publisher Website