Red Hat Training

A Red Hat training course is available for Red Hat Satellite

15.2. 障害復旧

15.2.1. Red Hat Satellite のバックアップ手順

手順15.2 Red Hat Satellite のバックアップ手順

以下の例では、バックアップアーカイブを保管するディレクトリーとして /backup ディレクトリーを使用します。次のコマンドを root システムアカウントで実行してください。

注記

SELinux が有効になっている場合は、同期するローカルのコンテンツに「httpd_sys_content_t」のラベルが付けられていることを確認する必要があります。
  1. バックアップの場所を準備します。
    umask 0027
    export BDIR=/backup
    mkdir $BDIR
    chgrp postgres $BDIR
    chmod 770 $BDIR
    cd $BDIR
    
  2. 設定ファイルとデータファイルをバックアップします。
    # tar --selinux -czvf config_files.tar.gz \
    /etc/katello \
    /etc/elasticsearch \
    /etc/candlepin \
    /etc/pulp \
    /etc/gofer \
    /etc/grinder \
    /etc/pki/katello \
    /etc/pki/pulp \
    /etc/qpidd.conf \
    /etc/sysconfig/katello \
    /etc/sysconfig/elasticsearch \
    /root/ssl-build \
    /var/www/html/pub/* \ 
    
    # tar --selinux -czvf elastic_data.tar.gz /var/lib/elasticsearch
  3. リポジトリーをバックアップします。リポジトリー内の RPM ファイルにはすでに圧縮が適用されており、これ以上圧縮することができません。そのためインスタンスのサイズによっては、作成されるバックアップのアーカイブ (pulp_data.tar) が非常に大きくなる可能性があります。
    リポジトリーのバックアップ方法として 2 つのオプションがあります。
    オプション 1: オンラインでのリポジトリーのバックアップ

    すべてのタイムスタンプのチェックサムを実行し、リポジトリーをバックアップしてからチェックサムを再び実行します。

    # find /var/lib/pulp -printf '%T@\n' | md5sum
    # tar --selinux -cvf pulp_data.tar /var/lib/pulp /var/www/pub
    # find /var/lib/pulp -printf '%T@\n' | md5sum
    両方のチェックサムが一致すれば、オンラインバックアップは正確に行なわれ、使用可能であることになります。チェックサムが一致しない場合はリポジトリーのバックアップを再度実行します。

    注記

    チェックサムが一致するよう rsync コマンドを使ってファイルのコピーをスピードアップします。
    オプション 2: オフラインでのリポジトリーのバックアップ

    Pulp サーバーを停止してからバックアップを行います。バックアップが完了してから Pulp サーバーを再起動します。

    # service pulp-server stop
    # tar --selinux -cvf pulp_data.tar /var/lib/pulp /var/www/pub
    # service pulp-server start

    注記

    Pulp サーバーがダウンすると、Red Hat Satellite および yum クライアントは接続を維持することができなくなります。サーバーがアイドル状態の間は、Red Hat Satellite で行なわれるリポジトリー関連のアクションはすべて失敗します。
  4. データベースをバックアップします。
    オフラインでのデータベースのバックアップ

    次のコマンドを使ってオフラインでのバックアップを行います。

    tar --selinux -czvf mongo_data.tar.gz /var/lib/mongodb
    tar --selinux -czvf pgsql_data.tar.gz /var/lib/pgsql/data/
    

    警告

    オフラインのバックアップを行うには、Red Hat Satellite が完全に非アクティブな状態でなければなりません。Satellite が実行されている間にこの手順を実行すると、データが破損する可能性があります。
    この方法では、PostgreSQL と MongoDB のデータベースのデータをすべてアーカイブします。このバックアップはメンテナンス期間に行うことを推奨します。
    PostgreSQL データベースのバックアップ

    Red Hat Satellite の PostgreSQL データベースの名前を確認します。デフォルトのデータベース名は foremanschemacandlepin です。すべてのデフォルト値については、katello-configure の man ページか、または /usr/share/katello/install/default-answer-file を参照してください。Red Hat Satellite のインスタンスがデフォルト名を使用していない場合は、katello-configure.conf を確認します。このファイルには、katello-configure コマンドに指定するすべてのオプションが保存されているので、ここで db_name を検索します。

    # grep db_name /etc/katello/katello-configure.conf
    pg_dump コマンドを実行してオンラインでデータベースのバックアップを作成します。PostgreSQL や Red Hat Satellite を停止する必要はないため、このプロセスによりログインしているユーザーをブロックすることはありません。ただし、データベースのサイズによってはこのプロセスが完了するまでに数分の時間がかかる場合があります。
    # runuser - postgres -c "pg_dump -Fc foremanschema > /backup/foreman.dump"
    # runuser - postgres -c "pg_dump -Fc candlepin > /backup/candlepin.dump"

    注記

    PostgreSQL のバックアップについてさらに詳しくは pg_dump の man ページを参照するか、または http://www.postgresql.org/docs/8.4/static/backup.html をご覧ください。
    MongoDB データベースのバックアップ

    データベースを実行中に、オンラインツールを使って pulp データベース (MongoDB) をバックアップします。バックアップディレクトリーで次のコマンドを実行します。

    # mongodump --host localhost --out $BDIR/mongo_dump
    このツールにより、JSON ファイルを含む /backup/mongo_dump/pulp_database ディレクトリーが作成されます。

    注記

    さらに詳しくは、mongodump の man ページを参照するか、または http://www.mongodb.org/display/DOCS/Backups をご覧ください。
  5. バックアップのプロセスを確認します。このプロセスにより、次のようなアーカイブファイルとディレクトリーが作成されます。
    # ls $BDIR
    candlepin.dump    
    config_files.tar.gz    
    elastic_data.tar.gz    
    katello.dump
    mongo_dump/
    pulp_data.tar
    
    データベースに対してオプションのオフラインによるバックアップを行った場合は、次のファイルも表示されます。
    mongo_data.tar.gz
    pgsql_data.tar.gz
    
    Red Hat Satellite がバックアップされます。Red Hat Satellite がオンラインになるはずです。
22921%2C+User+Guide-6.008-10-2014+13%3A34%3A52Red+Hat+Satellite+6Docs+User+Guideバグを報告する