web-dev-qa-db-ja.com

raw SANディスクをSolarisからLinuxに再割り当てする

SYBASE IQデータベースは、データベースの基盤となるストレージとしてrawデバイスを使用してSolarisで実行されています。この環境をSolarisからLinuxに移行したいと思います。 SYBASEがrawデバイスとして使用するSANディスクを新しいLinuxデプロイメントに再割り当てするだけで、SYBASEがそれらを取得して、古いデータすべてにアクセスできるようにすることは可能ですか?

2つのオペレーティングシステムが異なるディスクラベル付け手法を使用しているため、SYBASEが以前のデータブロックを検出できない可能性があるのではないかと心配しています。サイズ要件を考慮して、データベースのエクスポートおよびインポート操作を実行したくありません。 2つのシステムを並行して実行することはオプションではありません。

誰かがこれを達成することに成功しましたか?もしそうなら、遭遇した障害は何でしたか?

3
user126330

ここでは、過去2か月以内にこの正確なシナリオを証明しました。これは私たちがしたことの概要です。

Solaris

[1] RawデバイスでSybaseIQ15.2を実行しています。

[2] Solaris X86システム上のすべてのLunは、fdiskとSolaris EFIvtocラベルを使用して作成されました。 SANはClariionCX4でした

:fdisk -W-/dev/rdsk/c3t600601604E402D002C5763C4D3F8E011d0p0

  • / dev/rdsk/c3t600601604E402D002C5763C4D3F8E011d0p0デフォルトのfdiskテーブル
  • 寸法:
  • 512バイト/セクター
  • 63セクター/トラック
  • 255トラック/シリンダー
  • 62660シリンダー*
  • systid:
  • 1:DOSOS12
  • 190:X86BOOT
  • 191:SUNIXOS2
  • 238:EFI_PMBR
  • 239:EFI_FS *

  • Id Act Bhead Bsect Bcyl Ehead Esect Ecyl Rsect Numsect 238 0255 63 1023 255 63 1023 1 1006632958

:prtvtoc/dev/rdsk/c3t600601604E402D002C5763C4D3F8E011d0s2

  • / dev/rdsk/c3t600601604E402D002C5763C4D3F8E011d0s2パーティションマップ*
  • 寸法:
  • 512バイト/セクター
  • 1006632959セクター
  • 1006632892アクセス可能なセクター*
  • フラグ:
  • 1:マウント不可
  • 10:読み取り専用*
  • 未割り当て領域:
  • 最初のセクター最後
  • セクター数セクター
  • 34 94127 *
  • 最初のセクター最後
  • パーティションタグフラグセクター数セクターマウントディレクトリ04 00 128 1006616414 1006616541 8 11 00 1006616542 16384 1006632925

[3]/dev/rdsk/c3t600601604E402D002C5763C4D3F8E011d0s0をSybaseIQおよび他のLUNアドレスに「s0」パーティションで割り当てました。例えば。

main_1.iq - >は/ dev/rdsk/c3t6006016077202F00BC2278C54FA6E111d0s0 main_2.iq - >は/ dev/rdsk/c3t6006016077202F00C47489D74FA6E111d0s0 iq_system_main.iq - >は/ dev/rdsk/c3t6006016077202F00A89E624050A6E111d0s0 temp_1.iqtmp - >は/ dev/rdsk/c3t6006016077202F00FA57AD1750A6E111d0s0 temp_2.iqtmp - >/dev/rdsk/c3t6006016077202F0028B79B0050A6E111d0s0

RHEL 6.2

[1] LUNをLinuxサーバーにインポートしました。

[2] LUNはLinuxで次のように表示されます。

マルチパス-ll

mpathe(36006016077202f00a89e624050a6e111)dm-7 DGC、RAID 1 size = 50G features = '1 queue_if_no_path' hwhandler = '1 emc' wp = rw |-+-policy = 'round-robin 0'prio = 1 status = active | - 0:0:0:1 sdd 8:48 active ready running- +-policy = 'round-robin 0'prio = 0 status = enabled `-1:0:0:1 sdi 8:128 active ready running

mpathd(36006016077202f00bc2278c54fa6e111)dm-5 DGC、RAID 10 size = 805G features = '1 queue_if_no_path' hwhandler = '1 emc' wp = rw |-+-policy = 'round-robin 0'prio = 1 status = active | - 1:0:0:2 sdj 8:144 active ready running- +-policy = 'round-robin 0'prio = 0 status = enabled `-0:0:0:2 sde 8:64 active ready running

mpathc(36006016077202f0028b79b0050a6e111)dm-2 DGC、RAID 1 size = 403G features = '1 queue_if_no_path' hwhandler = '1 emc' wp = rw |-+-policy = 'round-robin 0'prio = 1 status = active | - 1:0:0:4 sdl 8:176 active ready running- +-policy = 'round-robin 0'prio = 0 status = enabled `-0:0:0:4 sdg8:96アクティブレディランニング

mpathg(36006016077202f00c47489d74fa6e111)dm-6 DGC、RAID 10 size = 805G features = '1 queue_if_no_path' hwhandler = '1 emc' wp = rw |-+-policy = 'round-robin 0'prio = 1 status = active | - 0:0:0:3 sdf 8:80 active ready running- +-policy = 'round-robin 0'prio = 0 status = enabled `-1:0:0:3 sdk 8:160 active ready running

mpathf(36006016077202f00fa57ad1750a6e111)dm-8 DGC、RAID 1 size = 403G features = '1 queue_if_no_path' hwhandler = '1 emc' wp = rw |-+-policy = 'round-robin 0'prio = 1 status = active | - 0:0:0:5 sdh 8:112 active ready running- +-policy = 'round-robin 0'prio = 0 status = enabled `-1:0:0:5 sdm 8:192アクティブレディランニング

ls -l/dev/mapper/mpath *

lrwxrwxrwx。 1ルートルート7Jul 4 17:47/dev/mapper/mpathc-> ../dm-2lrwxrwxrwx。 1ルートルート7Jul 4 17:47/dev/mapper/mpathcp1-> ../dm-3lrwxrwxrwx。 1ルートルート7Jul 4 17:47/dev/mapper/mpathcp9-> ../dm-4lrwxrwxrwx。 1ルートルート7Jul 4 17:47/dev/mapper/mpathd-> ../dm-5lrwxrwxrwx。 1ルートルート7Jul 4 17:47/dev/mapper/mpathdp1-> ../dm-9lrwxrwxrwx。 1ルートルート87月4日17:47/dev/mapper/mpathdp9-> ../dm-10lrwxrwxrwx。 1ルートルート7Jul 4 17:47/dev/mapper/mpathe-> ../dm-7lrwxrwxrwx。 1ルートルート87月4日17:47/dev/mapper/mpathep1-> ../dm-13lrwxrwxrwx。 1ルートルート87月4日17:47/dev/mapper/mpathep9-> ../dm-14lrwxrwxrwx。 1ルートルート7Jul 4 17:47/dev/mapper/mpathf-> ../dm-8lrwxrwxrwx。 1ルートルート87月4日17:47/dev/mapper/mpathfp1-> ../dm-15lrwxrwxrwx。 1ルートルート87月4日17:47/dev/mapper/mpathfp9-> ../dm-16lrwxrwxrwx。 1ルートルート7Jul 4 17:47/dev/mapper/mpathg-> ../dm-6lrwxrwxrwx。 1ルートルート87月4日17:47/dev/mapper/mpathgp1-> ../dm-11lrwxrwxrwx。 1ルートルート87月4日17:47/dev/mapper/mpathgp9-> ../dm-12

[3] RAWデバイスを手動で作成し、上記のLUNのp1パーティションにバインドすることにより、RAWデバイスをSybaseIQに提示しました。

ls -l/dev/mapper/mpath?p1

lrwxrwxrwx。 1ルートルート7Jul 4 17:47/dev/mapper/mpathcp1-> ../dm-3lrwxrwxrwx。 1ルートルート7Jul 4 17:47/dev/mapper/mpathdp1-> ../dm-9lrwxrwxrwx。 1ルートルート87月4日17:47/dev/mapper/mpathep1-> ../dm-13lrwxrwxrwx。 1ルートルート87月4日17:47/dev/mapper/mpathfp1-> ../dm-15lrwxrwxrwx。 1ルートルート87月4日17:47/dev/mapper/mpathgp1-> ../dm-11

生の-qa

/ dev/raw/raw1:メジャー253、マイナー13にバインド/ dev/raw/raw2:メジャー253、マイナー9にバインド/ dev/raw/raw3:メジャー253、マイナー11にバインド/ dev/raw/raw4:バインドメジャー253、マイナー3/dev/raw/raw5に:メジャー253、マイナー15にバインド

ls -l/dev/dm-3/dev/dm-9/dev/dm-13/dev/dm-15/dev/dm-11

brw-rw ----。 1ルートディスク253、11 Jul 4 17:47/dev/dm-11 brw-rw ----。 1ルートディスク253、13 Jul 4 17:47/dev/dm-13 brw-rw ----。 1ルートディスク253、15 Jul 4 17:47/dev/dm-15 brw-rw ----。 1ルートディスク253、3 Jul 4 17:47/dev/dm-3 brw-rw ----。 1ルートディスク253、9 Jul 4 17:47/dev/dm-9

[4] Linux上の対応するデバイスへの同じリンクを作成しました。

main_1.iq->/dev/raw/raw2 main_2.iq->/dev/raw/raw3 iq_system_main.iq->/dev/raw/raw1 temp_1.iqtmp->/dev/raw/raw4 temp_2.iqtmp->/dev/raw/raw5

[5]データベースの.dbファイルと.logファイルをコピーして、データベースを起動しました。

2
user133659

「生のデバイス」と言うとき、あなたは「生のデバイス」または「生のパーティション」を話しているのですか?

rawデバイスは正常に機能します。

rawパーティションを使用している場合、ディスクフォーマットがLinuxが理解できるもの(GPT、MBRなど)であれば問題ありません。

sANの機能によっては、スナップショットを作成し、そのスナップショットをLinuxボックスにマウントしてテストすることができます。

0
longneck