LFCS:RAIDデバイスとしてのパーティションのアセンブル-システムバックアップの作成と管理-パート6


最近、Linux FoundationはLFCS(Linux Foundation Certified Sysadmin)認定を開始しました。これは、パフォーマンスベースの試験を通じて、Linuxシステムで全体的な運用サポートを実行できることを世界中のシステム管理者が実証する絶好の機会です。 -レベルの診断と監視、および必要に応じて他のサポートチームへの問題のエスカレーション。

次のビデオは、LinuxFoundation認定プログラムの概要を示しています。

この投稿は、10チュートリアルシリーズのパート6です。このパートでは、LFCS認定試験に必要なRAIDデバイスとしてパーティションをアセンブルする方法–システムバックアップの作成と管理について説明します。

RAIDを理解する

Redundant Array of Independent Disks RAID )として知られるテクノロジーは、複数のハードディスクを1つの論理ユニットに組み合わせて、データの冗長性を提供したり、パフォーマンスを向上させたりするストレージソリューションです。ディスクへの読み取り/書き込み操作。

ただし、実際のフォールトトレランスとディスクI/Oパフォーマンスは、ディスクアレイを形成するためにハードディスクをどのように設定するかに依存します。使用可能なデバイスとフォールトトレランス/パフォーマンスのニーズに応じて、さまざまなRAIDレベルが定義されます。各RAIDレベルの詳細については、Tecmint.comのRAIDシリーズを参照してください。

RAIDガイド:RAIDとは何か、RAIDの概念とRAIDレベルの説明

ソフトウェアRAIDを作成、アセンブル、管理、および監視するために選択するツールは、 mdadm (マルチディスク管理者の略)と呼ばれます。

---------------- Debian and Derivatives ----------------
# aptitude update && aptitude install mdadm 
---------------- Red Hat and CentOS based Systems ----------------
# yum update && yum install mdadm
---------------- On openSUSE ----------------
# zypper refresh && zypper install mdadm # 

既存のパーティションをRAIDデバイスとして組み立てるプロセスは、次の手順で構成されます。

パーティションの1つが以前にフォーマットされているか、以前に別のRAIDアレイの一部であった場合は、新しいアレイの作成を確認するように求められます。そこに存在する可能性のある重要なデータが失われないように必要な予防措置を講じていると仮定すると、安全に y と入力して Enter を押すことができます。

# mdadm --create --verbose /dev/md0 --level=stripe --raid-devices=2 /dev/sdb1 /dev/sdc1

アレイの作成ステータスを確認するには、RAIDタイプに関係なく、次のコマンドを使用します。これらは、RAID0を作成しているとき(上記のように)、またはRAID5をセットアップしているとき(下の画像に示すように)と同じように有効です。

# cat /proc/mdstat
or 
# mdadm --detail /dev/md0	[More detailed summary]

このシリーズのパート4で説明されているように、ニーズ/要件に従ってファイルシステムでデバイスをフォーマットします。

アレイを「監視」するように監視サービスに指示します。 mdadm –detail –scan の出力を /etc/mdadm/mdadm.conf (Debianおよび派生物)または /etc/mdadm.conf (CentOS/openSUSE)、そうです。

# mdadm --detail --scan
# mdadm --assemble --scan 	[Assemble the array]

システムの起動時にサービスが開始されるようにするには、rootとして次のコマンドを実行します。

Debianとその派生物。ただし、デフォルトでは起動時に実行を開始する必要があります。

# update-rc.d mdadm defaults

/etc/default/mdadm ファイルを編集して、次の行を追加します。

AUTOSTART=true
# systemctl start mdmonitor
# systemctl enable mdmonitor
# service mdmonitor start
# chkconfig mdmonitor on

冗長性をサポートするRAIDレベルでは、必要に応じて故障したドライブを交換します。ディスクアレイ内のデバイスに障害が発生すると、アレイを最初に作成したときにスペアデバイスが追加された場合にのみ、再構築が自動的に開始されます。

それ以外の場合は、システムに追加の物理ドライブを手動で接続して実行する必要があります。

# mdadm /dev/md0 --add /dev/sdX1

ここで、/dev/md0 は問題が発生したアレイであり、/dev/sdX1 は新しいデバイスです。

デバイスを使用して新しいアレイを作成する必要がある場合は、これを行う必要がある場合があります–(オプションの手順)。

# mdadm --stop /dev/md0 				#  Stop the array
# mdadm --remove /dev/md0 			# Remove the RAID device
# mdadm --zero-superblock /dev/sdX1 	# Overwrite the existing md superblock with zeroes

アラートを送信する有効な電子メールアドレスまたはシステムアカウントを構成できます( mdadm.conf にこの行があることを確認してください)。 –(オプションのステップ

MAILADDR root

この場合、RAID監視デーモンが収集するすべてのアラートはローカルrootアカウントのメールボックスに送信されます。そのようなアラートの1つは次のようになります。

注:このイベントは、 STEP 5 の例に関連しています。この例では、デバイスが障害としてマークされ、スペアデバイスがmdadmによってアレイに自動的に組み込まれました。したがって、正常なスペアデバイスが「不足」し、アラートを受け取りました。

アレイの合計サイズは、最小のパーティションのサイズの n 倍です。ここで、 n は、アレイ内の独立したディスクの数です(少なくとも2つのドライブが必要です)。次のコマンドを実行して、パーティション/dev/sdb1 /dev/sdc1 を使用して RAID 0 アレイをアセンブルします。

# mdadm --create --verbose /dev/md0 --level=stripe --raid-devices=2 /dev/sdb1 /dev/sdc1

一般的な用途:フォールトトレランスよりもパフォーマンスが重要なリアルタイムアプリケーションをサポートするセットアップ。

アレイの合計サイズは、最小のパーティションのサイズと同じです(少なくとも2台のドライブが必要です)。次のコマンドを実行して、パーティション/dev/sdb1 /dev/sdc1 を使用して RAID 1 アレイをアセンブルします。

# mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sdb1 /dev/sdc1

一般的な用途:オペレーティングシステムまたは/home などの重要なサブディレクトリのインストール。

アレイの合計サイズは、最小のパーティションのサイズの( n – 1 )倍になります。 ( n-1 )の「 lost 」スペースは、パリティ(冗長性)の計算に使用されます(少なくとも3台のドライブが必要です)。

問題が発生したときに、スペアデバイス(この場合は/dev/sde1 )を指定して、障害のある部品を交換できることに注意してください。次のコマンドを実行して、パーティション/dev/sdb1 /dev/sdc1 /dev/sdd1を使用して RAID 5 アレイをアセンブルします。 、およびスペアとして/dev/sde1

# mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1 --spare-devices=1 /dev/sde1

一般的な用途:Webサーバーとファイルサーバー。

アレイの合計サイズは( n * s)-2 * s になります。ここで、 n はアレイ内の独立したディスクの数であり、 s 最小のディスクのサイズです。問題が発生したときに、スペアデバイス(この場合は/dev/sdf1 )を指定して、障害のあるパーツを交換できることに注意してください。

次のコマンドを実行して、パーティション/dev/sdb1 /dev/sdc1 /dev/sdd1を使用して RAID 6 アレイをアセンブルします。スペアとして/dev/sde1 、および/dev/sdf1

# mdadm --create --verbose /dev/md0 --level=6 --raid-devices=4 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde --spare-devices=1 /dev/sdf1

一般的な用途:大容量で高可用性の要件を持つファイルサーバーとバックアップサーバー。

RAID 1 + 0 は両方の組み合わせであるため、合計アレイサイズは RAID0 RAID1 の式に基づいて計算されます。まず、各ミラーのサイズを計算し、次にストライプのサイズを計算します。

問題が発生したときに、スペアデバイス(この場合は/dev/sdf1 )を指定して、障害のあるパーツを交換できることに注意してください。次のコマンドを実行して、パーティション/dev/sdb1 /dev/sdc1 /devを使用して RAID 1 + 0 アレイをアセンブルします。/sdd1 /dev/sde1 、および/dev/sdf1 をスペアとして使用します。

# mdadm --create --verbose /dev/md0 --level=10 --raid-devices=4 /dev/sd[b-e]1 --spare-devices=1 /dev/sdf1

一般的な用途:高速I/O操作を必要とするデータベースサーバーとアプリケーションサーバー。

RAIDとそのすべての恩恵がバックアップの代わりではないことを覚えておいてください!必要に応じて黒板に1000回書き込みますが、常にその考えを念頭に置いてください。始める前に、システムバックアップに万能のソリューションはないことに注意する必要がありますが、バックアップ戦略を計画する際に考慮する必要のある事項がいくつかあります。

  1. What do you use your system for? (Desktop or server? If the latter case applies, what are the most critical services – whose configuration would be a real pain to lose?)
  2. How often do you need to take backups of your system?
  3. What is the data (e.g. files / directories / database dumps) that you want to backup? You may also want to consider if you really need to backup huge files (such as audio or video files).
  4. Where (meaning physical place and media) will those backups be stored?

方法1 dd コマンドを使用してドライブ全体をバックアップします。任意の時点で正確なイメージを作成することにより、ハードディスク全体またはパーティションのいずれかをバックアップできます。これは、デバイスがオフラインの場合に最適に機能することに注意してください。つまり、デバイスがマウントされておらず、I/O操作のためにデバイスにアクセスするプロセスがありません。

このバックアップアプローチの欠点は、実際のデータがディスクまたはパーティションのわずかな割合を占める場合でも、イメージのサイズがディスクまたはパーティションと同じになることです。たとえば、 10%しか満たされていない 20 GBのパーティションをイメージ化する場合、イメージファイルは 20 GB のままになります。サイズ。つまり、バックアップされるのは実際のデータだけでなく、パーティション全体です。デバイスの正確なバックアップが必要な場合は、この方法の使用を検討してください。

# dd if=/dev/sda of=/system_images/sda.img
OR
--------------------- Alternatively, you can compress the image file --------------------- 
# dd if=/dev/sda | gzip -c > /system_images/sda.img.gz 
# dd if=/system_images/sda.img of=/dev/sda
OR 

--------------------- Depending on your choice while creating the image  --------------------- 
gzip -dc /system_images/sda.img.gz | dd of=/dev/sda 

方法2 tar コマンドを使用して特定のファイル/ディレクトリをバックアップします–このシリーズのパート3ですでに説明しています。特定のファイルとディレクトリ(構成ファイル、ユーザーのホームディレクトリなど)のコピーを保持する必要がある場合は、この方法の使用を検討してください。

方法3 rsync コマンドを使用してファイルを同期します。 Rsyncは、用途の広いリモート(およびローカル)ファイルコピーツールです。ファイルをネットワークドライブとの間でバックアップおよび同期する必要がある場合は、rsyncが最適です。

2つのローカルディレクトリを同期する場合でも、ローカルファイルシステムにマウントされているローカル<—>リモートディレクトリを同期する場合でも、基本的な構文は同じです。

# rsync -av source_directory destination directory

ここで、 -a はサブディレクトリ(存在する場合)に再帰し、シンボリックリンク、タイムスタンプ、権限、元の所有者/グループ、および -v の詳細を保持します。

さらに、ネットワークを介したデータ転送のセキュリティを強化したい場合は、 rsync を介して ssh を使用できます。

# rsync -avzhe ssh backups [email protected]_host:/remote_directory/

この例では、ローカルホストのバックアップディレクトリをリモートホストの/root/remote_directory の内容と同期します。

ここで、 -h オプションは人間が読める形式でファイルサイズを示し、 -e フラグはssh接続を示すために使用されます。

sshを介したリモート→ローカルディレクトリの同期。

この場合、前の例からソースディレクトリと宛先ディレクトリを切り替えます。

# rsync -avzhe ssh [email protected]_host:/remote_directory/ backups 

これらはrsyncの使用の3つの例(遭遇する可能性が最も高いケース)にすぎないことに注意してください。 rsyncコマンドのその他の例と使用法については、次の記事を参照してください。

関連項目:Linuxでファイルを同期するための10個のrsyncコマンド

概要

システム管理者は、システムのパフォーマンスを可能な限り向上させる必要があります。十分な準備ができていて、データの整合性がRAIDや定期的なシステムバックアップなどのストレージテクノロジーによって十分にサポートされている場合は、安全です。

この記事を改善する方法について質問、コメント、またはその他のアイデアがある場合は、以下でお気軽にご連絡ください。さらに、ソーシャルネットワークプロファイルを通じてこのシリーズを共有することを検討してください。

全著作権所有。 © Linux-Console.net • 2019-2022