古いハードウェアから新しいハードウェアへのホスト間の移行を行う必要があります。具体的には、HP BL460G7からHP BL460G8まで。古いサーバーと新しいサーバーの両方に2台の600GB 2.5インチドライブがあり、RAID1用に構成されています。サーバーごとに30分のダウンタイムを許容できます。
移行するサーバーは4つあり、最小のサーバーには合計120GBの論理ボリュームが割り当てられ、最大のサーバーには510GBが割り当てられています。 3つのサーバーがRHEL5を実行しており、1つがRHEL6を実行しています。
OSと重要なデータを破壊することなく、与えられた時間内にこれを行う方法に頭を悩ませてきました。
私の唯一の考えはこれです:
これは正気に聞こえますか?
編集:RHEL5はRHEL5.10で、RHEL6はRHEL6.6です
また、システムの2つは、アプリケーションの「イベント」(重要なインフラストラクチャシステムの一部)のほぼ一定の複製を行うホット4ノードクラスタの一部であることにも注意してください。バックアップはありますが、システム全体に障害が発生した場合にのみ使用します。
以前のテストでは、システム間の最大「dd」が約50MBpsであり、遅すぎることが示されています。
編集:ハードウェアの変更をピックアップして処理するには、kudzuに依存していました。
プロジェクトマネージャーは、より大きな停止ウィンドウの要求を拒否しました。
質問で概説されている提案された手順はテストでうまくいきました。ダウンタイムは20分未満でした。私はhpacucliユーティリティを使用して、G7とGen8の進行状況を監視しました。これは、これに非常に役立ちました。
私はまだ怒りながらこれを行っていませんが、述べたように、これはBL460G7からBL460 Gen8でのRHEL 5.10のテストでうまく機能しました。
ファームウェアを更新していません。
G7での最初のRAID1再同期には1時間以上かかりました。 Gen8での再同期には50分もかかりませんでした。これは私には関係していましたが、問題を見つけることができませんでした。
役立つコメントや提案をありがとうございました。
ディストリビューションによっては、他の手順が必要になる場合があることに注意してください。最も顕著なのはドライバーです(@ewwhiteを指摘してくれてありがとう)
このようにしても、元のサーバーはそのまま残ります。そのため、何か問題が発生した場合でも、簡単に元に戻すことができます。ただし、ある程度の知識(grub/rsync/partitions)が必要であるため、実際に実行する前に、事前の準備とテストを事前に行うことをお勧めします。
2つのこと:
各サーバーに含まれるデータ、データの量チャーン、およびプロビジョニングスキームによっては、必要なOSを新しいGen8 ProLiantにインストールして設定を同期するのが妥当な場合があります。データを静止できるポイントにある他のデータ部分。
おそらく、シードコピーを作成し、後続のrsyncでファイルの変更を取得するのにかかる時間からダウンタイム要件を導き出します。転送プロセスを高速化する必要がある場合、または小さなファイルがたくさんある場合は、 それを支援するテクニック があります。
私はこの種の移行を頻繁に行います。同様のLinuxインストールでは、正確なパッケージリスト(YumまたはRPMで簡単に入手可能)、構成ディレクトリ(例:/etc
)、およびデータパーティション以外のものが必要になることはめったにありません。キックスタートプロビジョニングシステムがまだない場合は、/root/anaconda-ks.cfg
ファイルを利用して、G7システムがどのように構築されたかを把握できます。
あなたが言及した特定のRHELバージョンに基づいて、単にディスクを移動することについてのあなたの質問に答えるために、これは絶対に可能です。ディスク/キャディを移動でき、HP Smartアレイメタデータは、システムに存在する可能性のあるP410コントローラーとP420コントローラー間で互換性があります。ただし、新しいシステムのドライブとコンポーネントのファームウェアを最初に完全に更新しないと、これを実行できません。
以前のOSバージョンが新しいハードウェア(主にRAIDコントローラー)を処理できる場合は、 CloneZilla を試してみてください。
あるハードウェアから別のハードウェアに移動できるかどうかを確認するには、古いサーバーから新しいサーバーにすべてのデータを渡して、ddでいくつかのトリックを実行します。
SystemRescueCD のようなライブディストリビューションで新しいサーバーを起動し、IPアドレスと次のようなddコマンドで構成します。
nc -l 8000 | dd of=/dev/sda
現在のサーバーで実行
dd if=/dev/sda | nc ${newserverip} 8000
これにより、サーバーの/ dev/sdaの未加工のコピーが新しいサーバー/ dev/sdaに作成されます。このようにして、元のサーバーでダウンタイムを発生させることなくテストを実行し、リスクをほぼゼロにすることができます。