読者です 読者をやめる 読者になる 読者になる

感謝のプログラミング 10000時間

たどり着いた結果(さき)は、感謝でした。

バックアップの運用について勉強したことのまとめ

管理・運用
<スポンサーリンク>

バックアップの種類

■システムバックアップ
OSやアプリケーションが導入されたシステム領域のバックアップ。
セキュリティアップデートの適用や、アプリケーションの構成変更などを行ったメンテナンス作業の際に、システム領域全体をバックアップする。

■データバックアップ
アプリケーションが使用するデータを保存するためのバックアップ。
毎日バックアップする必要がある。問題が発生した時に戻せるようにする必要がある。

フルバックアップ
データ領域全体を取得する

差分バックアップ
フルバックアップからの変化分を取得する

・増分バックアップ
直前のバックアップからの変化分だけ取得する

バックアップの要件

■リカバリ要件
・どの時点のデータが復元できることを保証するのか
・どれくらいの手間と時間で復元を完了するのか

・何を?
ファイル?ディレクトリ?ファイルシステム

・いつ?
毎晩深夜?それとも土日の深夜?

どのような形式?
tar?dump?フル?差分?増分?圧縮は?
<メモ>
tarではSELinuxやinodeといった属性が引き継がれない

バックアップの方式

・ローカル・バックアップ
・ネットワーク・バックアップ
・LANフリー・バックアップ

オンラインバックアップ:稼働中のアプリケーションを停止せずにバックアップを取得すること
オフラインバックアップ:アプリケーションを停止して、データの書き込みが発生しない状態でバックアップを取得すること
基本はオフラインバックアップを利用する。

rsyncを使ってみる

[sysmgr@localhost test]$ ll
total 8
drwxrwxr-x. 2 sysmgr sysmgr 4096 Apr 25 06:36 data01
drwxrwxr-x. 2 sysmgr sysmgr 4096 Apr 25 06:36 data02

data01のディレクトリごとdata02にrsyncしてみる。

[sysmgr@localhost test]$ rsync -av ./data01 ./data02
sending incremental file list
data01/
data01/fuga
data01/hoge
data01/foo/
data01/foo/yahoo

sent 275 bytes  received 77 bytes  704.00 bytes/sec
total size is 17  speedup is 0.05

確認すると、data02の中に全部コピーされていた。

[sysmgr@localhost data02]$ pwd
/home/sysmgr/test/data02
[sysmgr@localhost data02]$ ll
total 4
drwxrwxr-x. 3 sysmgr sysmgr 4096 Apr 25 06:37 data01

rsyncでネットワーク越しにバックアップする実験

[sysmgr@localhost test]$ rsync -av ./data01 root@localhost:/data/
root@localhost's password: 
sending incremental file list
data01/
data01/fuga
data01/hoge
data01/foo/
data01/foo/yahoo

sent 275 bytes  received 77 bytes  78.22 bytes/sec
total size is 17  speedup is 0.05

これもうまくいって、擬似的ではあるが、ネットワーク越しでもバックアップ可能なことがわかった。


<メモ>
rsync + バックアップ結果の確認、古いファイルの自動削除機能を追加したbackup.pl
http://www-06.ibm.com/jp/linux/tech/doc/0046d623.html

@shibukawa 2月26日
ブログ(静的ビルドしたHTML)のアップロードを、scp -r blog/html/* ユーザ名@ホスト:リモートのパスから、rsync -e 'ssh -l ユーザ名' -avzpr blog/html/ ホスト:リモートのパスに変えたら速度が劇的に上がった。

(@shibukawaさんのツイートより引用させていただきました)

バックアップソフトAmandaを使ってみる

・Amandaクライアントのインストール

# yum install amanda-client
・・・
Running Transaction
  Installing     : amanda-2.6.1p2-8.el6.x86_64                              1/2 
  Installing     : amanda-client-2.6.1p2-8.el6.x86_64                       2/2 

Installed:
  amanda-client.x86_64 0:2.6.1p2-8.el6                                          

Dependency Installed:
  amanda.x86_64 0:2.6.1p2-8.el6                                                 

Complete!

・Amandaサーバーのインストール

# yum install amanda-server
・・・
amanda-server-2.6.1p2-8.el6.x86_64.rpm                   | 466 kB     00:04     
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : amanda-server-2.6.1p2-8.el6.x86_64                       1/1 

Installed:
  amanda-server.x86_64 0:2.6.1p2-8.el6                                          

Complete!

バックアップの経路や認証方法

bsd,bsdudp,bsdtcp,krb5,local,rsh,sshなどをサポート
bsdtcpかsshが推奨される。
・bsdtcpは暗号化されない
sshはセキュリティに有利

Amandaはまた後日続きをやる。

読んだ本

プロのための Linuxシステム構築・運用技術 (Software Design plus)

プロのための Linuxシステム構築・運用技術 (Software Design plus)


この本は読むたびに新しい発見がある。何かしら素晴らしい知見が得られる稀有な本。

サーバ/インフラエンジニア養成読本 [現場で役立つ知恵と知識が満載!] (Software Design plus)

サーバ/インフラエンジニア養成読本 [現場で役立つ知恵と知識が満載!] (Software Design plus)


必要な知識がコンパクトにまとまっている感じ。

感謝のプログラミング

今回で感謝のプログラミングは【286時間目】
10000時間まで、あと【9714時間】