K8S ステートレスおよびステートフル、初心者向けガイド!

K8S ステートレスおよびステートフル、初心者向けガイド!

Kubernetes は、コンテナ化されたアプリケーションの展開、スケーリング、管理を自動化するためのオープンソースのオーケストレーション システムです。

Kubernetes の詳細については、Kubernetes ガイド (https://devtron.ai/blog/developers-guide-to-kubernetes/) を参照してください。

Kubernetes は、Pod と呼ばれる基本リソースを提供します。 Pod は Kubernetes でデプロイ可能な最小の単位で、実際にはコンテナのラッパーです。 1 つ以上のコンテナ、共有ストレージ/ネットワーク、およびコンテナの実行方法の仕様を持つことができます。

ポッドは一時的なエンティティと見なされます。ポッドがスケジュールされているノードが停止した場合、ポッドは削除され、タイムアウト後に再スケジュールされます。

ポッドは Kubernetes 内のユニットを表します。水平スケーリング (つまり、複数のインスタンスの実行) の場合、アプリケーションには複数のポッドが必要です。ポッドを複製して水平スケーリングを実現します。複製されたポッドはコントローラーによって作成および管理されます。

ポッドレプリカ管理用コントローラ

1. 展開

デプロイメントは、アプリケーションをデプロイするための最も単純かつ最も一般的に使用されるリソースです。 ReplicaSets の展開を管理します。デプロイメントを定義して、更新、新しいレプリカセットの作成、または既存のデプロイメントの削除を行うことができます。 Deployment の主な機能は、ポッドと ReplicaSet の宣言的な更新を提供することです。

デプロイメントは、次の目標を達成するのに役立ちます。

  • ReplicaSet を展開すると、バックグラウンドでポッドが作成されます。ロールアウトのステータスをチェックして、成功したかどうかを確認できます。
  • ポッドの新しい状態を宣言する - デプロイメント マニフェストの PodTemplateSpec を更新できます。新しい ReplicaSet が作成され、Deployment は制御された速度で古い ReplicaSet から新しい ReplicaSet に Pod を移動します。これで、新しいレプリカセットごとにデプロイメントの更新されたバージョンが含まれるようになります。
  • 以前のデプロイメント リビジョンへのロールバック - 何らかの状況により現在の状態が安定していない場合は、デプロイメントを以前のデプロイメント リビジョンにロールバックできます。

Deployment では提供されないものは何ですか?

  • ポッドの識別子は提供されません。
  • ポッド用のストレージは提供されないため、ステートレス アプリケーション (使用されているネットワークを気にせず、永続的なストレージを必要としないアプリケーション。たとえば、Apache、Nginx、Tomcat などの Web サーバー) にのみ使用されます。

2. ステートフルセット

これは、ステートフル アプリケーションを管理するために使用される Kubernetes リソースです。一連の Pod のデプロイメントとスケーリングを管理し、Pod の順序と一意性を保証します。

Deployment とは異なり、StatefulSet は各ポッドの ID を維持します。各ポッドには、スケジュール全体で一定に保たれる永続的な識別子があります。

たとえば、flag という名前の StatefulSet を作成すると、flag-0 という名前のポッドが作成され、StatefulSet の複数のレプリカに対して、ポッド名は flag-0、flag-1、flag-2 のように増加します。

各ノードには独自の永続ボリュームがあります。ポッドを削除または縮小しても、ポッドに関連付けられているボリュームは削除されないため、データは保持されます。

デプロイメントボリュームとステートフルセットボリュームの違い

  • デプロイメント: 「ステートレス アプリケーション」に使用されます。ボリューム (PVC) はポッド間で共有されます。共有ボリュームにはデータがないため、データ漏洩の問題が発生します。
  • StatefulSet: 「ステートフル アプリケーション」用。 PVC はその中に情報を保存し、その結果、すべてのポッド間で情報が共有されることになります。

デプロイメントとステートフルセットでの PVC の使用

アクセス モードを使用すると、PVC を Deployment と StatefulSet 全体で使用できます。アクセス モードは次の 3 つあります。

  • ReadWriteOnce: ボリュームを単一ノードの読み取り/書き込みとしてマウントします。
  • ReadOnlyMany: ボリュームを読み取り専用として複数のノードにマウントします。
  • ReadWriteMany: ボリュームを複数のノードに読み取り/書き込み可能としてマウントします。

展開

デプロイメントに PVC が指定されると、すべてのレプリカ ポッド間で共有されます。この場合、PVC には ReadWriteMany または ReadOnlyMany アクセス モードが必要です (ReadWriteMany はまれであり、少数のストレージ プロバイダーでのみサポートされています)。

ReadWriteOnce アクセス モードで PVC を作成し、ステートフル アプリケーションを作成して実行しようとすると、正常に動作します。スケールアウトすると、新しいポッドが起動したときに、ボリュームがすでに使用中であることを示すエラーが表示されます。

したがって、この場合は、エラーを回避するために読み取り専用ボリュームを使用することをお勧めします。

ステートフルセット

StatefulSet の PVC を指定する場合、PVC に ReadWriteOnce アクセス モードがあることを確認する必要があります。

StatefulSet を使用して、各レプリカの PVC を自動的に作成する VolumeClaimTemplate を定義します。

もう 1 つの利点は、アプリケーションと永続ボリュームを定義する単一のファイルが存在することです。アプリケーションのスケーラビリティがさらに向上します。

元記事: https://medium.com/container-talks/kubernetes-deployment-vs-statefulset-what-you-need-to-know-1a281e1d3c2c

<<:  ついにクラウドコンピューティングとデジタルトランスフォーメーションの関係を説明する人が現れる

>>:  Dockerfiles と Buildpacks を理解するための 7 つの画像、この 2 つをどのように選択すればよいでしょうか?

推薦する

ソフト商品のプロモーション:ブランドの活力を維持するために、これらの点に注意する必要があります!

2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っています誕生、老い...

Hostdare ロサンゼルス C3 データセンター KVM 仮想 VPS レビュー

Hostdare は、一昨日、zenlayer (c3 コンピュータ ルーム) の KVM シリーズ...

電子商取引ウェブサイトマーケティングを成功させる秘訣の分析例

インターネット マーケティングは、従来のマーケティングに徐々に取って代わってきました。インターネット...

コンテンツマーケティングのヒント: 最初の戦いが決定的な戦いとなる

月収10万元の起業の夢を実現するミニプログラム起業支援プラン講師|パンダメディア会長沈 陳氏かつて、...

「Baiduホームページに追加」の方法と原理について話す

最近、百度が新たにアップグレードした機能「百度ホームページに追加」について、皆さんも聞いたことがある...

APPが店頭から撤去されるも、小紅書は「大惨事を乗り越える」

販売中止となった小紅書は、コンテンツコンプライアンスの問題が発生している。小紅書は棚から撤去されまし...

2019 年にクラウド IT インフラストラクチャの需要が変動し続ける理由

調査によると、エンタープライズ ハイブリッド クラウド環境に導入されるサーバー、ディスク ストレージ...

エッジコンピューティングはインダストリー4.0の急速な導入の鍵となる

エッジ コンピューティングは、インダストリー 4.0 時代の多くの業界に混乱をもたらすと見込まれてお...

3C海外ブランドのKOLマーケティングデータの洞察

疫病の継続的な影響と消費者のライフスタイルの変化により、3C海外ブランドのインフルエンサーマーケティ...

組み合わせマーケティングソフトウェアの競争が業界関係者の間で白熱した議論を引き起こす

インターネットマーケティングソフトウェア市場で伝統と革新が対決最近、複合マーケティングソフトウェアと...

王通: SEOを素早く学んでお金を稼ぐ方法

SEO は自慢ではなく実践にかかっているので、2 年前に私は 100 を超える Web サイトを最適...

フォーラムコミュニティ運営シリーズ1: コンテンツこそが王様というのは、まさに「落とし穴」

フォーラム コミュニティ運営シリーズ 1 (コンテンツこそが王様、それは詐欺)この記事の内容や意見は...

#干货# hosteons: VPS無料アップグレード構成、無制限のトラフィック、20G防御

hosteons VPS の所有者が新しい割引コードを導入しました。この割引コードを使用すると、ho...

グラフ検索が Google に取って代わる理由

2013 年 1 月 15 日、アメリカの有名なソーシャル ネットワーキング プラットフォームである...