SlideShare a Scribd company logo
1 of 13
Download to read offline
1	
Amandaで始める

かんたんバックアップ
日本仮想化技術株式会社	
大内 明	
自己紹介
•  大内明(おおうち あきら)	
•  1988年生まれ/23歳	
•  根室うまれ、根室そだち	
•  日本仮想化技術株式会社 技術部	
‒  5年目	
‒  VMwareとかXen/KVM方面担当	
•  サーバーいじり大好き	
2	
日本仮想化技術株式会社 概要
•  社名:日本仮想化技術株式会社	
‒  英語名:VirtualTech Japan Inc.	
‒  略称:日本仮想化技術/VTJ	
•  設立:2006年12月	
•  資本金:14,250,000円	
•  本社:東京都渋谷区渋谷1-1-10	
•  取締役:宮原 徹(代表取締役社長兼CEO)	
•  伊藤 宏通(取締役CTO)	
•  スタッフ:9名(うち、6名が仮想化技術専門エンジニアです)	
•  URL:http://VirtualTech.jp/	
•  仮想化技術に関する研究および開発・構築	
‒  仮想化技術に関する各種調査	
‒  仮想化技術に関連したソフトウェア、サービスの開発	
‒  仮想化技術を導入したシステムの構築	
ベンダーニュートラルな
独立系仮想化技術
専業会社	
3	
導入	
仮想化専門コンサルティングサービス
設計	
•  設計	
‒  サーバ、ストレージからネットワークまでアプリ
ケーションまで考慮した仮想化環境設計	
‒  キャパシティプランニング(ベンチマーク)	
•  導入	
‒  ハードウェアおよびソフトウェアの導入	
‒  仮想化統合(P2Vレガシーマイグレーション)	
•  運用保守	
‒  エンジニア教育	
‒  技術サポートの提供	
運用保守	
ベンダーニュートラルなワンストップ・サービスをご提供	
4	
仮想化について相談したい

•  既存環境を仮想化移行する概要設計	
•  他社提案に対する「セカンドオピニオン」	
無料コンサルティング実施中
お気軽にお問い合わせください
5	
お問い合わせ先
「仮想化環境を構築したいが、どこに相談すればいいの?」	
まずは我々にご相談ください	
http://VirtualTech.jp/	
sales@VirtualTech.jp	
050-7571-0584	
6
2	
本日の内容
•  バックアップとは	
•  Amandaの紹介	
•  私のAmandaの導入例	
•  Amandaの導入	
•  Amandaバックアップのリストア	
仮想化分ちょっと薄めです 	
7	
バックアップとは
バックアップとは
•  定期的にデータを作成・保管して、

トラブル発生時にすぐ復旧できるよう

備えること	
‒  操作ミスによるデータの損失	
‒  HDDの劣化による破損	
‒  地震や火災などの災害による物理破損	
‒  プログラムやハードウェアのファームウェア不
具合による論理破損	
9	
バックアップしてますか!?
10	
質問
バックアップしていないと

どうなるのか
•  データを失う	
•  諦めても良いデータ	
‒  手持ちのCDから取り込んだ音楽データとか 	
‒  あきらめる	
•  諦められないデータ	
‒  個人なら思い出の写真・ビデオとか、会社なら
業務データ	
‒  リカバリー業者に頼む(超高価)	
11	
バックアップを取るには
•  次の4点を決めておく	
1.  バックアップの対象データ	
2.  バックアップメディア	
3.  バックアップソフト選び	
4.  バックアップの取り方とサイクル	
12
3	
対象データ
•  どんなものをバックアップするか	
‒  文書や画像など普通のデータ	
‒  OS全体や仮想マシンのイメージ丸ごと	
•  サイズとファイル数	
‒  必要に応じてバックアップメディアを選択	
•  ファイルの更新量(サイクルに影響)	
‒  更新頻度が高いDBデータ→毎日	
‒  あまり更新されないHTMLファイル・画像

→週に1回など	
13	
バックアップメディア
•  ハードディスク(超安価)	
‒  2TBが5000円台、3TBが9000円台	
•  CD/DVD(安価)	
‒  HDDが安すぎて微妙な雰囲気に	
•  USBメモリ, SSD(比較的安価)	
‒  書き換え寿命とか心配、かも	
•  テープ(高価)	
‒  DDS: 容量少なめ・遅い	
‒  Ultrium: 大容量・高速	
14	
(参考)バックアップメディア 09
•  2009年1月時点のハードディスク相場	
‒  1TBが7000円台、1.5TBが1万円台	
•  現在	
‒  2TBが5000円台、3TBが9000円台	
•  たった2年半で、容量が倍のHDDが同じ値
段(もしくはそれ以下)で買えるように 

(;`ω´)!?	
15	
バックアップソフトウェア
•  Windows: 標準のバックアップ	
‒  Windows7では簡単・お手軽になった。自宅で愛用	
•  Mac: Time Machine	
‒  会社で使用中。同じく簡単・お手軽	
•  Linux: tar(?), rsync, Amanda, Bacula, 

Deja Dup	
•  VMware: VMware Data Recovery	
•  Acronis True Image, NetVault等の市販製品	
•  単純に手動(もしくはバッチファイル)でファイ
ルコピー	
16	
バックアップの取り方
•  フルバックアップ

毎回すべてのデータをバックアップ	
•  差分バックアップ

最後のフルバックアップ以降に変更さ

   れたデータをバックアップ	
•  増分バックアップ

前回のバックアップ以降に変更された

   データをバックアップ	
17	
バックアップのサイクル
•  サイクル	
‒  毎日フルバックアップ	
‒  週1回フルバックアップ+差分バックアップ	
‒  週1回フルバックアップ+増分バックアップ	
フルバックアップ	
 差分バックアップ	
 増分バックアップ	
1回のバックアッ
プ時間	
長い	
 短い	
 短い	
リストアの手間

(テープ入れ替え
とか)	
少ない	
 普通	
 多い	
18
4	
Amandaについて
Amandaとは
•  メリーランド大学で開発されたパブリックド
メインのバックアップユーティリティ	
‒  The Advanced Maryland Automatic

Network Disk Archiver の略	
•  Unix/Mac OS X/Linux/Windowsで利用

可能	
•  2011年8月現在の最新版は3.3.0	
•  http://www.amanda.org/	
20	
Amandaの特徴
•  複数マシンのデータを1台のバックアップド
ライブでバックアップすることが可能	
‒  クライアントソフトがネットワーク経由で転送	
‒  1台のみでの利用も、もちろん可能	
             バックアップ	
            対象のマシン	
バックアップ	
サーバー	
21	
Amandaの特徴
•  テープバックアップに最適化	
‒  テープチェンジャー対応	
‒  HDDなどにもバックアップ可能	
•  保持ディスク(holding disk)機能	
‒  ネットワーク経由で転送されたデータを一時的
に格納	
‒  バックアップ先メディアに問題があって書き込
みできなかった場合はここに保持する	
22	
Amandaの特徴
•  バックアップレベルを自動的に調整	
‒  データ変更量に応じてフルバックアップ・差分
バックアップを使い分ける	
‒  フルバックアップ固定に設定することも可能	
23	
Amanda利用のデメリット
•  インターネット上では日本語資料が少なめ	
‒  商用版を扱うZmanda( http://zmanda.jp/ )に
公式ドキュメントができはじめた	
‒  O REILLYの「Unixバックアップ&リカバリー」
で詳しく解説されている(¥6,600)	
24
5	
私のAmanda導入例
社内の仮想化されたサーバー
•  複数マシンをテープドライブにバックアップ	
•  AmandaサーバーはXenのDom0、バックアップ
対象はDomUなので

物理的に見ると1台で完結

しているように見える	
•  VMイメージごとではなく、

VM内の必要なデータのみ

バックアップ	
•  技術評論社 Software Design

2009/04号に記事を執筆	
26	
バックアップ対象の(仮想)マシン群	
バックアップのイメージ
バックアップサーバー(テープドライブ)	
X e n	
Dom0	
社内	
Web	
サーバ	
VM	
ファイル
サーバ	
VM	
27	
会社の公開用サーバー
•  公開用Webサーバーのコンテンツデータ等
を毎日フルバックアップ	
•  バックアップサーバーを専用に用意したた
め、省電力を重視	
‒  ジョブ開始前に、別の24時間稼働している
サーバーからWOLパケットを投げて起動	
‒  バックアップジョブ実行(メディアはHDD)	
‒  バックアップ完了後は自らシャットダウン	
‒  サーバー稼働時は80W弱で動くように構成	
28	
自宅サーバー
•  社内サーバーと同じXen環境タイプ	
•  2.5インチUSB-HDDにバックアップ	
‒  災害などが起きた場合に持ち出しが可能、、、
という想定(災害が起きた時に自宅にいれば
の話ですけどね!)	
29	
Amandaの導入
6	
Amanda導入の流れ
•  インストール	
•  設定	
‒  サーバー(バックアップ処理を実行するマシン)	
‒  クライアント(バックアップ対象のマシン)	
•  バックアップメディアの用意	
‒  今回はUSB-HDDを例とする	
•  設定確認	
•  バックアップ実行	
31	
想定する環境
•  CentOS 5系もしくは6系を想定	
‒  CentOS 5のAmandaバージョン: 2.5.0	
•  本家ではOLD扱い	
‒  CentOS 6のAmandaバージョン: 2.6.1	
•  最新ではないけれど、本家でも一応stable扱いの
バージョン	
‒  CentOS 5をサーバー、CentOS 6をクライアン
トとしても大丈夫	
32	
サーバーのインストール
•  yumでインストール	
‒  # yum ‒y install amanda-server	
•  xinetdの設定(disable=noに変更)	
‒  /etc/xinetd.d/amanda (Amandaサーバ)	
‒  /etc/xinetd.d/amandaidx (リストア時に使用)	
‒  /etc/xinetd.d/amidxtape (リストア時に使用)	
•  xinetdを再起動	
‒  # service xinetd restart	
33	
クライアントのインストール
•  yumでインストール	
‒  # yum ‒y install amanda-client	
•  xinetdの設定(disable=noに変更)	
‒  /etc/xinetd.d/amanda	
•  xinetdを再起動	
‒  # service xinetd restart	
34	
名前解決の設定
•  Amamdaではホスト名を使用して通信する
ため、DNSやhostsファイルなどで名前解決
できる必要がある	
### /etc/hosts の例 ###
# Dom0
192.168.100.8 orange.office.begi.net orange
# File Server
192.168.100.10 sebone3.office.begi.net sebone3
# Web Server
192.168.100.13 ginjiro.office.begi.net ginjiro
35	
Amanda設定時のやくそく
•  Amandaの各設定ファイルは、amandaユー
ザーで編集する	
‒  # su - amanda	
•  設定を行うのは次の2つ	
‒  /var/lib/amanda/.amandahosts	
‒  /etc/amanda/(バックアップ設定名)/各種設定
ファイル	
36
7	
amandahostsの設定
•  /var/lib/amanda/.amandahostsを編集	
‒  FQDN名とバックアップユーザ名を指定	
•  サーバー側(バックアップ対象ホストを記述)	
•  各クライアント側(サーバーのホストを記述)	
orange.office.begi.net amanda 
# バックアップ用
orange.office.begi.net root 
# リストア用
sebone3.office.begi.net amanda
sebone3.office.begi.net root
ginjiro.office.begi.net amanda
ginjiro.office.begi.net root
orange.office.begi.net amanda
37	
バックアップの設定準備
•  /etc/amanda内は1ディレクトリで1つのバッ
クアッププロジェクトという扱い	
•  DailySet1がサンプルプロジェクト	
‒  このディレクトリをコピーして使うと良い	
‒  ※今回はこのまま利用	
•  DailySet1ディレクトリに移動して、tapelist
ファイルを作成	
‒  $ cd /etc/amanda/DailySet1	
‒  $ touch tapelist; chmod 660 tapelist	
38	
amanda.confの設定(1/8)
•  バックアップに関する基本的な設定を行う	
‒  バックアップのサイクル	
‒  テープドライブのパス	
‒  テープドライブの種類	
‒  保持ディスク	
‒  バックアップ対象ディレクトリの設定	
•  サンプルは設定項目が多いが、

大体はデフォルト設定のままで良い	
39	
amanda.confの設定(2/8)
•  org DailySet1 	
‒  設定名。ディレクトリ名と同じ名前にする。	
•  mailto ginjiro@begi.net 	
‒  通知メールの送信先を指定する。	
•  dumpuser amanda 	
‒  バックアップユーザーを指定。変更しない	
•  netusage 100000Kbps	
‒  バックアップ時の転送速度の指定。誰もいない夜間に

バックアップするので、帯域は適当に大きくとった。	
org DailySet1 
 
 
# your organization name for reports
mailto "ginjiro@begi.net 
# space separated list of operators ..
dumpuser "amanda" 

 
# the user to run dumps under
netusage 100000 Kbps 

# maximum net bandwidth for Amanda, ...	
40	
amanda.confの設定(3/8)
•  月 金にフルバックアップする	
•  dumpcycle 0 weeks	
‒  1サイクルの期間の指定	
•  runspercycle 0 days	
‒  1サイクルあたりにバックアップを実行する回数の指定	
•  tapecycle 5tapes	
‒  1サイクルあたりに使用するテープの本数	
dumpcycle 0 weeks 

# the number of days in the normal ...
runspercycle 0 days # the number of amdump runs in dumpcycle..
tapecycle 5 tapes 

# the number of tapes in rotation...
41	
バックアップサイクル
•  差分バックアップも可能	
‒  フル・差分の間隔はAmandaにお任せになる	
‒  バックアップ量に応じて判断してくれる	
•  1週間を1サイクルとして、1サイクル中5日
バックアップを取る	
•  バックアップメディアは
dumpcycle*runspercycle+1本必要	
dumpcycle 1 weeks 

# the number of days in the normal ...
runspercycle 5 days # the number of amdump runs in dumpcycle..
tapecycle 6 tapes 

# the number of tapes in rotation...
42
8	
amanda.confの設定(4/8)
•  tapehanger: チェンジャーの種類	
‒  chg-manualからchg-diskに書き換える	
•  tapedev: デバイスのパス	
‒  テープデバイスなら/dev/nst0など	
‒  HDDの場合は、バックアップ先のパスを指定	
•  changerfile: コメントアウトを外す	
tpchanger "chg-disk" # the tape-changer glue script
tapedev "file:/amanda/usbdisk" # the no-rewind tape device to be
used
changerfile "/etc/amanda/DailySet1/changer"	
43	
amanda.confの設定(5/8)
•  tapetype: テープドライブの種類	
‒  次のページでドライブの設定を探して

設定ファイルの最後の方に書き加える

http://wiki.zmanda.com/index.php/Tapetype_definitions	
•  labelstr: テープの命名規則	
‒  正規表現が使用可能。	
‒  DailySet1-01, DailySet1-02 ...のようになる。	
•  amrecover_changer: リストア時のチェンジャー	
tapetype HARD-DISK 

 

# what kind of tape it is ...
labelstr ^DailySet1-[0-9][0-9]*$" 
# label constraint regex: ...
amrecover_changer "chg-disk"	
44	
tapetypeの宣言例
•  length : HDDに作成する仮想テープ1本あ
たりの容量	
‒  =1回でバックアップできる容量	
‒  バックアップ用のUSB-HDDの容量を考えて設定する	
define tapetype HARD-DISK {
comment "Dump onto hard disk"
length 2048 mbytes
}	
45	
amanda.confの設定(6/8)
•  保持ディスクの設定	
‒  各クライアントから集めたダンプデータを置く場所	
•  directory	
‒  /amanda/dumpsディレクトリを作成(所有者をamandaユーザーに)	
•  use: 200GBを確保。「-50000 Mb」を指定してもほぼ同じ	
•  chunksize: 2GB以上のファイルを扱えないOSでは2GBに
設定する。そうでなければ大きめにとる。	
holdingdisk hd1 {
comment main holding disk 
 
# コメント
directory /amanda/dumps 
 
# 保持ディスクの場所
use 200000 Mb 

 
 
 
 
# 保持ディスクとして利用できる容量
chunksize 100Gb 
 
 
 
# チャンクサイズ
}	
46	
amanda.confの設定(7/8)
•  infofile	
‒  バックアップのデータベースを格納するディレクトリ。	
‒  特に変更しない。ディレクトリを作成する必要はない。	
•  logdir	
‒  ログを格納するディレクトリ。	
•  indexdir	
‒  インデックスを格納するディレクトリ	
‒  特に変更しない。ディレクトリを作成する必要はない。	
infofile "/etc/amanda/DailySet1/curinfo" 
# database DIRECTORY
logdir "/etc/amanda/DailySet1" 
 

 
# log directory
indexdir "/etc/amanda/DailySet1/index" 
 
# index directory	
47	
amanda.confの設定(8/8)
•  バックアップ方法(dumptype)の設定	
‒  define dumptype global設定のindex yesのコメントアウトを削除す
る(リストア時に必要になる)	
•  グローバル設定の下に、それぞれのバックアップ方法の
設定が記述されている(後述)	
‒  この中にある設定を、disklistファイルで指定する。	
define dumptype global {
comment "Global definitions

(略)

index yes # コメントアウトを外す

(略)
}	
48
9	
disklistの設定
•  バックアップを取る場所の指定	
•  バックアップ方法(dumptype)の指定	
#書式
# <ホスト名> <パス> <dumptype>
# ファイルサーバー
 sebone3.office.begi.net /etc comp-user-tar
 
 
# 設定ファイル
 sebone3.office.begi.net /home comp-user-tar-sebone 
# 共有部分
# 社内WebサーバーのWebデータ部分
 ginjiro.office.begi.net /var/www/html comp-user-tar
# Dom0の各種設定データ
 orange.office.begi.net /etc comp-user-tar	
49	
使用したdumptype(1/2)
•  comp-user-tar	
•  comp-user-tar-sebone (ファイル共有部分用)	
define dumptype comp-user-tar {
user-tar 

 

# user-tarの設定を読み込み
compress client fast 
# クライアント側で高速圧縮をかける
}	
define dumptype comp-user-tar-sebone {
user-tar
compress client fast
exclude ./diskimage 
# LinuxなどのISOイメージを排除している
}	
50	
使用したdumptype(2/2)
•  comp-user-tarで読み込んだ設定	
define dumptype user-tar {
root-tar 

 
 
 
 
 
 
# root-tarの設定を読み込む
comment "user partitions dumped with tar"
priority medium 
 
 
 
 
 
# 優先度は中
}	
define dumptype root-tar {
global
program GNUTAR 
 
 
 
 
 
# GNU TARを使用
comment "root partitions dumped with tar"
compress none 

 
 
 
 
 
# 圧縮しない
index 
 
 
 
 
 
 
 
# ?
# exclude list /etc/amanda/exclude.gtar 
# 除外のサンプルらしい
priority low 
 
 
 
 
 
 
# 優先度は低
}
51	
仮想テープの準備(1/3)
•  /amanda/usbdiskにUSB-HDDをマウント	
‒  /dev/sdXの方法ではパスが変わってしまう可能
性があるため、/dev/disk/by-uuid/***の形で指
定する	
•  仮想テープの作成(ディレクトリを作る)	
‒  /amanda/usbdisk/slot1

:

/amanda/usbdisk/slot5	
‒  所有者はもちろんamandaとする	
52	
# chown amanda:disk /amanda/usbdisk/slot1
仮想テープの準備(2/3)
•  シンボリックリンクを作成	
‒  ln ‒s /amanda/usbdisk/slot1 /amanda/
usbdisk/data	
•  管理ファイルを作成する。	
‒  touch /amanda/usbdisk/info

chown amanda:disk /amanda/usbdisk/info

chmod 660 /amanda/usbdisk/info	
53	
ディレクトリ構造おさらい
/amanda/dumps -> 保持ディスク置き場
/usbdisk -> USB-HDDをここにマウント
/data -> /amanda/usbdisk/slot1のシンボリックリンク
info -> 空のファイル(chmod 660とする)
slot1 -> 空のディレクトリ
slot2 -> 空のディレクトリ
slot3 -> 空のディレクトリ
slot4 -> 空のディレクトリ
slot5 -> 空のディレクトリ
54
10	
仮想テープの準備(3/3)
•  ラベルを書き込む	
‒  $ amlabel ‒f <設定名> <ラベル名> <スロット
番号>	
‒  -fは強制でラベルを設定するという意味	
‒  ラベル番号は1から始まる(0ではない)	
$ amlabel -f DailySet1 DailySet1-01 slot 1
55	
設定の確認
•  amcheckコマンドを実行	
‒  $ /usr/sbin/amcheck DailySet1	
•  エラーが無ければ準備完了	
•  エラーがあったら、設定を見直す	
‒  hosts, .amandahostsの設定	
‒  amanda.confの設定	
‒  ファイヤーウォールが設定されていれば、ポー
ト解放(10080/udp, 10082/tcp, 10083/tcp)	
56	
設定の確認(実行例)
$ amcheck DailySet1
Amanda Tape Server Host Check
-----------------------------
Holding disk /dumps/amanda: 227924984 KB disk space available, that's
plenty
slot 1: read label `DailySet1-01', date `X'
NOTE: skipping tape-writable test
Tape DailySet1-01 label ok
Server check took 0.277 seconds
Amanda Backup Client Hosts Check
--------------------------------
Client check: 3 hosts checked in 0.051 seconds, 0 problems found
(brought to you by Amanda 2.5.0p2)
57	
バックアップの実行
•  amandaユーザーでamdumpコマンドを実行	
‒  $ /usr/sbin/dump DailySet1	
•  バックアップ中のステータスは、amstatusコ
マンドで確認可能	
‒  $ /usr/sbin/amstatus DailySet1	
‒  ダンプの進行状況などが確認できる	
•  バックアップが完了するとメールが送信さ
れる	
58	
バックアップ完了通知メール
These dumps were to tape DailySet1-01.
The next tape Amanda expects to use is: DailySet1-02.
STATISTICS:
Total Full Incr.
-------- -------- --------
Estimate Time (hrs:min) 0:00
Run Time (hrs:min) 1:38
Dump Time (hrs:min) 1:24 1:24 0:00
Output Size (meg) 44362.8 44362.8 0.0
- - - - - - - - - - - - - - - - - ( 略 ) - - - - - - - - - - - - - - - - - - 
DUMPER STATS TAPER STATS 
HOSTNAME DISK L ORIG-KB OUT-KB COMP% MMM:SS KB/s MMM:SS KB/s
-------------------------- ------------------------------------- -------------
ginjiro.offi -r/www/html 0 24420 17696 72.5 0:07 2406.0 0:04 4998.7
orange.offic /etc 0 420 160 38.1 0:00 316.7 0:02 71.9
sebone3.offi /etc 0 104780 14560 13.9 0:11 1305.7 0:05 3125.4
sebone3.offi /home 0 52564872 45395264 86.4 83:23 9073.9 12:28 60690.1
(brought to you by Amanda version 2.5.0p2)
59	
cronにジョブ登録
•  /etc/amanda/crontab.sampleを参照	
•  今回の設定	
‒  月曜日 金曜日の17時にメディアチェック	
•  amcheck ‒mは、エラー時にメールを送信する	
‒  月曜日 金曜日の25時にバックアップ実行	
•  amandaユーザーで「crontab ‒e」コマンドを
実行して、cron設定を記述する	
0 17 * * 1-5 /usr/sbin/amcheck -m DailySet1 
0 1 * * 2-6 /usr/sbin/amdump DailySet1
60
11	
リストア
•  リストアするまでがバックアップです	
‒  == 家に着くまでが遠足です	
•  おおよそ3種類のリストア方法	
‒  Amandaのバックアップデータベースを利用	
•  amrecoverによるリストア	
•  amrestoreによるリストア	
‒  Amandaを利用しないリストア	
•  ddコマンド	
61	
amrecoverによるリストア
•  対話式のリストアツール	
•  バックアップデータベースを利用	
•  ファイル毎のリストアが可能	
•  リストアするデータの日付・パス、展開先を
指定するだけ	
•  リストアに必要なテープを指示通りに入れ
ると自動的にリストアしてくれる	
62	
バックアップデータベースの
バックアップ
•  設定ファイルのディレクトリ下に配置される	
•  データベースが壊れると、amandaのリスト
アコマンドが使えない	
•  データベースのバックアップも重要!	
‒  テープではなく別のサーバーなどにコピーする
ことが推奨されている	
•  テープの場合、最新の1つ前のデータベースが

バックアップされるため	
63	
amrecoverによるリストア
•  データをリストアしたいクライアント上の

rootユーザーでamrecoverコマンドを実行	
‒  -s : バックアップサーバー	
‒  -t : テープドライブのあるサーバー	
•  大体は-sで指定するサーバーと同じ	
‒  -C : 設定名	
# amrecover ‒s orange ‒t orange ‒C DailySet1
64	
amrecoverによるリストア演習
•  社内Webの画像をリストアしてみる	
•  とりあえずrmで削除	
# ls /var/www/html/top.png
top.png
# rm -f /var/www/html/top.png
# ls /var/www/html/top.png
ls: /var/www/html/top.png: そのよ
うなファイルやディレクトリはありません
65	
amrecoverによるリストア演習
•  Webサーバーの端末からamrecoverを実行	
# amrecover -s orange -t orange -C DailySet1
AMRECOVER Version 2.5.0p2. Contacting server on orange ...
220 orange AMANDA index server (2.5.0p2) ready.
200 Access OK
Setting restore date to today (2008-11-12)
200 Working date set to 2008-11-12.
Scanning /dumps/amanda...
200 Config set to DailySet1.
200 Dump host set to ginjiro.office.begi.net.
Trying disk / ...
Trying disk rootfs ...
Can't determine disk and mount point from $CWD '/root'
amrecover> 
66
12	
amrecoverによるリストア演習
•  バックアップされているディスクを確認して

マウントする	
amrecover> listdisk 
 
 
 
← ディスクの確認
200- List of disk for host ginjiro.office.begi.net
201- /var/www/html
200 List of disk for host ginjiro.office.begi.net
amrecover> setdisk /var/www/html 
← マウント
200 Disk set to /var/www/html.
amrecover> ls
 
 
← バックアップ中の/var/www/htmlの一覧を表示
2008-11-12 wiki/
2008-11-12 top.png 
 
← リストアしたいファイル
(略)
2008-11-12 .
amrecover>
67	
amrecoverによるリストア演習
•  対象のファイルをリストア対象に追加する	
•  データのリストア先を指定する	
amrecover> add top.png
Added /top.png
amrecover>
amrecover> lpwd 
 
 
 
← Local側でのpwdコマンドと同等
/root
amrecover> lcd /var/www/html 
← Local側でのcdコマンドと同等
amrecover>
68	
amrecoverによるリストア演習
•  リストアの実行	
amrecover> extract
Extracting files using tape drive null: on host orange.
The following tapes are needed: DailySet1-02
Restoring files into directory /var/www/html
Continue [?/Y/n]? Y 
 
 
← /var/www/htmlに展開して良いですか
Extracting files using tape drive null: on host orange.
Load tape DailySet1-02 now
Continue [?/Y/n/s/t]? Y 
 
← DailySet1-02 をセットしてYを入力
./top.png 
 
 
 
 
← 展開された
amrecover>
69	
amrecoverによるリストア演習
•  リストアの確認	
•  成功!	
amrecover> exit
200 Good bye.
# ls /var/www/html
blog files index.php style.css top.png
enter.gif gewiki    screenshot tmp wiki
#
70	
amrestoreによるリストア
•  ディスク単位のリストアツール	
‒  disklistで指定したバックアップ対象ごと	
•  バックアップデータベースを利用	
•  時間の都合で割愛(同じことは次のddでも
可能と言えば可能)	
‒  過去版 ( http://virtualtech.jp/download/
090130AmandaBackup.pdf ) を参照	
71	
Amandaを利用しないリストア
•  障害などによってバックアップデータベー
スが壊れたときに覚えておくべき方法	
•  Amandaのテープフォーマットはシンプル	
‒  あえてそうなっている	
‒  各イメージの先頭32KBにイメージの情報	
‒  それ以降にイメージが格納されている	
•  mtコマンドとddコマンドでテープから取りだ
しが可能	
72
13	
Amandaを使わないリストア演習
•  テープの中身のイメージ	
•  テープのヘッダを表示	
# mt ‒f /dev/st0 rewind
# dd if=/dev/nst0 bs=32k count=1 
 
←テープ先頭から32KB分読み込む
AMANDA: TAPESTART DATE 20081106 TAPE DailySet1-03
014
1+0 records in
1+0 records out
32768 bytes (33 kB) copied, 0.081231 seconds, 403 kB/s
# dd if=/dev/nst0 bs=32k 
 
 
 
←よくわからないなにかを読み飛ばす
テープの	
ヘッダ(32KB)	
ダミー	
 イメージ1の
ヘッダ(32KB)	
イメージ1	
 イメージ2の
ヘッダ(32KB)	
イメージ2	
 つづく 	
73	
Amandaを使わないリストア演習
•  テープの中身のイメージ	
•  イメージ1のリストア	
# dd if=/dev/nst0 bs=32k count=1 
 
 
← ヘッダの取りだし
AMANDA: FILE 20081106 orange.office.begi.net /etc lev 0 comp .gz
program /bin/tar 
 
 
 
 
 
 
← Dom0の/etcらしい
To restore, position tape at start of file and run:

dd if=<tape> bs=32k skip=1 | /bin/gzip -dc | /bin/tar -f... ‒
(ddの出力結果略)
# dd if=/dev/nst0 of=1106-orange-etc bs=32k 
← イメージ1の取りだし
# tar xf 1106-orange-etc
# ls
1106-orange-etc host.conf quotatab
DIR_COLORS hosts racoon
テープの	
ヘッダ(32KB)	
ダミー	
 イメージ1の
ヘッダ(32KB)	
イメージ1	
 イメージ2の
ヘッダ(32KB)	
イメージ2	
 つづく 	
74	
USB-HDD運用の場合
•  テープの区切りごとにファイルになっている	
•  イメージ1のリストア	
# mkdir /tmp/restore
# cd /tmp/restore
# cp /amanda/usbdisk/slot1/00001.orange.office.begi.net._etc.0 . 
# dd if=00001.orange.office.begi.net._etc.0 bs=32k skip=1 | tar ‒xpf ‒
# ls
00001.orange.office.begi.net._etc.0 host.conf racoon
1106-orange-etc hosts
DIR_COLORS quotatab
75	
まとめ
•  Amandaの使い勝手	
‒  設定は慣れてないと大変(というか面倒?)	
‒  設定の山を越えれば後は簡単	
•  バックアップ重要!!	
‒  データを失う辛さに比べたら

バックアップの面倒さなんてちっぽけなもの	
‒  データを失ってから業者にリカバリを依頼する
と非常に高額なお金が必要になる	
76	
参考文献
•  Unixバックアップ&リカバリ

(オライリージャパン)	
•  amandaを使ってLTOにバックアップ	
‒  http://www.ait.pref.akita.jp/~kurosawa/
backup.html	
•  その他のページは、(個人の)

はてなブックマークにいくつか登録してます	
‒  http://b.hatena.ne.jp/Akkiesoft/バックアップ/	
77	
色々ご案内
•  日本Amandaユーザ会	
‒  Amandaのさらなる活用を探る(?)	
‒  参加はmixiコミュニティへ	
‒  http://mixi.jp/view_community.pl?id=3816284	
•  本日のセミナー資料	
•  http://VirtualTech.jp/ の、公開資料に掲載	
78

More Related Content

What's hot

Yocto Project ハンズオン プレゼン用資料
Yocto Project ハンズオン プレゼン用資料Yocto Project ハンズオン プレゼン用資料
Yocto Project ハンズオン プレゼン用資料Nobuhiro Iwamatsu
 
【配信!Veeam情報局】バックアップ容量の最適化、ストレージ節約や拡張方法を解説!
【配信!Veeam情報局】バックアップ容量の最適化、ストレージ節約や拡張方法を解説!【配信!Veeam情報局】バックアップ容量の最適化、ストレージ節約や拡張方法を解説!
【配信!Veeam情報局】バックアップ容量の最適化、ストレージ節約や拡張方法を解説!株式会社クライム
 
トランザクションの設計と進化
トランザクションの設計と進化トランザクションの設計と進化
トランザクションの設計と進化Kumazaki Hiroki
 
x86とコンテキストスイッチ
x86とコンテキストスイッチx86とコンテキストスイッチ
x86とコンテキストスイッチMasami Ichikawa
 
Docker入門: コンテナ型仮想化技術の仕組みと使い方
Docker入門: コンテナ型仮想化技術の仕組みと使い方Docker入門: コンテナ型仮想化技術の仕組みと使い方
Docker入門: コンテナ型仮想化技術の仕組みと使い方Yuichi Ito
 
MySQL負荷分散の方法
MySQL負荷分散の方法MySQL負荷分散の方法
MySQL負荷分散の方法佐久本正太
 
PrometheusによるKubernetes環境の異常検知改善.pptx
PrometheusによるKubernetes環境の異常検知改善.pptxPrometheusによるKubernetes環境の異常検知改善.pptx
PrometheusによるKubernetes環境の異常検知改善.pptxTakashiTsukamoto4
 
PG-REXで学ぶPacemaker運用の実例
PG-REXで学ぶPacemaker運用の実例PG-REXで学ぶPacemaker運用の実例
PG-REXで学ぶPacemaker運用の実例kazuhcurry
 
Dockerイメージ管理の内部構造
Dockerイメージ管理の内部構造Dockerイメージ管理の内部構造
Dockerイメージ管理の内部構造Etsuji Nakai
 
Dockerfileを改善するためのBest Practice 2019年版
Dockerfileを改善するためのBest Practice 2019年版Dockerfileを改善するためのBest Practice 2019年版
Dockerfileを改善するためのBest Practice 2019年版Masahito Zembutsu
 
分散システムについて語らせてくれ
分散システムについて語らせてくれ分散システムについて語らせてくれ
分散システムについて語らせてくれKumazaki Hiroki
 
initとプロセス再起動
initとプロセス再起動initとプロセス再起動
initとプロセス再起動Takashi Takizawa
 
OpenStack検証環境構築・トラブルシューティング入門 - OpenStack最新情報セミナー 2014年8月
OpenStack検証環境構築・トラブルシューティング入門 - OpenStack最新情報セミナー 2014年8月OpenStack検証環境構築・トラブルシューティング入門 - OpenStack最新情報セミナー 2014年8月
OpenStack検証環境構築・トラブルシューティング入門 - OpenStack最新情報セミナー 2014年8月VirtualTech Japan Inc.
 
Harbor RegistryのReplication機能
Harbor RegistryのReplication機能Harbor RegistryのReplication機能
Harbor RegistryのReplication機能Masanori Nara
 
ブロケード FC ファブリックスイッチオペレーション講座(前編)
ブロケード FC ファブリックスイッチオペレーション講座(前編)ブロケード FC ファブリックスイッチオペレーション講座(前編)
ブロケード FC ファブリックスイッチオペレーション講座(前編)Brocade
 
CRX: Container Runtime Executive 
CRX: Container Runtime Executive CRX: Container Runtime Executive 
CRX: Container Runtime Executive imurata8203
 
TripleOの光と闇
TripleOの光と闇TripleOの光と闇
TripleOの光と闇Manabu Ori
 
アーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーションアーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーションMasahiko Sawada
 

What's hot (20)

レシピの作り方入門
レシピの作り方入門レシピの作り方入門
レシピの作り方入門
 
Yocto Project ハンズオン プレゼン用資料
Yocto Project ハンズオン プレゼン用資料Yocto Project ハンズオン プレゼン用資料
Yocto Project ハンズオン プレゼン用資料
 
【配信!Veeam情報局】バックアップ容量の最適化、ストレージ節約や拡張方法を解説!
【配信!Veeam情報局】バックアップ容量の最適化、ストレージ節約や拡張方法を解説!【配信!Veeam情報局】バックアップ容量の最適化、ストレージ節約や拡張方法を解説!
【配信!Veeam情報局】バックアップ容量の最適化、ストレージ節約や拡張方法を解説!
 
トランザクションの設計と進化
トランザクションの設計と進化トランザクションの設計と進化
トランザクションの設計と進化
 
x86とコンテキストスイッチ
x86とコンテキストスイッチx86とコンテキストスイッチ
x86とコンテキストスイッチ
 
Docker入門: コンテナ型仮想化技術の仕組みと使い方
Docker入門: コンテナ型仮想化技術の仕組みと使い方Docker入門: コンテナ型仮想化技術の仕組みと使い方
Docker入門: コンテナ型仮想化技術の仕組みと使い方
 
MySQL負荷分散の方法
MySQL負荷分散の方法MySQL負荷分散の方法
MySQL負荷分散の方法
 
PrometheusによるKubernetes環境の異常検知改善.pptx
PrometheusによるKubernetes環境の異常検知改善.pptxPrometheusによるKubernetes環境の異常検知改善.pptx
PrometheusによるKubernetes環境の異常検知改善.pptx
 
PG-REXで学ぶPacemaker運用の実例
PG-REXで学ぶPacemaker運用の実例PG-REXで学ぶPacemaker運用の実例
PG-REXで学ぶPacemaker運用の実例
 
Dockerイメージ管理の内部構造
Dockerイメージ管理の内部構造Dockerイメージ管理の内部構造
Dockerイメージ管理の内部構造
 
Ext4 filesystem(1)
Ext4 filesystem(1)Ext4 filesystem(1)
Ext4 filesystem(1)
 
Dockerfileを改善するためのBest Practice 2019年版
Dockerfileを改善するためのBest Practice 2019年版Dockerfileを改善するためのBest Practice 2019年版
Dockerfileを改善するためのBest Practice 2019年版
 
分散システムについて語らせてくれ
分散システムについて語らせてくれ分散システムについて語らせてくれ
分散システムについて語らせてくれ
 
initとプロセス再起動
initとプロセス再起動initとプロセス再起動
initとプロセス再起動
 
OpenStack検証環境構築・トラブルシューティング入門 - OpenStack最新情報セミナー 2014年8月
OpenStack検証環境構築・トラブルシューティング入門 - OpenStack最新情報セミナー 2014年8月OpenStack検証環境構築・トラブルシューティング入門 - OpenStack最新情報セミナー 2014年8月
OpenStack検証環境構築・トラブルシューティング入門 - OpenStack最新情報セミナー 2014年8月
 
Harbor RegistryのReplication機能
Harbor RegistryのReplication機能Harbor RegistryのReplication機能
Harbor RegistryのReplication機能
 
ブロケード FC ファブリックスイッチオペレーション講座(前編)
ブロケード FC ファブリックスイッチオペレーション講座(前編)ブロケード FC ファブリックスイッチオペレーション講座(前編)
ブロケード FC ファブリックスイッチオペレーション講座(前編)
 
CRX: Container Runtime Executive 
CRX: Container Runtime Executive CRX: Container Runtime Executive 
CRX: Container Runtime Executive 
 
TripleOの光と闇
TripleOの光と闇TripleOの光と闇
TripleOの光と闇
 
アーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーションアーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーション
 

Similar to Amandaで始めるかんたんバックアップ

今さら聞けない人のためのDocker超入門 CentOS 7.2対応版
今さら聞けない人のためのDocker超入門 CentOS 7.2対応版今さら聞けない人のためのDocker超入門 CentOS 7.2対応版
今さら聞けない人のためのDocker超入門 CentOS 7.2対応版VirtualTech Japan Inc.
 
分散Key/Valueストア Kai 事例紹介
分散Key/Valueストア Kai事例紹介分散Key/Valueストア Kai事例紹介
分散Key/Valueストア Kai 事例紹介Tomoya Hashimoto
 
Sakura no-yuube-20140327
Sakura no-yuube-20140327Sakura no-yuube-20140327
Sakura no-yuube-20140327Kunihiro TANAKA
 
ホームディレクトリに埋もれた便利なコードをさがせ!
ホームディレクトリに埋もれた便利なコードをさがせ!ホームディレクトリに埋もれた便利なコードをさがせ!
ホームディレクトリに埋もれた便利なコードをさがせ!Yohei Fushii
 
20190926_Try_RHEL8_NVMEoF_Beta
20190926_Try_RHEL8_NVMEoF_Beta20190926_Try_RHEL8_NVMEoF_Beta
20190926_Try_RHEL8_NVMEoF_BetaKohei KaiGai
 
XenServerによるお手軽開発サーバ運用
XenServerによるお手軽開発サーバ運用XenServerによるお手軽開発サーバ運用
XenServerによるお手軽開発サーバ運用Shinya Okano
 
はじめてのSSD,MicroSD,USBメモリ延命方法 in Linux Beginner for Linux long-lifetime in USB...
はじめてのSSD,MicroSD,USBメモリ延命方法 in Linux  Beginner for Linux long-lifetime in USB...はじめてのSSD,MicroSD,USBメモリ延命方法 in Linux  Beginner for Linux long-lifetime in USB...
はじめてのSSD,MicroSD,USBメモリ延命方法 in Linux Beginner for Linux long-lifetime in USB...Netwalker lab kapper
 
今時のDev opsの取り組み事例集
今時のDev opsの取り組み事例集今時のDev opsの取り組み事例集
今時のDev opsの取り組み事例集Wataru NOGUCHI
 
OpenStackでつくる開発環境と外道塾
OpenStackでつくる開発環境と外道塾OpenStackでつくる開発環境と外道塾
OpenStackでつくる開発環境と外道塾外道 父
 
GMOメディア RHEV-S-事例紹介
GMOメディア RHEV-S-事例紹介GMOメディア RHEV-S-事例紹介
GMOメディア RHEV-S-事例紹介Dai Utsui
 
Cloudera impala
Cloudera impalaCloudera impala
Cloudera impala外道 父
 
Eureka go 2015_12_12
Eureka go 2015_12_12Eureka go 2015_12_12
Eureka go 2015_12_12matsuo kenji
 
今さら聞けない人のためのDocker超入門
今さら聞けない人のためのDocker超入門今さら聞けない人のためのDocker超入門
今さら聞けない人のためのDocker超入門Toru Miyahara
 
Dockerの仕組みとIIJ社内での利用例
Dockerの仕組みとIIJ社内での利用例Dockerの仕組みとIIJ社内での利用例
Dockerの仕組みとIIJ社内での利用例maebashi
 
Edge os(vyos)の基本(入門編)
Edge os(vyos)の基本(入門編)Edge os(vyos)の基本(入門編)
Edge os(vyos)の基本(入門編)Akira Kaneda
 
今さら聞けない人のためのDocker超入門 - KOF
今さら聞けない人のためのDocker超入門 - KOF今さら聞けない人のためのDocker超入門 - KOF
今さら聞けない人のためのDocker超入門 - KOFVirtualTech Japan Inc.
 
今最もアツイdistribution Gentoo Linuxについて
今最もアツイdistribution Gentoo Linuxについて今最もアツイdistribution Gentoo Linuxについて
今最もアツイdistribution Gentoo LinuxについてTakuto Matsuu
 

Similar to Amandaで始めるかんたんバックアップ (20)

ドリコムのインフラCI
ドリコムのインフラCIドリコムのインフラCI
ドリコムのインフラCI
 
今さら聞けない人のためのDocker超入門 CentOS 7.2対応版
今さら聞けない人のためのDocker超入門 CentOS 7.2対応版今さら聞けない人のためのDocker超入門 CentOS 7.2対応版
今さら聞けない人のためのDocker超入門 CentOS 7.2対応版
 
分散Key/Valueストア Kai 事例紹介
分散Key/Valueストア Kai事例紹介分散Key/Valueストア Kai事例紹介
分散Key/Valueストア Kai 事例紹介
 
Sakura no-yuube-20140327
Sakura no-yuube-20140327Sakura no-yuube-20140327
Sakura no-yuube-20140327
 
ホームディレクトリに埋もれた便利なコードをさがせ!
ホームディレクトリに埋もれた便利なコードをさがせ!ホームディレクトリに埋もれた便利なコードをさがせ!
ホームディレクトリに埋もれた便利なコードをさがせ!
 
20190926_Try_RHEL8_NVMEoF_Beta
20190926_Try_RHEL8_NVMEoF_Beta20190926_Try_RHEL8_NVMEoF_Beta
20190926_Try_RHEL8_NVMEoF_Beta
 
XenServerによるお手軽開発サーバ運用
XenServerによるお手軽開発サーバ運用XenServerによるお手軽開発サーバ運用
XenServerによるお手軽開発サーバ運用
 
はじめてのSSD,MicroSD,USBメモリ延命方法 in Linux Beginner for Linux long-lifetime in USB...
はじめてのSSD,MicroSD,USBメモリ延命方法 in Linux  Beginner for Linux long-lifetime in USB...はじめてのSSD,MicroSD,USBメモリ延命方法 in Linux  Beginner for Linux long-lifetime in USB...
はじめてのSSD,MicroSD,USBメモリ延命方法 in Linux Beginner for Linux long-lifetime in USB...
 
Let's play with Goldfish
Let's play with GoldfishLet's play with Goldfish
Let's play with Goldfish
 
今時のDev opsの取り組み事例集
今時のDev opsの取り組み事例集今時のDev opsの取り組み事例集
今時のDev opsの取り組み事例集
 
OpenStackでつくる開発環境と外道塾
OpenStackでつくる開発環境と外道塾OpenStackでつくる開発環境と外道塾
OpenStackでつくる開発環境と外道塾
 
GMOメディア RHEV-S-事例紹介
GMOメディア RHEV-S-事例紹介GMOメディア RHEV-S-事例紹介
GMOメディア RHEV-S-事例紹介
 
Cloudera impala
Cloudera impalaCloudera impala
Cloudera impala
 
Eureka go 2015_12_12
Eureka go 2015_12_12Eureka go 2015_12_12
Eureka go 2015_12_12
 
今さら聞けない人のためのDocker超入門
今さら聞けない人のためのDocker超入門今さら聞けない人のためのDocker超入門
今さら聞けない人のためのDocker超入門
 
Dockerの仕組みとIIJ社内での利用例
Dockerの仕組みとIIJ社内での利用例Dockerの仕組みとIIJ社内での利用例
Dockerの仕組みとIIJ社内での利用例
 
Edge os(vyos)の基本(入門編)
Edge os(vyos)の基本(入門編)Edge os(vyos)の基本(入門編)
Edge os(vyos)の基本(入門編)
 
今さら聞けない人のためのDocker超入門 - KOF
今さら聞けない人のためのDocker超入門 - KOF今さら聞けない人のためのDocker超入門 - KOF
今さら聞けない人のためのDocker超入門 - KOF
 
今最もアツイdistribution Gentoo Linuxについて
今最もアツイdistribution Gentoo Linuxについて今最もアツイdistribution Gentoo Linuxについて
今最もアツイdistribution Gentoo Linuxについて
 
今さら聞けない人のためのDocker超入門
今さら聞けない人のためのDocker超入門今さら聞けない人のためのDocker超入門
今さら聞けない人のためのDocker超入門
 

More from VirtualTech Japan Inc.

5G時代のアプリケーションとは 〜 5G+MECを活用した低遅延アプリの実現へ 〜
5G時代のアプリケーションとは 〜 5G+MECを活用した低遅延アプリの実現へ 〜5G時代のアプリケーションとは 〜 5G+MECを活用した低遅延アプリの実現へ 〜
5G時代のアプリケーションとは 〜 5G+MECを活用した低遅延アプリの実現へ 〜VirtualTech Japan Inc.
 
エンジニアが幸せになれる会社を目指します
エンジニアが幸せになれる会社を目指しますエンジニアが幸せになれる会社を目指します
エンジニアが幸せになれる会社を目指しますVirtualTech Japan Inc.
 
今からはじめる! Linuxコマンド入門
今からはじめる! Linuxコマンド入門今からはじめる! Linuxコマンド入門
今からはじめる! Linuxコマンド入門VirtualTech Japan Inc.
 
5G時代のアプリケーション開発とは - 5G+MECを活用した低遅延アプリの実現へ
5G時代のアプリケーション開発とは - 5G+MECを活用した低遅延アプリの実現へ5G時代のアプリケーション開発とは - 5G+MECを活用した低遅延アプリの実現へ
5G時代のアプリケーション開発とは - 5G+MECを活用した低遅延アプリの実現へVirtualTech Japan Inc.
 
Kubernetes雑にまとめてみた 2020年8月版
Kubernetes雑にまとめてみた 2020年8月版Kubernetes雑にまとめてみた 2020年8月版
Kubernetes雑にまとめてみた 2020年8月版VirtualTech Japan Inc.
 
MS Teams + OBS Studio (+ OBS Mac Virtual Camera) でのオンラインセミナーのプロトタイプの構築
MS Teams + OBS Studio (+ OBS Mac Virtual Camera) でのオンラインセミナーのプロトタイプの構築MS Teams + OBS Studio (+ OBS Mac Virtual Camera) でのオンラインセミナーのプロトタイプの構築
MS Teams + OBS Studio (+ OBS Mac Virtual Camera) でのオンラインセミナーのプロトタイプの構築VirtualTech Japan Inc.
 
5G時代のアプリケーション開発とは
5G時代のアプリケーション開発とは5G時代のアプリケーション開発とは
5G時代のアプリケーション開発とはVirtualTech Japan Inc.
 
hbstudy#88 5G+MEC時代のシステム設計
hbstudy#88 5G+MEC時代のシステム設計hbstudy#88 5G+MEC時代のシステム設計
hbstudy#88 5G+MEC時代のシステム設計VirtualTech Japan Inc.
 
通信への課題発掘ワークショップ 「5Gイノベーション」の取り組み
通信への課題発掘ワークショップ 「5Gイノベーション」の取り組み通信への課題発掘ワークショップ 「5Gイノベーション」の取り組み
通信への課題発掘ワークショップ 「5Gイノベーション」の取り組みVirtualTech Japan Inc.
 
Kubernetes雑にまとめてみた 2019年12月版
Kubernetes雑にまとめてみた 2019年12月版Kubernetes雑にまとめてみた 2019年12月版
Kubernetes雑にまとめてみた 2019年12月版VirtualTech Japan Inc.
 
OpenStackを使用したGPU仮想化IaaS環境 事例紹介
OpenStackを使用したGPU仮想化IaaS環境 事例紹介OpenStackを使用したGPU仮想化IaaS環境 事例紹介
OpenStackを使用したGPU仮想化IaaS環境 事例紹介VirtualTech Japan Inc.
 
5Gにまつわる3つの誤解 - 5G×ライブコンテンツ:5G時代の双方向コンテンツとは
5Gにまつわる3つの誤解 - 5G×ライブコンテンツ:5G時代の双方向コンテンツとは5Gにまつわる3つの誤解 - 5G×ライブコンテンツ:5G時代の双方向コンテンツとは
5Gにまつわる3つの誤解 - 5G×ライブコンテンツ:5G時代の双方向コンテンツとはVirtualTech Japan Inc.
 
KubeCon China & MWC Shangai 出張報告
KubeCon China & MWC Shangai 出張報告KubeCon China & MWC Shangai 出張報告
KubeCon China & MWC Shangai 出張報告VirtualTech Japan Inc.
 
NTT Docomo's Challenge looking ahead the world pf 5G × OpenStack - OpenStack最...
NTT Docomo's Challenge looking ahead the world pf 5G × OpenStack - OpenStack最...NTT Docomo's Challenge looking ahead the world pf 5G × OpenStack - OpenStack最...
NTT Docomo's Challenge looking ahead the world pf 5G × OpenStack - OpenStack最...VirtualTech Japan Inc.
 
Introduction of private cloud in LINE - OpenStack最新情報セミナー(2019年2月)
Introduction of private cloud in LINE - OpenStack最新情報セミナー(2019年2月)Introduction of private cloud in LINE - OpenStack最新情報セミナー(2019年2月)
Introduction of private cloud in LINE - OpenStack最新情報セミナー(2019年2月)VirtualTech Japan Inc.
 
Multi-access Edge Computing(MEC)における”Edge”の定義
Multi-access Edge Computing(MEC)における”Edge”の定義Multi-access Edge Computing(MEC)における”Edge”の定義
Multi-access Edge Computing(MEC)における”Edge”の定義VirtualTech Japan Inc.
 
Edge Computing Architecture using GPUs and Kubernetes
Edge Computing Architecture using GPUs and KubernetesEdge Computing Architecture using GPUs and Kubernetes
Edge Computing Architecture using GPUs and KubernetesVirtualTech Japan Inc.
 

More from VirtualTech Japan Inc. (20)

5G時代のアプリケーションとは 〜 5G+MECを活用した低遅延アプリの実現へ 〜
5G時代のアプリケーションとは 〜 5G+MECを活用した低遅延アプリの実現へ 〜5G時代のアプリケーションとは 〜 5G+MECを活用した低遅延アプリの実現へ 〜
5G時代のアプリケーションとは 〜 5G+MECを活用した低遅延アプリの実現へ 〜
 
エンジニアが幸せになれる会社を目指します
エンジニアが幸せになれる会社を目指しますエンジニアが幸せになれる会社を目指します
エンジニアが幸せになれる会社を目指します
 
KubeVirt 201 How to Using the GPU
KubeVirt 201 How to Using the GPUKubeVirt 201 How to Using the GPU
KubeVirt 201 How to Using the GPU
 
KubeVirt 101
KubeVirt 101KubeVirt 101
KubeVirt 101
 
今からはじめる! Linuxコマンド入門
今からはじめる! Linuxコマンド入門今からはじめる! Linuxコマンド入門
今からはじめる! Linuxコマンド入門
 
5G時代のアプリケーション開発とは - 5G+MECを活用した低遅延アプリの実現へ
5G時代のアプリケーション開発とは - 5G+MECを活用した低遅延アプリの実現へ5G時代のアプリケーション開発とは - 5G+MECを活用した低遅延アプリの実現へ
5G時代のアプリケーション開発とは - 5G+MECを活用した低遅延アプリの実現へ
 
Kubernetes雑にまとめてみた 2020年8月版
Kubernetes雑にまとめてみた 2020年8月版Kubernetes雑にまとめてみた 2020年8月版
Kubernetes雑にまとめてみた 2020年8月版
 
MS Teams + OBS Studio (+ OBS Mac Virtual Camera) でのオンラインセミナーのプロトタイプの構築
MS Teams + OBS Studio (+ OBS Mac Virtual Camera) でのオンラインセミナーのプロトタイプの構築MS Teams + OBS Studio (+ OBS Mac Virtual Camera) でのオンラインセミナーのプロトタイプの構築
MS Teams + OBS Studio (+ OBS Mac Virtual Camera) でのオンラインセミナーのプロトタイプの構築
 
5G時代のアプリケーション開発とは
5G時代のアプリケーション開発とは5G時代のアプリケーション開発とは
5G時代のアプリケーション開発とは
 
hbstudy#88 5G+MEC時代のシステム設計
hbstudy#88 5G+MEC時代のシステム設計hbstudy#88 5G+MEC時代のシステム設計
hbstudy#88 5G+MEC時代のシステム設計
 
通信への課題発掘ワークショップ 「5Gイノベーション」の取り組み
通信への課題発掘ワークショップ 「5Gイノベーション」の取り組み通信への課題発掘ワークショップ 「5Gイノベーション」の取り組み
通信への課題発掘ワークショップ 「5Gイノベーション」の取り組み
 
Kubernetes雑にまとめてみた 2019年12月版
Kubernetes雑にまとめてみた 2019年12月版Kubernetes雑にまとめてみた 2019年12月版
Kubernetes雑にまとめてみた 2019年12月版
 
OpenStackを使用したGPU仮想化IaaS環境 事例紹介
OpenStackを使用したGPU仮想化IaaS環境 事例紹介OpenStackを使用したGPU仮想化IaaS環境 事例紹介
OpenStackを使用したGPU仮想化IaaS環境 事例紹介
 
Docker超入門
Docker超入門Docker超入門
Docker超入門
 
5Gにまつわる3つの誤解 - 5G×ライブコンテンツ:5G時代の双方向コンテンツとは
5Gにまつわる3つの誤解 - 5G×ライブコンテンツ:5G時代の双方向コンテンツとは5Gにまつわる3つの誤解 - 5G×ライブコンテンツ:5G時代の双方向コンテンツとは
5Gにまつわる3つの誤解 - 5G×ライブコンテンツ:5G時代の双方向コンテンツとは
 
KubeCon China & MWC Shangai 出張報告
KubeCon China & MWC Shangai 出張報告KubeCon China & MWC Shangai 出張報告
KubeCon China & MWC Shangai 出張報告
 
NTT Docomo's Challenge looking ahead the world pf 5G × OpenStack - OpenStack最...
NTT Docomo's Challenge looking ahead the world pf 5G × OpenStack - OpenStack最...NTT Docomo's Challenge looking ahead the world pf 5G × OpenStack - OpenStack最...
NTT Docomo's Challenge looking ahead the world pf 5G × OpenStack - OpenStack最...
 
Introduction of private cloud in LINE - OpenStack最新情報セミナー(2019年2月)
Introduction of private cloud in LINE - OpenStack最新情報セミナー(2019年2月)Introduction of private cloud in LINE - OpenStack最新情報セミナー(2019年2月)
Introduction of private cloud in LINE - OpenStack最新情報セミナー(2019年2月)
 
Multi-access Edge Computing(MEC)における”Edge”の定義
Multi-access Edge Computing(MEC)における”Edge”の定義Multi-access Edge Computing(MEC)における”Edge”の定義
Multi-access Edge Computing(MEC)における”Edge”の定義
 
Edge Computing Architecture using GPUs and Kubernetes
Edge Computing Architecture using GPUs and KubernetesEdge Computing Architecture using GPUs and Kubernetes
Edge Computing Architecture using GPUs and Kubernetes
 

Recently uploaded

【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 

Recently uploaded (8)

【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 

Amandaで始めるかんたんバックアップ

  • 1. 1 Amandaで始める
 かんたんバックアップ 日本仮想化技術株式会社 大内 明 自己紹介 •  大内明(おおうち あきら) •  1988年生まれ/23歳 •  根室うまれ、根室そだち •  日本仮想化技術株式会社 技術部 ‒  5年目 ‒  VMwareとかXen/KVM方面担当 •  サーバーいじり大好き 2 日本仮想化技術株式会社 概要 •  社名:日本仮想化技術株式会社 ‒  英語名:VirtualTech Japan Inc. ‒  略称:日本仮想化技術/VTJ •  設立:2006年12月 •  資本金:14,250,000円 •  本社:東京都渋谷区渋谷1-1-10 •  取締役:宮原 徹(代表取締役社長兼CEO) •  伊藤 宏通(取締役CTO) •  スタッフ:9名(うち、6名が仮想化技術専門エンジニアです) •  URL:http://VirtualTech.jp/ •  仮想化技術に関する研究および開発・構築 ‒  仮想化技術に関する各種調査 ‒  仮想化技術に関連したソフトウェア、サービスの開発 ‒  仮想化技術を導入したシステムの構築 ベンダーニュートラルな 独立系仮想化技術 専業会社 3 導入 仮想化専門コンサルティングサービス 設計 •  設計 ‒  サーバ、ストレージからネットワークまでアプリ ケーションまで考慮した仮想化環境設計 ‒  キャパシティプランニング(ベンチマーク) •  導入 ‒  ハードウェアおよびソフトウェアの導入 ‒  仮想化統合(P2Vレガシーマイグレーション) •  運用保守 ‒  エンジニア教育 ‒  技術サポートの提供 運用保守 ベンダーニュートラルなワンストップ・サービスをご提供 4 仮想化について相談したい
 •  既存環境を仮想化移行する概要設計 •  他社提案に対する「セカンドオピニオン」 無料コンサルティング実施中 お気軽にお問い合わせください 5 お問い合わせ先 「仮想化環境を構築したいが、どこに相談すればいいの?」 まずは我々にご相談ください http://VirtualTech.jp/ sales@VirtualTech.jp 050-7571-0584 6
  • 2. 2 本日の内容 •  バックアップとは •  Amandaの紹介 •  私のAmandaの導入例 •  Amandaの導入 •  Amandaバックアップのリストア 仮想化分ちょっと薄めです 7 バックアップとは バックアップとは •  定期的にデータを作成・保管して、
 トラブル発生時にすぐ復旧できるよう
 備えること ‒  操作ミスによるデータの損失 ‒  HDDの劣化による破損 ‒  地震や火災などの災害による物理破損 ‒  プログラムやハードウェアのファームウェア不 具合による論理破損 9 バックアップしてますか!? 10 質問 バックアップしていないと
 どうなるのか •  データを失う •  諦めても良いデータ ‒  手持ちのCDから取り込んだ音楽データとか ‒  あきらめる •  諦められないデータ ‒  個人なら思い出の写真・ビデオとか、会社なら 業務データ ‒  リカバリー業者に頼む(超高価) 11 バックアップを取るには •  次の4点を決めておく 1.  バックアップの対象データ 2.  バックアップメディア 3.  バックアップソフト選び 4.  バックアップの取り方とサイクル 12
  • 3. 3 対象データ •  どんなものをバックアップするか ‒  文書や画像など普通のデータ ‒  OS全体や仮想マシンのイメージ丸ごと •  サイズとファイル数 ‒  必要に応じてバックアップメディアを選択 •  ファイルの更新量(サイクルに影響) ‒  更新頻度が高いDBデータ→毎日 ‒  あまり更新されないHTMLファイル・画像
 →週に1回など 13 バックアップメディア •  ハードディスク(超安価) ‒  2TBが5000円台、3TBが9000円台 •  CD/DVD(安価) ‒  HDDが安すぎて微妙な雰囲気に •  USBメモリ, SSD(比較的安価) ‒  書き換え寿命とか心配、かも •  テープ(高価) ‒  DDS: 容量少なめ・遅い ‒  Ultrium: 大容量・高速 14 (参考)バックアップメディア 09 •  2009年1月時点のハードディスク相場 ‒  1TBが7000円台、1.5TBが1万円台 •  現在 ‒  2TBが5000円台、3TBが9000円台 •  たった2年半で、容量が倍のHDDが同じ値 段(もしくはそれ以下)で買えるように 
 (;`ω´)!? 15 バックアップソフトウェア •  Windows: 標準のバックアップ ‒  Windows7では簡単・お手軽になった。自宅で愛用 •  Mac: Time Machine ‒  会社で使用中。同じく簡単・お手軽 •  Linux: tar(?), rsync, Amanda, Bacula, 
 Deja Dup •  VMware: VMware Data Recovery •  Acronis True Image, NetVault等の市販製品 •  単純に手動(もしくはバッチファイル)でファイ ルコピー 16 バックアップの取り方 •  フルバックアップ
 毎回すべてのデータをバックアップ •  差分バックアップ
 最後のフルバックアップ以降に変更さ
    れたデータをバックアップ •  増分バックアップ
 前回のバックアップ以降に変更された
    データをバックアップ 17 バックアップのサイクル •  サイクル ‒  毎日フルバックアップ ‒  週1回フルバックアップ+差分バックアップ ‒  週1回フルバックアップ+増分バックアップ フルバックアップ 差分バックアップ 増分バックアップ 1回のバックアッ プ時間 長い 短い 短い リストアの手間
 (テープ入れ替え とか) 少ない 普通 多い 18
  • 4. 4 Amandaについて Amandaとは •  メリーランド大学で開発されたパブリックド メインのバックアップユーティリティ ‒  The Advanced Maryland Automatic
 Network Disk Archiver の略 •  Unix/Mac OS X/Linux/Windowsで利用
 可能 •  2011年8月現在の最新版は3.3.0 •  http://www.amanda.org/ 20 Amandaの特徴 •  複数マシンのデータを1台のバックアップド ライブでバックアップすることが可能 ‒  クライアントソフトがネットワーク経由で転送 ‒  1台のみでの利用も、もちろん可能              バックアップ             対象のマシン バックアップ サーバー 21 Amandaの特徴 •  テープバックアップに最適化 ‒  テープチェンジャー対応 ‒  HDDなどにもバックアップ可能 •  保持ディスク(holding disk)機能 ‒  ネットワーク経由で転送されたデータを一時的 に格納 ‒  バックアップ先メディアに問題があって書き込 みできなかった場合はここに保持する 22 Amandaの特徴 •  バックアップレベルを自動的に調整 ‒  データ変更量に応じてフルバックアップ・差分 バックアップを使い分ける ‒  フルバックアップ固定に設定することも可能 23 Amanda利用のデメリット •  インターネット上では日本語資料が少なめ ‒  商用版を扱うZmanda( http://zmanda.jp/ )に 公式ドキュメントができはじめた ‒  O REILLYの「Unixバックアップ&リカバリー」 で詳しく解説されている(¥6,600) 24
  • 5. 5 私のAmanda導入例 社内の仮想化されたサーバー •  複数マシンをテープドライブにバックアップ •  AmandaサーバーはXenのDom0、バックアップ 対象はDomUなので
 物理的に見ると1台で完結
 しているように見える •  VMイメージごとではなく、
 VM内の必要なデータのみ
 バックアップ •  技術評論社 Software Design
 2009/04号に記事を執筆 26 バックアップ対象の(仮想)マシン群 バックアップのイメージ バックアップサーバー(テープドライブ) X e n Dom0 社内 Web サーバ VM ファイル サーバ VM 27 会社の公開用サーバー •  公開用Webサーバーのコンテンツデータ等 を毎日フルバックアップ •  バックアップサーバーを専用に用意したた め、省電力を重視 ‒  ジョブ開始前に、別の24時間稼働している サーバーからWOLパケットを投げて起動 ‒  バックアップジョブ実行(メディアはHDD) ‒  バックアップ完了後は自らシャットダウン ‒  サーバー稼働時は80W弱で動くように構成 28 自宅サーバー •  社内サーバーと同じXen環境タイプ •  2.5インチUSB-HDDにバックアップ ‒  災害などが起きた場合に持ち出しが可能、、、 という想定(災害が起きた時に自宅にいれば の話ですけどね!) 29 Amandaの導入
  • 6. 6 Amanda導入の流れ •  インストール •  設定 ‒  サーバー(バックアップ処理を実行するマシン) ‒  クライアント(バックアップ対象のマシン) •  バックアップメディアの用意 ‒  今回はUSB-HDDを例とする •  設定確認 •  バックアップ実行 31 想定する環境 •  CentOS 5系もしくは6系を想定 ‒  CentOS 5のAmandaバージョン: 2.5.0 •  本家ではOLD扱い ‒  CentOS 6のAmandaバージョン: 2.6.1 •  最新ではないけれど、本家でも一応stable扱いの バージョン ‒  CentOS 5をサーバー、CentOS 6をクライアン トとしても大丈夫 32 サーバーのインストール •  yumでインストール ‒  # yum ‒y install amanda-server •  xinetdの設定(disable=noに変更) ‒  /etc/xinetd.d/amanda (Amandaサーバ) ‒  /etc/xinetd.d/amandaidx (リストア時に使用) ‒  /etc/xinetd.d/amidxtape (リストア時に使用) •  xinetdを再起動 ‒  # service xinetd restart 33 クライアントのインストール •  yumでインストール ‒  # yum ‒y install amanda-client •  xinetdの設定(disable=noに変更) ‒  /etc/xinetd.d/amanda •  xinetdを再起動 ‒  # service xinetd restart 34 名前解決の設定 •  Amamdaではホスト名を使用して通信する ため、DNSやhostsファイルなどで名前解決 できる必要がある ### /etc/hosts の例 ### # Dom0 192.168.100.8 orange.office.begi.net orange # File Server 192.168.100.10 sebone3.office.begi.net sebone3 # Web Server 192.168.100.13 ginjiro.office.begi.net ginjiro 35 Amanda設定時のやくそく •  Amandaの各設定ファイルは、amandaユー ザーで編集する ‒  # su - amanda •  設定を行うのは次の2つ ‒  /var/lib/amanda/.amandahosts ‒  /etc/amanda/(バックアップ設定名)/各種設定 ファイル 36
  • 7. 7 amandahostsの設定 •  /var/lib/amanda/.amandahostsを編集 ‒  FQDN名とバックアップユーザ名を指定 •  サーバー側(バックアップ対象ホストを記述) •  各クライアント側(サーバーのホストを記述) orange.office.begi.net amanda # バックアップ用 orange.office.begi.net root # リストア用 sebone3.office.begi.net amanda sebone3.office.begi.net root ginjiro.office.begi.net amanda ginjiro.office.begi.net root orange.office.begi.net amanda 37 バックアップの設定準備 •  /etc/amanda内は1ディレクトリで1つのバッ クアッププロジェクトという扱い •  DailySet1がサンプルプロジェクト ‒  このディレクトリをコピーして使うと良い ‒  ※今回はこのまま利用 •  DailySet1ディレクトリに移動して、tapelist ファイルを作成 ‒  $ cd /etc/amanda/DailySet1 ‒  $ touch tapelist; chmod 660 tapelist 38 amanda.confの設定(1/8) •  バックアップに関する基本的な設定を行う ‒  バックアップのサイクル ‒  テープドライブのパス ‒  テープドライブの種類 ‒  保持ディスク ‒  バックアップ対象ディレクトリの設定 •  サンプルは設定項目が多いが、
 大体はデフォルト設定のままで良い 39 amanda.confの設定(2/8) •  org DailySet1 ‒  設定名。ディレクトリ名と同じ名前にする。 •  mailto ginjiro@begi.net ‒  通知メールの送信先を指定する。 •  dumpuser amanda ‒  バックアップユーザーを指定。変更しない •  netusage 100000Kbps ‒  バックアップ時の転送速度の指定。誰もいない夜間に
 バックアップするので、帯域は適当に大きくとった。 org DailySet1 # your organization name for reports mailto "ginjiro@begi.net # space separated list of operators .. dumpuser "amanda" # the user to run dumps under netusage 100000 Kbps # maximum net bandwidth for Amanda, ... 40 amanda.confの設定(3/8) •  月 金にフルバックアップする •  dumpcycle 0 weeks ‒  1サイクルの期間の指定 •  runspercycle 0 days ‒  1サイクルあたりにバックアップを実行する回数の指定 •  tapecycle 5tapes ‒  1サイクルあたりに使用するテープの本数 dumpcycle 0 weeks # the number of days in the normal ... runspercycle 0 days # the number of amdump runs in dumpcycle.. tapecycle 5 tapes # the number of tapes in rotation... 41 バックアップサイクル •  差分バックアップも可能 ‒  フル・差分の間隔はAmandaにお任せになる ‒  バックアップ量に応じて判断してくれる •  1週間を1サイクルとして、1サイクル中5日 バックアップを取る •  バックアップメディアは dumpcycle*runspercycle+1本必要 dumpcycle 1 weeks # the number of days in the normal ... runspercycle 5 days # the number of amdump runs in dumpcycle.. tapecycle 6 tapes # the number of tapes in rotation... 42
  • 8. 8 amanda.confの設定(4/8) •  tapehanger: チェンジャーの種類 ‒  chg-manualからchg-diskに書き換える •  tapedev: デバイスのパス ‒  テープデバイスなら/dev/nst0など ‒  HDDの場合は、バックアップ先のパスを指定 •  changerfile: コメントアウトを外す tpchanger "chg-disk" # the tape-changer glue script tapedev "file:/amanda/usbdisk" # the no-rewind tape device to be used changerfile "/etc/amanda/DailySet1/changer" 43 amanda.confの設定(5/8) •  tapetype: テープドライブの種類 ‒  次のページでドライブの設定を探して
 設定ファイルの最後の方に書き加える
 http://wiki.zmanda.com/index.php/Tapetype_definitions •  labelstr: テープの命名規則 ‒  正規表現が使用可能。 ‒  DailySet1-01, DailySet1-02 ...のようになる。 •  amrecover_changer: リストア時のチェンジャー tapetype HARD-DISK # what kind of tape it is ... labelstr ^DailySet1-[0-9][0-9]*$" # label constraint regex: ... amrecover_changer "chg-disk" 44 tapetypeの宣言例 •  length : HDDに作成する仮想テープ1本あ たりの容量 ‒  =1回でバックアップできる容量 ‒  バックアップ用のUSB-HDDの容量を考えて設定する define tapetype HARD-DISK { comment "Dump onto hard disk" length 2048 mbytes } 45 amanda.confの設定(6/8) •  保持ディスクの設定 ‒  各クライアントから集めたダンプデータを置く場所 •  directory ‒  /amanda/dumpsディレクトリを作成(所有者をamandaユーザーに) •  use: 200GBを確保。「-50000 Mb」を指定してもほぼ同じ •  chunksize: 2GB以上のファイルを扱えないOSでは2GBに 設定する。そうでなければ大きめにとる。 holdingdisk hd1 { comment main holding disk # コメント directory /amanda/dumps # 保持ディスクの場所 use 200000 Mb # 保持ディスクとして利用できる容量 chunksize 100Gb # チャンクサイズ } 46 amanda.confの設定(7/8) •  infofile ‒  バックアップのデータベースを格納するディレクトリ。 ‒  特に変更しない。ディレクトリを作成する必要はない。 •  logdir ‒  ログを格納するディレクトリ。 •  indexdir ‒  インデックスを格納するディレクトリ ‒  特に変更しない。ディレクトリを作成する必要はない。 infofile "/etc/amanda/DailySet1/curinfo" # database DIRECTORY logdir "/etc/amanda/DailySet1" # log directory indexdir "/etc/amanda/DailySet1/index" # index directory 47 amanda.confの設定(8/8) •  バックアップ方法(dumptype)の設定 ‒  define dumptype global設定のindex yesのコメントアウトを削除す る(リストア時に必要になる) •  グローバル設定の下に、それぞれのバックアップ方法の 設定が記述されている(後述) ‒  この中にある設定を、disklistファイルで指定する。 define dumptype global { comment "Global definitions (略) index yes # コメントアウトを外す (略) } 48
  • 9. 9 disklistの設定 •  バックアップを取る場所の指定 •  バックアップ方法(dumptype)の指定 #書式 # <ホスト名> <パス> <dumptype> # ファイルサーバー  sebone3.office.begi.net /etc comp-user-tar # 設定ファイル  sebone3.office.begi.net /home comp-user-tar-sebone # 共有部分 # 社内WebサーバーのWebデータ部分  ginjiro.office.begi.net /var/www/html comp-user-tar # Dom0の各種設定データ  orange.office.begi.net /etc comp-user-tar 49 使用したdumptype(1/2) •  comp-user-tar •  comp-user-tar-sebone (ファイル共有部分用) define dumptype comp-user-tar { user-tar # user-tarの設定を読み込み compress client fast # クライアント側で高速圧縮をかける } define dumptype comp-user-tar-sebone { user-tar compress client fast exclude ./diskimage # LinuxなどのISOイメージを排除している } 50 使用したdumptype(2/2) •  comp-user-tarで読み込んだ設定 define dumptype user-tar { root-tar # root-tarの設定を読み込む comment "user partitions dumped with tar" priority medium # 優先度は中 } define dumptype root-tar { global program GNUTAR # GNU TARを使用 comment "root partitions dumped with tar" compress none # 圧縮しない index # ? # exclude list /etc/amanda/exclude.gtar # 除外のサンプルらしい priority low # 優先度は低 } 51 仮想テープの準備(1/3) •  /amanda/usbdiskにUSB-HDDをマウント ‒  /dev/sdXの方法ではパスが変わってしまう可能 性があるため、/dev/disk/by-uuid/***の形で指 定する •  仮想テープの作成(ディレクトリを作る) ‒  /amanda/usbdisk/slot1
 :
 /amanda/usbdisk/slot5 ‒  所有者はもちろんamandaとする 52 # chown amanda:disk /amanda/usbdisk/slot1 仮想テープの準備(2/3) •  シンボリックリンクを作成 ‒  ln ‒s /amanda/usbdisk/slot1 /amanda/ usbdisk/data •  管理ファイルを作成する。 ‒  touch /amanda/usbdisk/info
 chown amanda:disk /amanda/usbdisk/info
 chmod 660 /amanda/usbdisk/info 53 ディレクトリ構造おさらい /amanda/dumps -> 保持ディスク置き場 /usbdisk -> USB-HDDをここにマウント /data -> /amanda/usbdisk/slot1のシンボリックリンク info -> 空のファイル(chmod 660とする) slot1 -> 空のディレクトリ slot2 -> 空のディレクトリ slot3 -> 空のディレクトリ slot4 -> 空のディレクトリ slot5 -> 空のディレクトリ 54
  • 10. 10 仮想テープの準備(3/3) •  ラベルを書き込む ‒  $ amlabel ‒f <設定名> <ラベル名> <スロット 番号> ‒  -fは強制でラベルを設定するという意味 ‒  ラベル番号は1から始まる(0ではない) $ amlabel -f DailySet1 DailySet1-01 slot 1 55 設定の確認 •  amcheckコマンドを実行 ‒  $ /usr/sbin/amcheck DailySet1 •  エラーが無ければ準備完了 •  エラーがあったら、設定を見直す ‒  hosts, .amandahostsの設定 ‒  amanda.confの設定 ‒  ファイヤーウォールが設定されていれば、ポー ト解放(10080/udp, 10082/tcp, 10083/tcp) 56 設定の確認(実行例) $ amcheck DailySet1 Amanda Tape Server Host Check ----------------------------- Holding disk /dumps/amanda: 227924984 KB disk space available, that's plenty slot 1: read label `DailySet1-01', date `X' NOTE: skipping tape-writable test Tape DailySet1-01 label ok Server check took 0.277 seconds Amanda Backup Client Hosts Check -------------------------------- Client check: 3 hosts checked in 0.051 seconds, 0 problems found (brought to you by Amanda 2.5.0p2) 57 バックアップの実行 •  amandaユーザーでamdumpコマンドを実行 ‒  $ /usr/sbin/dump DailySet1 •  バックアップ中のステータスは、amstatusコ マンドで確認可能 ‒  $ /usr/sbin/amstatus DailySet1 ‒  ダンプの進行状況などが確認できる •  バックアップが完了するとメールが送信さ れる 58 バックアップ完了通知メール These dumps were to tape DailySet1-01. The next tape Amanda expects to use is: DailySet1-02. STATISTICS: Total Full Incr. -------- -------- -------- Estimate Time (hrs:min) 0:00 Run Time (hrs:min) 1:38 Dump Time (hrs:min) 1:24 1:24 0:00 Output Size (meg) 44362.8 44362.8 0.0 - - - - - - - - - - - - - - - - - ( 略 ) - - - - - - - - - - - - - - - - - - DUMPER STATS TAPER STATS HOSTNAME DISK L ORIG-KB OUT-KB COMP% MMM:SS KB/s MMM:SS KB/s -------------------------- ------------------------------------- ------------- ginjiro.offi -r/www/html 0 24420 17696 72.5 0:07 2406.0 0:04 4998.7 orange.offic /etc 0 420 160 38.1 0:00 316.7 0:02 71.9 sebone3.offi /etc 0 104780 14560 13.9 0:11 1305.7 0:05 3125.4 sebone3.offi /home 0 52564872 45395264 86.4 83:23 9073.9 12:28 60690.1 (brought to you by Amanda version 2.5.0p2) 59 cronにジョブ登録 •  /etc/amanda/crontab.sampleを参照 •  今回の設定 ‒  月曜日 金曜日の17時にメディアチェック •  amcheck ‒mは、エラー時にメールを送信する ‒  月曜日 金曜日の25時にバックアップ実行 •  amandaユーザーで「crontab ‒e」コマンドを 実行して、cron設定を記述する 0 17 * * 1-5 /usr/sbin/amcheck -m DailySet1 0 1 * * 2-6 /usr/sbin/amdump DailySet1 60
  • 11. 11 リストア •  リストアするまでがバックアップです ‒  == 家に着くまでが遠足です •  おおよそ3種類のリストア方法 ‒  Amandaのバックアップデータベースを利用 •  amrecoverによるリストア •  amrestoreによるリストア ‒  Amandaを利用しないリストア •  ddコマンド 61 amrecoverによるリストア •  対話式のリストアツール •  バックアップデータベースを利用 •  ファイル毎のリストアが可能 •  リストアするデータの日付・パス、展開先を 指定するだけ •  リストアに必要なテープを指示通りに入れ ると自動的にリストアしてくれる 62 バックアップデータベースの バックアップ •  設定ファイルのディレクトリ下に配置される •  データベースが壊れると、amandaのリスト アコマンドが使えない •  データベースのバックアップも重要! ‒  テープではなく別のサーバーなどにコピーする ことが推奨されている •  テープの場合、最新の1つ前のデータベースが
 バックアップされるため 63 amrecoverによるリストア •  データをリストアしたいクライアント上の
 rootユーザーでamrecoverコマンドを実行 ‒  -s : バックアップサーバー ‒  -t : テープドライブのあるサーバー •  大体は-sで指定するサーバーと同じ ‒  -C : 設定名 # amrecover ‒s orange ‒t orange ‒C DailySet1 64 amrecoverによるリストア演習 •  社内Webの画像をリストアしてみる •  とりあえずrmで削除 # ls /var/www/html/top.png top.png # rm -f /var/www/html/top.png # ls /var/www/html/top.png ls: /var/www/html/top.png: そのよ うなファイルやディレクトリはありません 65 amrecoverによるリストア演習 •  Webサーバーの端末からamrecoverを実行 # amrecover -s orange -t orange -C DailySet1 AMRECOVER Version 2.5.0p2. Contacting server on orange ... 220 orange AMANDA index server (2.5.0p2) ready. 200 Access OK Setting restore date to today (2008-11-12) 200 Working date set to 2008-11-12. Scanning /dumps/amanda... 200 Config set to DailySet1. 200 Dump host set to ginjiro.office.begi.net. Trying disk / ... Trying disk rootfs ... Can't determine disk and mount point from $CWD '/root' amrecover> 66
  • 12. 12 amrecoverによるリストア演習 •  バックアップされているディスクを確認して
 マウントする amrecover> listdisk ← ディスクの確認 200- List of disk for host ginjiro.office.begi.net 201- /var/www/html 200 List of disk for host ginjiro.office.begi.net amrecover> setdisk /var/www/html ← マウント 200 Disk set to /var/www/html. amrecover> ls ← バックアップ中の/var/www/htmlの一覧を表示 2008-11-12 wiki/ 2008-11-12 top.png ← リストアしたいファイル (略) 2008-11-12 . amrecover> 67 amrecoverによるリストア演習 •  対象のファイルをリストア対象に追加する •  データのリストア先を指定する amrecover> add top.png Added /top.png amrecover> amrecover> lpwd ← Local側でのpwdコマンドと同等 /root amrecover> lcd /var/www/html ← Local側でのcdコマンドと同等 amrecover> 68 amrecoverによるリストア演習 •  リストアの実行 amrecover> extract Extracting files using tape drive null: on host orange. The following tapes are needed: DailySet1-02 Restoring files into directory /var/www/html Continue [?/Y/n]? Y ← /var/www/htmlに展開して良いですか Extracting files using tape drive null: on host orange. Load tape DailySet1-02 now Continue [?/Y/n/s/t]? Y ← DailySet1-02 をセットしてYを入力 ./top.png ← 展開された amrecover> 69 amrecoverによるリストア演習 •  リストアの確認 •  成功! amrecover> exit 200 Good bye. # ls /var/www/html blog files index.php style.css top.png enter.gif gewiki    screenshot tmp wiki # 70 amrestoreによるリストア •  ディスク単位のリストアツール ‒  disklistで指定したバックアップ対象ごと •  バックアップデータベースを利用 •  時間の都合で割愛(同じことは次のddでも 可能と言えば可能) ‒  過去版 ( http://virtualtech.jp/download/ 090130AmandaBackup.pdf ) を参照 71 Amandaを利用しないリストア •  障害などによってバックアップデータベー スが壊れたときに覚えておくべき方法 •  Amandaのテープフォーマットはシンプル ‒  あえてそうなっている ‒  各イメージの先頭32KBにイメージの情報 ‒  それ以降にイメージが格納されている •  mtコマンドとddコマンドでテープから取りだ しが可能 72
  • 13. 13 Amandaを使わないリストア演習 •  テープの中身のイメージ •  テープのヘッダを表示 # mt ‒f /dev/st0 rewind # dd if=/dev/nst0 bs=32k count=1 ←テープ先頭から32KB分読み込む AMANDA: TAPESTART DATE 20081106 TAPE DailySet1-03 014 1+0 records in 1+0 records out 32768 bytes (33 kB) copied, 0.081231 seconds, 403 kB/s # dd if=/dev/nst0 bs=32k ←よくわからないなにかを読み飛ばす テープの ヘッダ(32KB) ダミー イメージ1の ヘッダ(32KB) イメージ1 イメージ2の ヘッダ(32KB) イメージ2 つづく 73 Amandaを使わないリストア演習 •  テープの中身のイメージ •  イメージ1のリストア # dd if=/dev/nst0 bs=32k count=1 ← ヘッダの取りだし AMANDA: FILE 20081106 orange.office.begi.net /etc lev 0 comp .gz program /bin/tar ← Dom0の/etcらしい To restore, position tape at start of file and run: dd if=<tape> bs=32k skip=1 | /bin/gzip -dc | /bin/tar -f... ‒ (ddの出力結果略) # dd if=/dev/nst0 of=1106-orange-etc bs=32k ← イメージ1の取りだし # tar xf 1106-orange-etc # ls 1106-orange-etc host.conf quotatab DIR_COLORS hosts racoon テープの ヘッダ(32KB) ダミー イメージ1の ヘッダ(32KB) イメージ1 イメージ2の ヘッダ(32KB) イメージ2 つづく 74 USB-HDD運用の場合 •  テープの区切りごとにファイルになっている •  イメージ1のリストア # mkdir /tmp/restore # cd /tmp/restore # cp /amanda/usbdisk/slot1/00001.orange.office.begi.net._etc.0 . # dd if=00001.orange.office.begi.net._etc.0 bs=32k skip=1 | tar ‒xpf ‒ # ls 00001.orange.office.begi.net._etc.0 host.conf racoon 1106-orange-etc hosts DIR_COLORS quotatab 75 まとめ •  Amandaの使い勝手 ‒  設定は慣れてないと大変(というか面倒?) ‒  設定の山を越えれば後は簡単 •  バックアップ重要!! ‒  データを失う辛さに比べたら
 バックアップの面倒さなんてちっぽけなもの ‒  データを失ってから業者にリカバリを依頼する と非常に高額なお金が必要になる 76 参考文献 •  Unixバックアップ&リカバリ
 (オライリージャパン) •  amandaを使ってLTOにバックアップ ‒  http://www.ait.pref.akita.jp/~kurosawa/ backup.html •  その他のページは、(個人の)
 はてなブックマークにいくつか登録してます ‒  http://b.hatena.ne.jp/Akkiesoft/バックアップ/ 77 色々ご案内 •  日本Amandaユーザ会 ‒  Amandaのさらなる活用を探る(?) ‒  参加はmixiコミュニティへ ‒  http://mixi.jp/view_community.pl?id=3816284 •  本日のセミナー資料 •  http://VirtualTech.jp/ の、公開資料に掲載 78