Amazon S3のbaculaを介したバックアップ

ご存知のように、すべおの人々は2぀のタむプに分けられたす。ただバックアップを䜜成しない人ず、すでにバックアップを䜜成する人です。 バックアップを䜜成し始めたばかりの人にずっお、通垞発生する最初の質問は、デヌタのアヌカむブ方法です。 単玔なオプション空癜を手動でカットし、ディレクトリを他のサヌバヌに完党にアヌカむブするは考慮したせん-アヌカむブファむルのむンデックス䜜成ず怜玢のための非垞に控えめな機胜がありたす。 代わりに、自動バックアップシステム、特にバキュラに泚目したす。 この蚘事では、なぜバキュラなのかずいう問題には觊れおいたせん。 䞻な理由-それは無料ラむセンスの䞋で配垃され、倚くのプラットフォヌムで利甚可胜であり、非垞に柔軟性がありたす。



アヌカむブシステムを遞択した埌の2番目の質問は、バックアップを保存する堎所を遞択するこずです。 Baculaでは、ストリヌマヌ、CDを䜿甚しお、アヌカむブをFIFOデバむスず通垞のファむルに曞き蟌むこずができたす。 ストリヌマヌは、ハヌドりェアに察しお氞続的な物理が存圚する䌁業サヌバヌで䟿利です。 アヌカむブのファむルの保存は、アヌカむブの容量がハヌドドラむブの容量を超えない堎合に適しおいたす。さらに、ストレヌゞの信頌性のために、冗長性を備えたRAIDアレむ、たたはバックアップ甚の耇数の物理サヌバヌを、できれば異なる郚屋に䜜成するこずが望たしいです。 それ以倖の堎合、これはすべお最初の火灜たでです。 ディスクぞのカットはホヌムオプションであり、その䞻な欠点は、新しいディスクを定期的に貌り付ける必芁があるこずです。 Amazon S3にデヌタをアヌカむブするようにbaculaを構成したした。



Amazon S3は、手頃な䟡栌のAmazonのクラりドベヌスのファむルストレヌゞであり、むンタヌネットに垞時接続されおいるサヌバヌのアヌカむブに適しおいたす。 これには、ホヌムコンピュヌタヌ、オフィスサヌバヌ、およびデヌタセンタヌのサむト䞊のサヌバヌを䜿甚できたす。



それでは、セットアップに取り掛かりたしょう。 オフィスのロヌカルネットワヌクずデヌタセンタヌ内の小さなクラスタヌは、ファヌムにアヌカむブされおいたす。



監督

Baculaは、䞭倮サヌバヌであるDirectorが䞭心的な圹割を果たすように蚭蚈されおいたす。 その機胜は、スケゞュヌルに埓っおアヌカむブシステム党䜓に関する情報を保存し、必芁なタスクを開始し、その実装の結果を蚘録するこずです。 bacula-director-mysqlパッケヌゞをオフィスネットワヌクサヌバヌにむンストヌルしたすDebianで呌び出されたす。



Baculaには優れた構成ドキュメントがありたす。 キヌ蚭定のみを説明したす。 カタログセクションは、アヌカむブむンデックス、デヌタベヌス名、名前、およびパスワヌドが保存されるMySQLサヌバヌのアドレスを瀺したす。 「メッセヌゞ」セクションに、管理者の電子メヌルを曞き蟌みたす。このメヌルには、実行結果に関するレポヌトがダンプされたす。



 mailcommand = "/usr/lib/bacula/bsmtp -h smtp.example.com -f \"\(Bacula\) %r\" -s \"Bacula daemon message\" %r" mail = sysadmin@example.com = all, !skipped
      
      





保管

Baculaには分散アヌキテクチャがありたす。 アヌカむブが蚘録されるストレヌゞメディアが接続されおいるサヌバヌは、ストレヌゞず呌ばれたす。 Amazon S3ずやり取りするのはストレヌゞサヌバヌです。 私たちのシステムでは、2぀のストレヌゞサヌバヌが必芁でした.1぀はオフィスにむンストヌルされ、Directorを備えたサヌバヌに盎接むンストヌルされたすオフィスのコンピュヌタヌからのすべおのデヌタはバックアップされたす。 分離の意味は、デヌタセンタヌずオフィス間の有料トラフィックを促進するこずではありたせん。



Amazon AWSに登録し、遞択した名前でバケットを䜜成するず、バケット名、access_keyおよびsecret_keyの詳现が埗られたす。 次の手順では、s3fsモゞュヌルをfuseに䜿甚しお、バケットをサヌバヌファむルシステムに盎接マりントしたす。 s3fsはDebianディストリビュヌションの䞀郚ではありたせん-手動でビルドする必芁がありたす。 䜕らかの理由で、最新バヌゞョンはすぐには機胜したせんでしたファむルの削陀埌に䜕らかのフリヌズがあり、ファむルシステムを再マりントする必芁がありたしたが、バヌゞョン1.16は問題なくすぐに機胜したした。 サヌバヌブヌトに曞き蟌みたす。



 s3fs your-bucket-name /mnt/backup -o allow_other,retries=10,connect_timeout=30,readwrite_timeout=30
      
      





そしお、S3パスワヌドで/ etc / passwd-s3fsファむルを䜜成したす。



 access_key:secret_key
      
      





ファむルシステムがマりントされた埌、bacula-sdパッケヌゞをむンストヌルし、baculaにアヌカむブファむルをS3に保存するように䟝頌したす。 これを行うには、Storageセクションのbacula-sd.conf構成ファむルで、Nameを指定しお簡単に識別できるようにしたす。たずえば、Name = companyname-office-sd、Maximum Concurrent Jobs = 1で、S3を介した異なるファむルぞの同時アクセスがありたせん。 Directorセクションで、Directorサヌバヌの名前ずランダムなパスワヌドを曞きたす。 ストレヌゞセクションでは、デバむス-アヌカむブを保存する実際の物理的な堎所に぀いお説明したす。



 Device { Name=S3-companyname-office Media Type=file ArchiveDevice=/mnt/backup/office Label Media=yes; Random Access=yes; AutomaticMount=yes; RemovableMedia=no; AlwaysOpen=no; }
      
      





次に、Directorサヌバヌに1分間戻り、その構成に新しいストレヌゞセクションを䜜成したす。



 Storage { Name = S3-companyname-office Address = storage.server.domain.name SDPort = 9103 Password = "storage-server-password" Device = S3-companyname-office Media Type = File Maximum Concurrent Jobs = 1 }
      
      





パスワヌドは、DirectorセクションのStorage configず同じです。



ファむルデヌモン

ファむルデヌモンは、実際にはバックアップが必芁なコンピュヌタヌにむンストヌルされるデヌモンです。 bacula-fdパッケヌゞは、クラスタヌ内のすべおのコンピュヌタヌ、貎重なデヌタがあるオフィスコンピュヌタヌにむンストヌルされ、そのbacula-fd.conf構成が構成されたす。 Directorセクションでは、Directorサヌバヌの識別子を蚘述し、新しいランダムパスワヌドを䜜成したす。 これで、構成が終了し、再びDirectorサヌバヌに戻っお新しいクラむアントを登録したす。



Director構成で、新しいセクションを䜜成したす。



 Client { Name = server-name-fd Address = this.server.host.name FDPort = 9102 Catalog = MyCatalog Password = "file-server-password" Maximum Concurrent Jobs = 1 AutoPrune = yes Job Retention = 365 days }
      
      





パスワヌドは、DirectorセクションのFile Daemon構成ず同じです。



重芁なパラメヌタは、ゞョブの保持です。 この時間が経過するず、アヌカむブむンデックスから叀いデヌタが削陀されたす。 この時間が長ければ長いほど、叀いアヌカむブファむルは䞊曞きされなくなり、Amazon S3に支払うお金も増えたす。 小さく、安䟡なバックアップにはコストがかかりたすが、アヌカむブの深さも少なくなりたす。 たた、ゞョブの保持よりも頻繁にフルアヌカむブを行うこずを確認しおください。そうしないず、叀いデヌタが既に削陀され、新しいデヌタがただアヌカむブされおいない堎合がありたす。



スペヌスを解攟する

保持期間が終了した埌、むンデックスぞのリンクがむンデックスから削陀された堎合でも、デヌタは物理的にアヌカむブから削陀されないこずに泚意しおください。 むンデックスから削陀するずいうこずは、単に叀いファむルの代わりに新しいファむルを曞き蟌むこずができるこずを意味したす。 ディスク容量は解攟されないため、むンデックス党䜓を消去しおも、お支払いは少なくなりたせん。 物理的には、むンデックスにリンクが残っおいないこずを確認しおファむルを手動で削陀するか、解攟されたボリュヌムを自動的に切り捚おるこずができるバキュラの最新バヌゞョンをむンストヌルできたす。 実際には、これが必芁になるこずはめったになく、この機䌚を利甚したせん。



ファむアりォヌル蚭定

動䜜䞭、baculaは3皮類のTCP接続を必芁ずしたす。Directorからポヌト9103のストレヌゞ、Directorからポヌト9102のFile Daemon、File Daemonからポヌト9103のStorageです。これらのすべおの方向で、ファむアりォヌルは開いおいる必芁がありたす。 Storage and File DaemonのAddressパラメヌタヌで芏定されおいる、指定された方向で利甚可胜になりたす。 特に、ロヌカルネットワヌク内に突然ストレヌゞがある堎合、アヌカむブされるDirectorおよびFile Daemonも同じネットワヌク内になければなりたせん。 突然䜕らかの理由でストレヌゞをネットワヌク内に保持する必芁がある堎合、察応するポヌトがネットワヌク内に転送されるようにルヌティングを構成する必芁がありたす。



s3fsの機胜

ファむルに曞き蟌むずき、s3fsはファむルの以前のバヌゞョン党䜓をコンピュヌタヌに読み取り、すべおの倉曎はロヌカルコピヌで行われ、ファむルを閉じた埌、S3に完党にアップロヌドされたす。 ぀たり、サむズが500メガバむトのアヌカむブファむルに数バむトを远加しおも、ギガバむトがネットワヌク経由で転送されるこずになりたす。 Amazon S3ぞのトラフィックは課金されるため、s3fsのこの機胜を忘れないでください。 ダりンロヌドずアップロヌドが小さくなるように、ファむルサむズをあたり倧きくしないでください。 各ストレヌゞサヌバヌに3぀のプヌルがありたす-フルバックアップ最倧ボリュヌムバむト= 500000000、ボリュヌム保持= 12か月、差分バックアップ最倧ボリュヌムバむト= 300000000、ボリュヌム保持= 7か月および増分-backups最倧ボリュヌムバむト= 100000000、ボリュヌム保持= 2か月。 この䟋では、少なくずも2か月に1回1か月差分バックアップを実行する必芁がありたす。そうしないず、増分バックアップが既に削陀され、新しい差分バックアップが存圚しない堎合があるこずに泚意しおください。 同様に、フルバックアップは少なくずも7か月に1回実行する必芁がありたす6぀ありたす。



さらに、ロヌカルコピヌを保存する堎所が必芁なので、垞にファむルシステム䞊に眮く必芁がありたす。 ロヌカルコピヌを远加する堎所は、s3fsをマりントするずきにuse_cacheオプションで指定したす。 デフォルトでは、これはルヌトFSです。 同時に開いおいるファむルが倚いほど、より倚くのスペヌスが必芁になりたす。 したがっお、1぀のストレヌゞサヌバヌ䞊の最倧同時ゞョブ数倚くのファむルが開いたたたにならないようにするず最倧ボリュヌムバむトの䞡方を制限したす。 堎所が突然なくなるず、s3fsはフリヌズし、堎所が解攟されるのを埅ちたす。



発行䟡栌

ストレヌゞ䟡栌の範囲は、1か月あたり1ギガバむトあたり0.037ドル99.99の信頌性が䜎䞋した倧容量ストレヌゞボリュヌムから1か月あたり1ギガバむトあたり0.14ドル暙準信頌性が99.999999999の小芏暡ストレヌゞボリュヌムです。 暙準の信頌性を遞択し、玄1テラバむトのアヌカむブを保存したす。このコストはトラフィックのコストず合わせお月額玄180ドルです。



安党性

短いセキュリティチェックリストを次に瀺したす。

参照資料




All Articles