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ストレージにはブール値のソリューションが含まれています
目次MySQL 8 の WITH クエリについて学ぶ1. 例3. 練習するMySQL 8 の WIT...
目次質問分析する解決するAlert() 関数を置き換えるsetTimeOut関数まとめ質問数日前、J...
1. 背景Youzan の各 OLTP データベース インスタンスには、実行時間が特定のしきい値を超...
この記事では、商品詳細ページの虫眼鏡を実装するためのVueの具体的なコードを参考までに共有します。具...
さまざまな色の16進コード表[パート1] 赤とピンク、およびそれらの 16 進コード。 #99003...
[概要] この記事では、自作の Docker プラットフォームをベースに完全な ELK システムを素...
pymysqlをインストールするpip install pymysql 2|0pymysqlの使用2...
フォーラムでは、ネットユーザーから「HTML ファイル内の別の HTML ファイルの内容を読み取るこ...
序文最近、花火アニメーションを作成しました。花火が散るアニメーションです。アニメーションの実装中、花...
Ubuntu 20.04をインストールする NVIDIAドライバーをインストールする Pytouch...
目次1. インストール2. プロジェクトにインポートしてマウントする3. 使用Vue2.x はコンポ...
カルーセルとは何ですか?カルーセル: モジュールまたはウィンドウで、コンピューターでマウスをクリック...
目次1. プロジェクト環境: 2: DNSサーバーの設定i: 前方解析を構成する: ii: 逆解像度...
プロセス アドレス空間の分離は、現代のオペレーティング システムの注目すべき機能です。これは、「古い...
最近、アルゴリズムについて学んでいて、アルゴリズムで動く小さなゲームに出会いました。そのコードは次の...