コンテナオペレーターが知っておくべき Kubernetes (K8s) クラスターの 10 個の一般的な API リソースオブジェクト

コンテナオペレーターが知っておくべき Kubernetes (K8s) クラスターの 10 個の一般的な API リソースオブジェクト

Kubernetes (略して K8s) は、コンテナ化されたアプリケーションの展開、スケーリング、および操作を自動化するためのオープンソースのコンテナ オーケストレーション プラットフォームです。 Kubernetes には、それぞれ特定の目的と動作原理を持つさまざまな種類のリソース オブジェクトがあります。

1. ポッド

コンセプト:

Pod は Kubernetes における最小のデプロイメント ユニットであり、通常は 1 つ以上のコンテナが含まれます。ポッドは同じネットワーク名前空間とストレージを共有し、同じホスト上で起動され、簡単に通信できます。

効果:

ポッドはアプリケーション コンテナをホストします。コンテナが同じコンテキストで実行され、リソースを共有できる分離された環境を提供します。

動作原理:

Pod には、同じ IP アドレスとポート空間を共有する 1 つ以上のコンテナを含めることができます。 Pod のライフサイクルはコンテナのライフサイクルによって制御されます。 Pod 内のコンテナに障害が発生した場合、Kubernetes は Pod 全体を再起動できます。

2. レプリカセット

コンセプト:

ReplicaSet は、クラスター内で特定の数の Pod レプリカが実行されていることを確認するために使用されます。障害や調整が発生した場合、ReplicaSet はレプリカの数を自動的に調整します。

効果:

ReplicaSet は、コンテナ アプリケーションのレプリカの数を維持し、高可用性と負荷分散を確保するために使用されます。

動作原理:

ReplicaSet は定義されたレプリカの数に応じて Pod レプリカを開始します。 Pod に障害が発生したり、スケールアップが必要になったりすると、ReplicaSet は自動的に Pod を起動または破棄します。

3. 展開

コンセプト:

デプロイメントは、アプリケーションのデプロイメントを宣言的に管理するために使用されるオブジェクトです。これにより、望ましい状態を定義することができ、Kubernetes はクラスターの状態を望ましい状態に自動的に調整します。

効果:

デプロイメントにより、アプリケーションのデプロイメントと更新が簡素化され、ローリング アップグレードとロールバック機能が提供されます。

動作原理:

Deployment は、ReplicaSet を作成して Pod を管理します。アップグレードが必要な場合、デプロイメントは新しいレプリカセットを作成し、トラフィックを徐々に新しいレプリカセットに切り替え、古いレプリカセットを停止します。

4. サービス

コンセプト:

サービスはポッドのグループを定義し、これらのポッドへのネットワーク アクセスを提供します。サービスは内部サービスまたは外部サービスを公開できます。

効果:

サービスは、負荷分散とサービス検出を提供し、アプリケーションが簡単に通信できるようにするために使用されます。

動作原理:

サービスはラベルセレクターを使用して、トラフィックをルーティングするポッドを決定します。これらのポッドに仮想 IP と DNS エントリを作成し、他のアプリケーションがアクセスできるようにします。

5. 構成マップ

コンセプト:

ConfigMap は、構成データをアプリケーションから分離するために使用されます。構成ファイル、環境変数、その他の構成データを保存できます。

効果:

ConfigMap によりアプリケーション構成がより柔軟になり、コンテナを再構築せずに構成を変更できるようになります。

動作原理:

ConfigMap は構成データを保存し、それが Pod 内のコンテナに注入されます。コンテナーは、ConfigMap データを構成ファイルまたは環境変数として使用できます。

6. ステートフルセット

コンセプト:

StatefulSet は、ステートフル アプリケーションをデプロイするためのコントローラーです。 ReplicaSet とは異なり、StatefulSet は各 Pod に一意の識別子を割り当て、ステートフルな永続ストレージをサポートします。

効果:

StatefulSet は、データベースなどの安定したネットワーク ID と永続的なストレージを必要とするアプリケーションに適しています。

動作原理:

StatefulSet は、それぞれが一意の識別子を持つ順序付けられた Pod のシーケンスを作成します。これらの識別子は Pod の再起動後も保持されるため、ステートフル アプリケーションは一貫した ID と状態を維持できます。

7. デーモンセット

コンセプト:

DaemonSet は、クラスター内の各ノードでレプリカを実行するために使用されます。これは、システムレベルのタスクを実行したり、エージェントを監視したりするのに役立ちます。

効果:

DaemonSet は、各ノードが特定の Pod レプリカを実行することを保証するために使用されます。

動作原理:

DaemonSet は各ノードに対して Pod レプリカを作成します。ノードがクラスターに参加したりクラスターから離脱したりすると、DaemonSet は対応する Pod を自動的に起動または停止します。

8. 仕事

コンセプト:

ジョブは、1 回限りのタスクを実行し、タスクの完了後に終了するために使用されます。タスクが失敗した場合、ジョブは再試行を選択できます。

効果:

ジョブは、バッチ処理タスクや 1 回だけ実行する必要があるタスクに適しています。

動作原理:

ジョブは、指定されたタスクを実行する 1 つ以上のポッドを作成します。タスクが完了すると、Pod は終了します。

9. クローンジョブ

コンセプト:

CronJob は、定期的にジョブを実行できる時間ベースのジョブ スケジューラです。 Cron 式に似たタイミング ルールを使用します。

効果:

CronJob は、バックアップやログのクリーンアップなどのバッチ タスクを定期的に実行するために使用されます。

動作原理:

CronJob は時間ルールに基づいてジョブを作成します。これらのジョブは指定されたタスクを定期的に実行します。

10. 水平ポッドオートスケーラー(HPA)

コンセプト:

HPA は、CPU 使用率やその他のメトリックに基づいて、Pod レプリカの数を自動的に増減するために使用されます。

効果:

HPA は、アプリケーションが負荷需要に基づいて自動的にスケーリングできるようにするために使用され、パフォーマンスとスケーラビリティを実現します。

動作原理:

HPA は定義されたメトリックを監視し、しきい値に基づいてポッドのレプリカの数を自動的に増減します。

これらの Kubernetes リソース オブジェクトとその動作を理解することは、Kubernetes クラスターでコンテナ化されたアプリケーションを正常にデプロイおよび管理するための鍵となります。アプリケーションの種類と要件に基づいて適切なリソース オブジェクトを選択し、高可用性、負荷分散、自動スケーリングなどの機能を実現するように適切に構成します。これらのリソース オブジェクトは、ユーザーが安定した、スケーラブルで管理しやすいコンテナー化されたアプリケーションを構築するのに役立つ豊富な機能を提供します。

<<:  ネットワーク障害の目に見えない原因: MTU 構成をご存知ですか?

>>:  1日1スキル: 分散システム向けの低コストの権限検証メカニズム

推薦する

buyvm-VPS 簡易評価/256m メモリ/SSD/ラスベガス

buyvm は最近プロモーションを行っていますが、実際にはいくつかの IP が配布されるだけです (...

Baidu Spiderのオリジナルコンテンツ取得方法の再理解

Baidu の当初の火星計画は、かつて多くのウェブマスターを落胆させました。どうして彼らは、ウェブサ...

Apple、プライバシーとデジタル遺産に重点を置き、iCloudをiCloud+にアップグレード

海外メディアの報道によると、2021年のグローバル開発者会議ではソフトウェアのアップグレードが焦点と...

クラウンクラウド - $7/Kvm/2g メモリ/30g ハードディスク/3T トラフィック/ロサンゼルス/QR データセンター

CrownCloud は設立から 2 年で、常に控えめな姿勢を貫いています。同社の製品は非常に堅実で...

B駅のトラフィック傾向の分析

導入Bilibiliの人気トレンドは常に他のプラットフォームとは異なり、独自の2次元、妖怪、面白い属...

この無料 CDN で WordPress サイトの読み込みが遅い問題を解決しましょう

無料のものを嫌いな人がいるでしょうか?自分のウェブサイトをもっと速くしたいと思わない人はいないでしょ...

Baidu Academic Search がリリースされました! Baiduセカンダリドメイン名を有効にする

eName.cnは6月13日、Baidu Academic Searchがセカンドレベルドメイン名x...

CEOがクラウドベースのソリューションで将来性を求める理由

増大する顧客の需要を満たすために、企業はビジネスをクラウド プラットフォームに移行する必要があります...

検索エンジンのブラックハット不正行為から逃れ、サイトランキングの自然な向上を促す方法(パート2)

検索エンジンのブラックハット不正行為から逃れ、サイトランキングの自然な向上を促進する方法について、次...

中国の初期段階の母親と乳児の行動と消費嗜好に関する洞察

三子政策の実施に伴い、母子産業の発展見通しも注目を集めています。初期の母子人口を観察することで、ブラ...

Baidu Bear アカウントがオリジナルではなく、信頼性が低いというのはどういう意味ですか?

小教室:百度熊張浩の背景に原文リンクを提出した後、原文リソースデータ分析で非原文の理由が「信頼度が低...

Baidu のオープンデータ プラットフォームを使用してユーザー エクスペリエンスとブランド価値を向上

おそらく、まだ多くの人が百度オープンプラットフォームの概念を知らないでしょう。百度データオープンプラ...

オラクル、業界をリードする顧客と提携しクラウド導入をリード

オラクルのCEO、マーク・ハード氏は昨年、2025年までに本番アプリケーションの85%がクラウドで実...

JD.comのナスダック上場:劉強東と投資家たちの物語

5月22日、JD.comはナスダックに上場し、32億ドル(テンセントの株式購入額を含む)を調達し、時...

GitLabがTektonタスクビルドをトリガーする

[[407261]]以前は、TaskRun または PipelineRun オブジェクトを作成してタ...