この投稿は5年以上前のものです
1 Rookie
•
116 メッセージ
0
602
Avamar 7.2へのレプリケーションにて "ddrmaint: get-ddrindex: command failed: me exception" のエラーが発生
Avamar 7.0から7.2へctonベースでレプリケーションを実行していますが、以下のエラーが発生しています。
ERROR: ddrmaint: get-ddrindex: command failed: me exception cannot connect to server xxx.xxx.com at xxx.xxx.xxx.xxx:27000
レプリケーションターゲット側でPort 27000への接続を許可していないためかと思われますが、どのように対応すればいいでしょうか。
なお、上記エラーが発生しても、レプリケーションは完了しており、ターゲット側でレプリケーションされたデータは確認出来ます。
silenzio
1 Rookie
1 Rookie
•
116 メッセージ
0
2016年2月26日 00:00
以下のKBに暗号化を使用したレプリケーションの方法について記載されています。
Unencrypted Backups & Replication Fail in Avamar 7.1 Due to Increased Firewall Restrictions
https://support.emc.com/kb/456866
ここに記載の通り、/usr/local/avamar/etc/repl_cron.cfgに以下のオプションを指定することでPort 29000を使用したレプリケーションが可能となりますが、レプリケーション内で実行されるddrmaintのコマンドに対してはオプションが渡されず、実行がタイムアウトで終了するまで待機します。
--avtar=--encrypt:1=ssl
--dstavmgr=--encrypt=ssl
--dstavmaint=--encrypt=ssl
コマンドが失敗してもレプリケーションは実行されますが、これにより処理遅延が発生しますので、今回のようにPort 27000の使用を許可されない場合は、replicateのスクリプトを編集し、ddrmaintがPort 29000を使用するよう設定することで、エラーを解消することが可能です。
/usr/local/avamar/bin/replicate
上記ファイルを編集し、以下の箇所を編集し、保存します。
sub get_ddrindex
{
my ($ddridxpath) = @_;
my $ddrindex = -1;
return 0 if ($backendreport);
my $dpnid = &get_dst_createtime();
my $ddrcmd = "$DDRMAINT get-ddrindex --dpnid=$dpnid --server=$dstaddr --id=$dstid --ap=$dstpw --client=$ddridxpath $ddrmaintflags";
この最後の行のみ
ターゲットがユーティリティノード (マルチノードのサーバ) の場合:
my $ddrcmd = "$DDRMAINT get-ddrindex --dpnid=$dpnid --server=$dstaddr --id=$dstid --ap=$dstpw --client=$ddridxpath --hfsport=29000 --encrypt=ssl --forceaddr $ddrmaintflags";
ターゲットがシングルノードの場合:
my $ddrcmd = "$DDRMAINT get-ddrindex --dpnid=$dpnid --server=$dstaddr --id=$dstid --ap=$dstpw --client=$ddridxpath --encrypt=ssl $ddrmaintflags";
に変更して保存します。
これにて、ddrmaintコマンドが正常完了し、レプリケーションもエラーなしで完了するようになります。