検索

第4章 オペレーティングシステムの更新

download PDF

メジャーリリース間でのアップグレードや、マイナーリリースのソフトウェアの更新のいずれかによってホストでオペレーティングシステム (OS) を更新すると、それらのマシンで実行されている OpenShift Container Platform ソフトウェアに影響が及びます。とくに、これらの更新は、OpenShift Container Platform で動作する必要のある iptables ルールまたは ovs フローに影響を与えます。

4.1. ホストでのオペレーティングシステムの更新

ホストで OS を安全にアップグレードするには、以下を実行します。

  1. メンテナーンスの準備のためにノードをドレイン (解放) します。

    $ oc adm drain <node_name> --force --delete-local-data --ignore-daemonsets
  2. 更新される必要のない重要なパッケージを保護するには、ホストに除外ルールを適用します。

    # atomic-openshift-docker-excluder exclude
    # atomic-openshift-excluder exclude

    再起動により、ホストで最新バージョンが実行されていることを確認できます。 これは、container engine および OpenShift Container Platform プロセスが再起動されていることを意味し、これにより、他のサービスのすべてのルールが正しいことの確認が強制的に実行されます。

    # yum update
    # reboot

    ただし、ノードホストを再起動する代わりに、影響を受けるサービスを再起動するか、または iptables 状態を保持することができます。どちらのプロセスについても、OpenShift Container Platform iptables のトピックで説明されています。ovs フロールールは保存される必要がありませんが、OpenShift Container Platform ノードソフトウェアを再起動するとフロールールが固定されます。

  3. ホストを再びスケジュール対象 (Schedulable) に設定するには、以下を実行します。

    $ oc adm uncordon <node_name>

4.1.1. OpenShift Container Storage を実行するノードのアップグレード

OpenShift Container Storage を使用している場合、OpenShift Container Storage を実行する OpenShift Container Platform ノードを一度に 1 つずつアップグレードします。

  1. まず、OpenShift Container Storage がデプロイされたプロジェクトを再度呼び出します。
  2. サービスの daemonset に設定されたノードおよび Pod セレクターを確認します。

    $ oc get daemonset -n <project_name> -o wide
    注記

    出力に Pod セレクターを含めるには -o wide を使用します。

    これらのセレクターは、それぞれ NODE-SELECTOR および SELECTOR で参照できます。以下のコマンド例では、それぞれ glusterfs=storage-hostglusterfs=storage-pod を使用します。

  3. daemonset のノードセレクターを使用して、どのホストにラベルが指定されているかを確認し、DeamonSet から Pod が実行されていることを確認します。

    $ oc get nodes --selector=glusterfs=storage-host

    オペレーティングシステムがアップグレードされたノードを選択します。

  4. daemonset ラベルをノードから削除します。

    $ oc label node <node_name> glusterfs-

    これにより、OpenShift Container Storage Pod はそのノードで終了します。

上記のように、ノードが OS をアップグレードできるようになりました。

  1. ノードで OpenShift Container Storage Pod を再起動するには、demonset ラベルでノードのラベルを変更します。

    $ oc label node <node_name> glusterfs=storage-host
  2. OpenShift Container Storage Pod が再生成され、表示されるまで待機します。
  3. daemonset の Pod セレクターでは、OS をアップグレードしたノードで実行されている Pod を検索し、新しく起動された Pod の名前を判別します。

    $ oc get pod -n <project_name> --selector=glusterfs=storage-pod -o wide
    注記

    -o wide を使用して、出力に Pod が実行されているホストを追加します。

  4. oc rsh を Pod に実行し、Gluster Pod でボリュームの修復を確認します。

    $ oc rsh <pod_name>
    $ for vol in `gluster volume list`; do gluster volume heal $vol info; done
    $ exit

    すべてのボリュームが自動修復され、未処理のタスクがないことを確認します。heal info コマンドは所定ボリュームの自動修復プロセスのすべての未処理エントリーを一覧表示します。ボリュームは、ボリュームの Number of entries0 の場合に自動修正済みとみなされます。ボリュームの追加の詳細情報については gluster volume status <volume_name> を使用します。Online 状態の場合は、すべてのブリックについて Y のマークを付ける必要があります。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.