同じレプリケーションコントローラまたは同じレプリカセットによって制御されるポッドのセットから、指定された正確に選択されたポッドを削除したいとします。
ユースケースは次のとおりです。セット内の各ポッドは、ステートフルな(しかし、メモリ内の)アプリケーションを実行します。私は、ポッドを優雅なやり方で取り除きたい、つまり、取り除く前に、ポッドによって処理されている進行中のアプリケーションセッションがないことを確認したいと思います。アプリケーションレベルでポッドを空にするという課題を解決できるとしましょう。つまり、選択したポッドに新しいセッションが割り当てられていないため、ポッド内の進行中のセッション数を測定できるため、ポッドをいつ削除するかを決定できます。難しい部分は、このポッドを取り除くことです。RCまたはRSは、「複製物」の価値に基づいてポッドを新しいポッドに置き換えません。
解決策が見つかりませんでした。最も近いものは、http://kubernetes.io/docs/user-guide/replication-controller/#isolating-pods-from-a-replication-controller で示唆されているように、RCまたはRSからポッドを分離することです。RCまたはRSは、同じドキュメントに従って、隔離されたポッドを新しいものに置き換えます。そして、わかっているように、ポッドを分離して、「レプリカ」の価値を原子的に減らす方法はありません。
今後のPetSetのサポートを確認しましたが、私のアプリケーションでは不要です。永続ストレージ、または永続的なポッドID。このような機能は私の場合は必要ではないので、私のアプリケーションは本当にこのような観点からはペットではありません。
APIを使用してパッチを当てることができる新しいポッド状態(「削除対象」 - 状態名は重要ではない)が作成され、「レプリカ」の値がRCまたはRSであるとみなされる可能性があります"減少していますか?明示的に選択されたポッドの正常なシャットダウン
0
A
答えて
1
次の3つのステップでこれを達成することができます:
削除する以外のすべてのポッドにラベルを追加します。ポッドのラベルはレプリカセットのセレクタを満たしているため、新しいポッドは作成されません。
セレクタに新しいラベルを追加し、レプリカセットのレプリカをアトミックに減らします。削除したいポッドは、新しいラベルを持たないため、レプリカセットでは選択されません。
選択したポッドを削除します。
関連する問題
- 1. 選択されたオプションは、私が正常に動作され、この選択を持って選択
- 2. アプリケーションの正常なシャットダウン
- 3. XSLT明示的なノード選択で何も返さない
- 4. GWT - CSSファイルからスタイルが正常に選択されない
- 5. 正しく選択されていない選択リストが動的に追加されました
- 6. Nodejs/express、正常にシャットダウン
- 7. 明示的な選択を解除で崇高テキスト2の複数選択
- 8. setAnimationStyle()の明示的なアニメーション、私の選択は何ですか?
- 9. 明示的な関数テンプレートの特殊化により、間違った特殊化が選択される
- 10. 選択したオプションが部分的に表示されます
- 11. 動的に選択された選択要素をロードする
- 12. シャットダウンで正常にJava子プロセスが生成される
- 13. 正常に作成された#tempテーブルから選択できません
- 14. wordpressテンプレートの動的選択ボックスが表示されない
- 15. 動的ドロップダウンリスト選択の選択された行インデックスを取得
- 16. データソースを選択すると正しく表示されない
- 17. 高度に正規化されたデータベース内の選択されたテーブルデータの一般的なバージョン管理戦略
- 18. 選択したボックスの結果が正しく表示されない問題
- 19. Jetty9の正常なシャットダウンは壊れていますか?
- 20. スレッドを正常にシャットダウンする
- 21. comboBoxの選択された項目は常に同じです
- 22. ルックアップドロップダウンで選択後の説明付きのコードが表示されない
- 23. f.collection_selectに選択した値が表示されない
- 24. DropdownListForに選択した値が表示されない
- 25. ローカルで実行中のNettyサーバーが正常にシャットダウンしない
- 26. Javaプロセスの正常なシャットダウン/終了を行うには?
- 27. radioButtonに選択されたステータスが表示されません
- 28. howto選択ボックスにAJAX選択オプションが表示される
- 29. ノックアウトjs - 選択されたネストされたチェックボックスを表示
- 30. Angularjs:動的に作成されたタブがアクティブ/選択されない
ありがとうございます!そして私はそれを反復可能にするために、余分なラベルをRSから4番目のステップとして削除し、次に5番目のステップとしてすべてのポッドから削除する必要があります。私は、この手順の原子的性質の欠如について少し心配していますが、実際には、日当たりの良いケースではうまくいくでしょう。ありがとうございました! – janosi
はい、4番目と5番目のステップは意味があります:) – caesarxuchao