1. KVM仮想マシンの移行方法と注意すべき点
1. コールドマイグレーション 通常、仮想マシン ディスクを保存するディレクトリは、nfs ファイル システムを持つディスクにマウントされ、このディスクは通常 LVM ファイル システムです。したがって、コールド移行が必要な場合は、ターゲット ホストに nfs ファイル システムをマウントするだけで、移行する仮想マシンのディスク ファイル (通常は .qcow2 または .raw で終わる) を確認できます。次に、仮想マシンの .xml 構成ファイルをターゲット サーバーに送信し、再定義します。移行された仮想マシンは、「virsh list --all」コマンドで確認できます。 2. ホットマイグレーション ソースホストと宛先ホストがストレージシステムを共有している場合は、クライアントの vCPU 実行状態、メモリ内容、仮想マシンデバイス状態をネットワーク経由で宛先ホストに送信するだけで済みます。それ以外の場合は、クライアントのディスク ストレージを宛先ホストに送信する必要があります。共有ストレージ システムとは、ソース仮想マシンとターゲット仮想マシンのイメージ ファイル ディレクトリが共有ストレージ上にあることを意味します。 共有ストレージ システムをベースとする場合、KVM 動的移行の具体的なプロセスは次のとおりです。 1. 移行が開始されると、クライアントはホスト上でまだ実行されており、同時に、クライアントのメモリ ページが宛先ホストに転送されます。 3. 移行に関する考慮事項 コールド移行でもホット移行でも、注意事項はほぼ同じです。
まとめ:
2. 動的移行
2. KVM仮想マシンのホットマイグレーション構成例 1. 環境整備:
既製の KVM 環境があるので、ここでは紹介しません。KVM 環境がない場合は、ブログ記事「KVM 仮想化の基本管理」を参照して設定してください (非常に簡単で、yum でいくつかのパッケージをインストールし、「libvirtd」サービスを開始するだけです。サーバーの再起動が必要になる場合があります)。 2. NFS共有ストレージを構成する NFS サーバー 192.168.20.4 は次のように構成されています。 [root@nfs ~]# yum -y install nfs-utils rpcbind #必要なソフトウェア パッケージをインストールします[root@localhost ~]# systemctl enable nfs #NFS が自動的に起動するように設定します[root@localhost ~]# systemctl enable rpcbind #rpcbind が自動的に起動するように設定します[root@nfs ~]# mkdir -p /nfsshare #共有するディレクトリを作成します[root@nfs ~]# vim /etc/exports #NFS 構成ファイルを編集します。デフォルトは空です/nfsshare *(rw,sync,no_root_squash) #最初の列は共有ディレクトリを表します。#2 番目の列のアスタリスクは、すべてのネットワーク アクセスが許可されていることを意味します。 #rw は読み取りおよび書き込み権限を表し、sync はディスクへの同期書き込みを表します。 #no_root_squashは、現在のクライアントがrootとしてアクセスするときにローカルルート権限を付与されることを意味します(デフォルトはroot_squashで、nfsnobodyユーザーとして扱われます)。no_root_squashが追加されると、 #権限がダウングレードされ、読み取りと書き込み (wr) が不可能になる可能性があります。 [root@nfs ~]# systemctl restart rpcbind #サービスを開始します[root@nfs ~]# systemctl restart nfs #サービスを開始します[root@nfs ~]# netstat -anpt | grep rpc #サービスが開始されたことを確認します[root@nfs ~]# showmount -e #このマシンの共有ディレクトリを表示しますnfs のエクスポート リスト: /nfsシェア* [root@nfs ~]# ファイアウォール-cmd --add-service=rpc-bind --permanent [root@nfs ~]# ファイアウォール-cmd --add-service=nfs --permanent [root@nfs ~]# ファイアウォール-cmd --add-service=mountd --permanent [root@nfs ~]# systemctl restart firewalld #設定を有効にするにはファイアウォールを再起動します NFS サーバーの構成が完了しました。 ! ! ここでの移行操作はデスクトップのグラフィカル環境に依存します。コマンド移行を使用する必要がある場合は、このドキュメントをダウンロードして参照できます。コマンド移行の使用については研究していません。 2 つの KVM サーバーは次のように構成されています (両方の KVM ホストも次のように構成する必要があります)。 1. rpcbind ソフトウェア パッケージをインストールし、rpcbind サービスを開始します。showmount クエリ ツールを使用するには、nfs-utils もインストールします。 [root@localhost ~]# yum -y nfs-utils rpcbindをインストールします [root@localhost ~]# systemctl rpcbind を有効にする [root@localhost ~]# systemctl rpcbind を開始します [root@kvm ~]# showmount -e 192.168.20.4 #NFS サーバーによって共有されているディレクトリを照会します 192.168.20.4 のエクスポート リスト: /nfsシェア* [root@kvm ~]# mount -t nfs 192.168.20.4:/nfsshare /kvm/disk/ #マウント [root@kvm ~]# df -hT /kvm/disk/ ファイルシステムの種類 容量 使用済み 使用可能 使用済み% マウントポイント 192.168.20.4:/nfsshare nfs4 50G 33M 50G 1% /kvm/disk # サーバーの 1 つにテスト ファイルを書き込んで、他のサーバーで表示できるかどうかを確認します [root@kvm1 ~]# touch /kvm/disk/test # kvm サーバーの 1 つにテスト ファイルを作成します [root@kvm2 ~]# ls /kvm/disk # テストが 2 番目の kvm サーバーのディレクトリでも表示されることを確認します この時点で、2 つの kvm サーバーが使用するディレクトリが同じディスクに保存されていることが保証されます (注: 2 つの kvm 仮想マシンの nfs ファイル システムをマウントするためのディレクトリ パスは一貫している必要があります。ここでは、両方の kvm 仮想マシンが /kvm/disk/ ディレクトリにマウントされています。そうでない場合、後続の操作でエラーが発生します)。 3. 2 つの KVM サーバーにストレージ ボリュームを作成します。 [root@kvm1 ~]# virt-manager #仮想マシンコンソールを開く 次のダイアログ ボックスでは、ターゲット パスは KVM マシンの「/kvm/disk」、ホスト名は nfs サーバーの IP アドレス、ソース パスは nfs サーバーによって共有されるディレクトリです。 上記の操作は 2 番目の KVM でも実行する必要があります。同じストレージ プール名を定義するのが最適です。不要なトラブルを避けるためです。 3. 移行テスト用にkvm1に新しい仮想マシンを作成する
Centos iso システム ファイルを自分でアップロードします。ここで、インストールする iso ファイルを指定する必要があります。 この時点で、仮想マシンを通常どおりインストールできます。 4. 新しく作成した仮想マシンネットワークをブリッジモードに設定し、外部ネットワークにpingを送信します。 以下の操作は主に、パブリック ネットワーク ユーザーにサービスを提供する際に仮想マシンのホット マイグレーションをシミュレートするためのものです。 1) kvm1 の動作は以下のとおりです。 [root@kvm ~]# systemctl stop NetworkManager #このサービスを停止します[root@kvm ~]# virsh iface-bridge ens33 br0 #このコマンドを実行すると、次のメッセージが表示されても心配はいりません。すでに存在しているためです。追加のデバイス br0 を使用してブリッジ ens33 を生成します。ブリッジ インターフェイス br0 の起動に失敗しました [root@kvm ~]# ls /etc/sysconfig/network-scripts/ | grep br0 ifcfg-br0 #このファイルが存在することを確認します[root@kvm ~]# virsh destroy centos7.0 #新しく作成された仮想マシンドメインを閉じます centos7.0 は削除されます[root@kvm ~]# virsh edit centos7.0 #仮想マシン構成ファイルを編集し、インターフェイスを見つけます <interface type='bridge'> #これをブリッジに変更します <mac address='52:54:00:a9:cc:5f'/> #Mac アドレス行を削除します <source bridge='br0'/> #これを次のように変更します #保存して終了します [root@kvm1 ~]# virsh start centos7.0 ドメインcentos7.0が開始しました 仮想マシンを起動したら、仮想マシンのネットワーク カード構成ファイルを設定します。デフォルトのネットワーク カード ファイルは ifcfg-eth0 です。 ネットワーク サービスを再起動し、IP アドレスを確認します。 これで、仮想マシン上で「ping www.baidu.com」コマンドを実行し、パブリック ネットワークに継続的に ping を実行できるようになります。 2) kvm2 の操作は次のとおりです。 [root@kvm ~]# systemctl stop NetworkManager #このサービスを停止します[root@kvm ~]# virsh iface-bridge ens33 br0 #このコマンドを実行すると、次のメッセージが表示されても心配はいりません。すでに存在しているためです。追加のデバイス br0 を使用してブリッジ ens33 を生成します。ブリッジ インターフェイス br0 の起動に失敗しました [root@kvm ~]# ls /etc/sysconfig/network-scripts/ | grep br0 ifcfg-br0 #このファイルが存在することを確認してください。#kvm2 には仮想マシンがないため、ネットワークをブリッジ モードに変更するだけで済みます。 #上記の構成は、仮想マシンがこのサーバーに移行された後にパブリックネットワークと通信できなくなるのを防ぐためのものです。 5. 新しく構築した Centos 7 のホットマイグレーションの準備を開始する 1) kvm1 サーバーで次の操作を実行します。 [root@kvm1 ~]# virt-manager #仮想マシンコンソールを開く 次のようにフォームに入力し、完了したら「接続」をクリックします。 次のソフトウェア パッケージをインストールするように求められます。 インストールするには: [root@kvm1 ~]# yum -y openssh-askpassをインストールします ポップアップ表示されるダイアログボックスに従って、「はい」と入力します。 ターゲットホストのルートパスワードを入力します。 6. ホットマイグレーションを開始する 移行は短時間で完了しますので、完了するまでお待ちください。 移行完了: 次に、ターゲットの kvm サーバーに移動し、新しく移行した仮想マシンを開きます (ping コマンドがまだ継続しており、中断されていないことがわかります)。 2 つの kvm サーバーで「virsh list --all」を使用して、仮想マシンが 2 番目の kvm サーバーに移行されたかどうかを確認できます。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: Vueストレージにはブール値のソリューションが含まれています
目次1. TypeScriptが古いVueプロジェクトに導入されるVue+Typescript プロ...
序文apt-get コマンドは、Ubuntu システムのパッケージ管理ツールです。パッケージのインス...
この記事では、下線を実現するための CSS3 トランジションのサンプル コードを紹介します。このコー...
この記事では、JavaScript メッセージ ボードでメッセージを追加および削除する小さな例を詳細...
目次序文ローリング原理成し遂げるソースコード参照する序文モバイル Web ページの日常的な開発では、...
モバイル側では、フレックスレイアウトが非常に便利です。デバイスの幅に応じてコンテナの幅を自動的に調整...
目次導入説明名前の競合私有財産要約する導入シンボル変数を作成する最も簡単な方法は、Symbol() ...
問題の説明最近、いくつかのマシンで、一日のさまざまな時間に次の警告メッセージが表示されました。 3月...
フォームのコードは図の通りです。スタイルシートがまだ追加されていないため、フォームが整列されておらず...
この記事を読む前に、ボリュームとバインドマウントの基本を理解しておいてください。詳細については、次の...
1. ソフトウェアのインストールパスを確認します。 Linuxソフトウェアをインストールできる場所は...
目次Tomcat の紹介Tomcat の展開Web プロジェクトの作成tomcatの設定プロジェクト...
目次概要ボタンレベルの権限アイデンティティ認証管理R/U 権限権限の更新テナント管理テナント切り替え...
CSSの記述順序1. 位置属性(位置、上、右、z-index、表示、フロートなど) 2. サイズ(...
目次1. 古いバージョンを削除する2. サーバーのカーネルタイプを確認し、適切なバージョンをダウンロ...