サーバーとデータベース(ホスト環境)へのアクセス権がない場合、以下に説明する手順を実行できません。 Adobeにお問い合わせください。
Adobe Campaignを使用するには、開発、テスト、実稼動前、実稼動など、1 つ以上の環境をインストールして設定する必要があります。
各環境には 1 つのAdobe Campaignインスタンスが含まれ、各Adobe Campaignインスタンスは 1 つ以上のデータベースにリンクされています。 アプリケーションサーバーは 1 つ以上のプロセスを実行できます。ほとんどすべてのプロセスが、インスタンスデータベースに直接アクセスできます。
この節では、Adobe Campaign環境の複製に適用するプロセス(ソース環境をターゲット環境に復元する場合など)について詳しく説明します。その結果、2 つの同じ作業環境が作成されます。
それには、次の手順に従います。
ソース環境内のすべてのインスタンス上に、データベースのコピーを作成します。
ターゲット環境のすべてのインスタンスに対して、これらのコピーを復元します。
を実行します。 nms:freezeInstance.js 起動前のターゲット環境の警告スクリプト。
このプロセスは、サーバーとその設定には影響しません。
Adobe Campaignの場合、 焼灼 はアクションを組み合わせて使用し、ログ、トラッキング、配信、キャンペーンワークフローなど、外部とやり取りするすべてのプロセスを停止できます。
この手順は、(1 回は呼び出し環境から、もう 1 回は複製環境から)メッセージを複数回配信しないようにするために必要です。
1 つの環境に複数のインスタンスを含めることができます。 各Adobe Campaignインスタンスには、ライセンス契約が適用されます。 使用許諾契約を調べて、使用できる環境の数を確認してください。
以下の手順を実行すると、インストールした環境やインスタンスの数に影響を与えることなく、環境を転送できます。
転送プロセスを開始する前に、ソース環境とターゲット環境のすべてのインスタンスに対して、データベースのフルバックアップを実行することを強くお勧めします。 この方法で問題が発生した場合は、バックアップを復元し、初期設定に戻すことができます。
このプロセスを機能させるには、ソース環境とターゲット環境で同じ数のインスタンス、同じ目的(マーケティングインスタンス、配信インスタンス)、類似した設定が必要です。 技術的な設定は、ソフトウェアの前提条件に従う必要があります。 両方の環境に同じコンポーネントをインストールする必要があります。
この節では、ケーススタディを通じて、ソース環境をターゲット環境に移行する際に必要な手順を理解するのに役立ちます。ここでは、実稼動環境 (prod インスタンス ) を開発環境 (dev インスタンス ) が、「ライブ」プラットフォームにできる限り近いコンテキストで動作するようにする必要があります。
次の手順は慎重に実行する必要があります。ソース環境データベースをコピーする際に、一部のプロセスが進行中の可能性があります。 注意機能を使用すると(次の手順 3 で説明)、メッセージが 2 回送信されるのを防ぎ、データの一貫性を維持できます。
データベースをコピーする
まず、すべてのソース環境データベースをコピーします。 操作はデータベースエンジンに依存し、データベース管理者がおこないます。
PostgreSQL では、コマンドは次のようになります。
pg_dump mydatabase > mydatabase.sql
ほとんどの設定要素は、環境ごとに異なります。外部アカウント(ミッドソーシング、ルーティングなど)、技術的なオプション(プラットフォーム名、データベース ID、E メールアドレス、デフォルト URL など)。
ソースデータベースをターゲットデータベースに保存する前に、ターゲット環境(開発)の設定を書き出す必要があります。 これをおこなうには、次の 2 つのテーブルのコンテンツをエクスポートします。 xtkoption および nmsexaccount.
この書き出しを使用すると、開発設定を保持し、開発データ(ワークフロー、テンプレート、Web アプリケーション、受信者など)のみを更新できます。
これをおこなうには、次の 2 つの要素に対してパッケージのエクスポートを実行します。
エクスポートするオプション/アカウントの数が、各ファイルでエクスポートするライン数と等しいことを確認します。
パッケージエクスポートでエクスポートする行の数は 1,000 行です。 オプションまたは外部アカウントの数が 1,000 を超える場合は、複数のエクスポートを実行する必要があります。
詳しくは、この節を参照してください。
nmsextaccount テーブルをエクスポートする場合、外部アカウントに関連するパスワード(ミッドソーシング、Message Center の実行、SMPP、IMS およびその他の外部アカウント用のパスワードなど)はエクスポートされません。 外部アカウントを環境に再び読み込んだ後で再入力する必要が生じる場合があるので、正しいパスワードに事前にアクセスできることを確認してください。
すべてのターゲット環境サーバーでAdobe Campaignプロセスを停止する必要があります。 この操作は、オペレーティングシステムによって異なります。
すべてのプロセスを停止するか、データベースに書き込むプロセスのみを停止できます。
すべてのプロセスを停止するには、次のコマンドを使用します。
Windows の場合:
net stop nlserver6
Linux の場合:
/etc/init.d/nlserver6 stop
次のコマンドを使用して、すべてのプロセスが停止したことを確認します。
nlserver pdump
Windows の場合、 webmdl プロセスは、他の操作に影響を与えることなくアクティブなままです。
また、実行中のシステムプロセスがないことも確認できます。
それには、次の手順に従います。
ターゲット環境でソース・データベースをリストアするには、次のコマンドを使用します。
psql mydatabase < mydatabase.sql
誤作動を避けるために、配信の送信とワークフローの実行に関連するプロセスは、ターゲット環境がアクティブ化されたときに自動的に実行されないようにする必要があります。
これをおこなうには、次のコマンドを実行します。
nlserver javascript nms:freezeInstance.js -instance:<dev> -arg:run
ID が 0 に設定されているのが唯一の配信部分であることを確認します。
SELECT * FROM neolane.nmsdeliverypart;
配信ステータスが正しく更新されていることを確認します。
SELECT iState, count(*) FROM neolane.nmsdelivery GROUP BY iState;
ワークフローのステータスが正しく更新されていることを確認します。
SELECT iState, count(*) FROM neolane.xtkworkflow GROUP BY iState;
SELECT iStatus, count(*) FROM neolane.xtkworkflow GROUP BY iStatus;
ターゲット環境で、すべてのサーバーのAdobe Campaignプロセスを再起動します。
でAdobe Campaignを再起動する前に dev 環境の場合は、追加の安全手順を適用できます。 web モジュールのみ。
これをおこなうには、インスタンスの設定ファイル (config-dev.xml) をクリックし、各モジュール(mta、stat など)の autoStart="true"オプションの前に"_"文字を追加します。
次のコマンドを実行して、Web プロセスを開始します。
nlserver start web
次のコマンドを使用して、Web プロセスのみが開始したことを確認します。
nlserver pdump
クライアントコンソールが機能することを確認します。
この手順では、Web プロセスのみを開始する必要があります。 そうでない場合は、他の実行中のプロセスを停止してから続行します
何よりも、インポートする前に、複数行のファイルの値を確認してください(例:オプションテーブルの場合は「NmsTracking_Pointer」、外部アカウントテーブルの場合は配信またはミッドソーシングアカウント)。
ターゲット環境データベース(開発環境)から設定を読み込むには、次の手順に従います。
データベースの管理コンソールを開き、ID が 0(@id <> 0) でない外部アカウント(テーブル nms:extAccount)をパージします。
Adobe Campaignコンソールで、パッケージのインポート機能で以前に作成した options_dev.xml パッケージをインポートします。
でオプションが実際に更新されていることを確認します。 管理/プラットフォーム/オプション ノード。
Adobe Campaignコンソールで、パッケージのインポート機能を使用して作成した extaccount_dev.xml をインポートします。
外部データベースが実際に 管理/プラットフォーム/外部アカウント .
Adobe Campaignプロセスを開始するには、次のコマンドを使用します。
Windows の場合:
net start nlserver6
Linux の場合:
/etc/init.d/nlserver6 start
次のコマンドを使用して、プロセスが開始されていることを確認します。
nlserver pdump
ユーザーを変更して、開発プラットフォームに既に存在するユーザーを検索します。