セキュリティ上の理由から、Kubernetesのレプリケーションコントローラからポッドやコンテナを時間や条件に基づいて "repave"または再生成することは現在可能ですか? x分/時間ごとまたは条件(トリップワイヤのようなもの)に基づいてスケジュールに基づいてコンテナを再作成しますか?私はこれが外部で行われることができることを知っています。それが既存の機能であった場合、またはこの目的を達成するための巧妙な方法がある場合は、好奇心が強いだけです。Kubernetesレプリケーションコントローラ/コンテナの再生成
0
A
答えて
0
そのままKubernetesに組み込まれているものではありませんが、Liveness probeを利用することで回避できます。あなたのポッド内のコンテナが特定の条件(時間またはイベントベース)で「失敗」する予定の場合、Kubernetesは自動的にポッドを再起動します。つまり、失敗したコンテナを再作成します。
0
もう1つの解決策は、Brendan Burn's ksql scriptを使用してターゲットポッドを特定することです。私は私の展開CIの仕事でこれを私の会社で使っています。 SQLは、再構築したばかりのイメージを実行しているすべてのポッドを検索し、その結果をBASH while
ループに渡して、影響を受けるポッドを1つずつ破棄します。
#!/bin/bash
# Build the ksql query
QUERY="SELECT pods.metadata->name, pods.metadata->namespace "
QUERY="${QUERY} FROM pods LEFT JOIN containers USING uid "
QUERY="${QUERY} WHERE image LIKE '%/${CONTAINER_NAME}:${CONTAINER_TAG}'"
exec 5>&1 # Duplicate stdout on #5 so we can display the
# results of the query and use them at the same time
# Delete every pod matching QUERY. The `sed` and `awk` calls break down the formatted table
while read line; do
namespace=`echo $line | cut -d' ' -f4`
pod=`echo $line | cut -d' ' -f2`
kubectl delete --namespace=$namespace pod $pod
done < <(echo "$QUERY" | node node_modules/ksql/ksql.js | tee >(cat - >&5) | sed -n 'p;n' | tail -n +3)
それは確かに、世界で最もエレガントな解決策ではないのですが、あなたのクラスタ内で実行されている容器の中にこのロジックを埋め込むことが十分に単純である可能性があります。
このテクニックの利点は、それが極端に柔軟で拡張可能であることです。
0
pod.spec.activeDeadlineSeconds
は何をしますか? http://kubernetes.io/docs/api-reference/v1/definitions/#_v1_podspec
関連する問題
- 1. クエリデータベースの再生成
- 2. Docusignのメールを再生成
- 3. Railsキャッシュの再生成
- 4. sprintクラウドデータフローサーバーkubernetes生存タイムアウト値
- 5. デベロッパー作成時にKubernetes "fatal alert:protocol_version"エラーが発生する
- 6. UbuntuマシンでKubernetesを再起動
- 7. kubernetesポッドを再起動するには?
- 8. Railsでフィクスチャテストファイルを再生成
- 9. 再帰乱数生成器
- 10. サウンドを再生する再生ボタンを作成するには?
- 11. Codeigniterフォームの検証...フォームの再生成
- 12. 再生フレームワークでのビューの作成2
- 13. ASP.NET ReportViewerローカルモードのパフォーマンス(expression_hostの再生成)
- 14. NHibernate IDの生成の再マッピング
- 15. iTextSharp:PDFファイルの予告編を再生成
- 16. Rooのpom.xmlを更新/再生成
- 17. ビデオのカスタム "再生"ボタンを作成
- 18. すべてのComputedPropertyフィールドを再生成
- 19. メソッドの記録と再生によるテストの自動生成
- 20. EFコードの防止生産データベースの再生成
- 21. 秘密の再生リストのトラックをsecret_tokenで生成する404
- 22. Kubernetes Minikubeのホストパスのマウントが再ロードされない
- 23. SQLの自動生成列のシーケンシャルユーザーIDを再生成する方法
- 24. .htaccess再生成を無効にする
- 25. DataContractであるEntityModelを再生成
- 26. nodejs/express。セッションを再生成する
- 27. チームプロビジョニングプロファイルを再生成するには?
- 28. 再帰バックトラッカー迷路生成アルゴリズムスタックループ
- 29. 再生ページ内のビデオを再生
- 30. 再生終了後のビデオ再生