Dispatcherの設定 manage-your-dispatcher-configurations
Cloud Manager を使用して Dispatcher 設定ファイルをデプロイする方法について説明します
Cloud Managerを使用したDispatcher設定のデプロイ deploying-dispatcher-configurations
Cloud Manager では、通常の AEM コンテンツパッケージに加えて、web サーバーと Dispatcher の設定ファイルも Git リポジトリに格納されていると仮定して、それらの設定ファイルをデプロイできます。
この機能を活用するために、Maven ビルドでは、少なくとも 2 つのディレクトリ(conf
および conf.d
)を含む zip ファイルを作成する必要があります。この zip ファイルは、maven-assembly-plugin
を使用して作成できます。
ビルトインプロジェクト作成ウィザードを使用して、Cloud Manager で生成されたプロジェクトには適切な Maven プロジェクト構造が自動的に作成されます。Adobe Managed Services(AMS)を初めて使用する場合は、このパスをお勧めします。
Dispatcher インスタンスにデプロイすると、Dispatcher インスタンス上のこれらのディレクトリの内容が Git リポジトリ内の内容で上書きされます。Web サーバーおよび Dispatcher 設定ファイルは頻繁に環境特有の情報を必要とするので、この機能を正しく使用するには、最初にカスタマーサクセスエンジニア(CSE)に依頼して、これらの環境変数を /etc/sysconfig/httpd
で設定する必要があります。
既存の managed service のお客様向けのDispatcher設定 steps-for-configuring-dispatcher
最初の Dispatcher 設定を完了するには、次の手順に従います。
- 現在の実稼動設定ファイルを CSE から入手します。
- ハードコーディングされた環境特有のデータ(例えば、公開レンダラー IP)を削除し、変数に置き換えます。
- 各ターゲット Dispatcher に対して必要な変数をキーと値のペアで定義し、CSE に依頼して各インスタンスの
/etc/sysconfig/httpd
に追加します。 - 更新後の設定をステージング環境でテストします。
- テストが完了したら、CSE に依頼して実稼動環境にデプロイします。
- ファイルを Git リポジトリにコミットします。
- Cloud Manager を使用してデプロイします。
例 example
特定のファイルおよびディレクトリ構造はプロジェクトの仕様によって異なる場合がありますが、この例では、Apache および Dispatcher 設定を含めるためのプロジェクトの構築方法について具体的に説明しています。
-
サブディレクトリを作成し、
dispatcher
という名前を付けます。ここでは任意の名前を使用できますが、この手順で作成したディレクトリ名は手順 6 で使用する名前と同じにする必要があります。
-
このサブディレクトリには、Maven Assembly プラグインを使用してDispatcherの.zip ファイルを構築する Maven モジュールが含まれます。 これを開始するには、
dispatcher
ディレクトリにこのコンテンツを含むpom.xml
ファイルを作成し、必要に応じてparent
参照、artifactId
およびname
を変更します。code language-xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <!-- reference to your parent pom --> </parent> <artifactId>dispatcher</artifactId> <!-- feel free to change this --> <packaging>pom</packaging> <name>dispatcher</name> <!-- feel free to change this --> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <version>3.1.0</version> <executions> <execution> <phase>package</phase> <goals><goal>single</goal></goals> <configuration> <descriptors> <descriptor>assembly.xml</descriptor> </descriptors> <appendAssemblyId>false</appendAssemblyId> </configuration> </execution> </executions> </plugin> </plugins> </build> </project>
- 手順 1 と同様に、ここにある artifactId と名前は、必要に応じて他の値にすることができます。
dispatcher
は、ここでは例として使用しています。
- 手順 1 と同様に、ここにある artifactId と名前は、必要に応じて他の値にすることができます。
-
Maven アセンブリプラグインでは、.zip ファイルの作成方法を定義する
descriptor
が必要です。 この記述子を作成するには、dispatcher
サブディレクトリにassembly.xml
という名前のファイルを次のコンテンツで作成します。このファイル名は、上記のpom.xml
ファイルの 26 行目で参照されることに注意してください。code language-xml <assembly xmlns="http://maven.apache.org/ASSEMBLY/2.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.0.0 http://maven.apache.org/xsd/assembly-2.0.0.xsd"> <id>distribution</id> <formats> <format>zip</format> </formats> <includeBaseDirectory>false</includeBaseDirectory> <fileSets> <fileSet> <directory>${basedir}/src</directory> <includes> <include>**/*</include> </includes> <outputDirectory></outputDirectory> </fileSet> </fileSets> </assembly>
-
Dispatcher のサブディレクトリ内に(上記の 11 行目のアセンブリ記述子で参照された)
src
という名前のサブディレクトリを作成し、実際の Apache および Dispatcher の設定を保存します。このsrc
ディレクトリ内に、conf
、conf.d
、conf.dispatcher.d
およびconf.modules.d
という名前のディレクトリを作成します。 -
conf
、conf.d
、conf.dispatcher.d
およびconf.modules.d
ディレクトリに設定ファイルを格納します。例えば、デフォルト設定は、これらのファイルとシンボリックリンクで構成されています。code language-none dispatcher ├── assembly.xml ├── pom.xml └── src ├── conf │ ├── httpd.conf │ └── magic ├── conf.d │ ├── README │ ├── autoindex.conf │ ├── available_vhosts │ │ ├── aem_author.vhost │ │ ├── aem_flush.vhost │ │ ├── aem_health.vhost │ │ ├── aem_lc.vhost │ │ └── aem_publish.vhost │ ├── dispatcher_vhost.conf │ ├── enabled_vhosts │ │ ├── aem_author.vhost -> ../available_vhosts/aem_author.vhost │ │ ├── aem_flush.vhost -> ../available_vhosts/aem_flush.vhost │ │ └── aem_publish.vhost -> ../available_vhosts/aem_publish.vhost │ ├── rewrites │ │ ├── base_rewrite.rules │ │ └── xforwarded_forcessl_rewrite.rules │ ├── userdir.conf │ ├── variables │ │ └── ams_default.vars │ ├── welcome.conf │ └── whitelists │ └── 000_base_whitelist.rules ├── conf.dispatcher.d │ ├── available_farms │ │ ├── 000_ams_author_farm.any │ │ ├── 001_ams_lc_farm.any │ │ └── 999_ams_publish_farm.any │ ├── cache │ │ ├── ams_author_cache.any │ │ ├── ams_author_invalidate_allowed.any │ │ ├── ams_publish_cache.any │ │ └── ams_publish_invalidate_allowed.any │ ├── clientheaders │ │ ├── ams_author_clientheaders.any │ │ ├── ams_common_clientheaders.any │ │ ├── ams_lc_clientheaders.any │ │ └── ams_publish_clientheaders.any │ ├── dispatcher.any │ ├── enabled_farms │ │ ├── 000_ams_author_farm.any -> ../available_farms/000_ams_author_farm.any │ │ └── 999_ams_publish_farm.any -> ../available_farms/999_ams_publish_farm.any │ ├── filters │ │ ├── ams_author_filters.any │ │ ├── ams_lc_filters.any │ │ └── ams_publish_filters.any │ ├── renders │ │ ├── ams_author_renders.any │ │ ├── ams_lc_renders.any │ │ └── ams_publish_renders.any │ └── vhosts │ ├── ams_author_vhosts.any │ ├── ams_lc_vhosts.any │ └── ams_publish_vhosts.any └── conf.modules.d ├── 00-base.conf ├── 00-dav.conf ├── 00-lua.conf ├── 00-mpm.conf ├── 00-proxy.conf ├── 00-systemd.conf ├── 01-cgi.conf └── 02-dispatcher.conf
-
最後に、プロジェクトのルートにある
pom.xml
ファイルで、<module>
要素を追加して Dispatcher モジュールを含めます。例えば、既存のモジュールリストが以下の場合、
code language-xml <modules> <module>core</module> <module>ui.apps</module> <module>ui.content</module> </modules>
以下のように変更する必要があります。
code language-xml <modules> <module>core</module> <module>ui.apps</module> <module>ui.content</module> <module>dispatcher</module> </modules>
- 手順 1 で述べたように、
<module>
要素の値は、作成したディレクトリ名と一致させる必要があります。
- 手順 1 で述べたように、
-
テストするには、プロジェクトのルートディレクトリで
mvn clean package
を実行します。出力には以下のような行が表示されます。code language-none [INFO] --- maven-assembly-plugin:3.1.0:single (default) @ dispatcher --- [INFO] Reading assembly descriptor: assembly.xml [INFO] Building zip: /Users/me/mycompany/dispatcher/target/dispatcher-1.0-SNAPSHOT.zip
このファイルを解凍して、コンテンツを表示することもできます。
code language-shell $ unzip -l dispatcher/target/dispatcher-1.0-SNAPSHOT.zip Archive: dispatcher/target/dispatcher-1.0-SNAPSHOT.zip Length Date Time Name --------- ---------- ----- ---- 0 09-12-2018 12:53 conf.modules.d/ 0 10-19-2018 10:38 conf.dispatcher.d/ 0 09-12-2018 12:53 conf.dispatcher.d/available_farms/ 0 09-12-2018 12:53 conf.dispatcher.d/filters/ 0 09-12-2018 12:53 conf.dispatcher.d/renders/ 0 09-12-2018 12:53 conf.dispatcher.d/cache/ 0 09-12-2018 12:53 conf.dispatcher.d/clientheaders/ 0 09-12-2018 12:53 conf.dispatcher.d/enabled_farms/ 0 09-12-2018 12:53 conf.dispatcher.d/vhosts/ 0 09-12-2018 12:53 conf.d/ 0 09-12-2018 12:53 conf.d/rewrites/ 0 09-12-2018 12:53 conf.d/whitelists/ 0 09-12-2018 12:53 conf.d/variables/ 0 11-01-2018 13:53 conf.d/enabled_vhosts/ 0 09-12-2018 12:53 conf.d/available_vhosts/ 0 09-12-2018 12:53 conf/ 88 09-12-2018 12:53 conf.modules.d/00-systemd.conf 4913 09-12-2018 12:53 conf.dispatcher.d/available_farms/999_ams_publish_farm.any 152 09-12-2018 12:53 conf.dispatcher.d/renders/ams_lc_renders.any 490 09-12-2018 12:53 conf.dispatcher.d/clientheaders/ams_common_clientheaders.any 1727 09-12-2018 12:53 conf.d/rewrites/base_rewrite.rules 36 09-12-2018 12:53 conf.d/enabled_vhosts/aem_author.vhost 11753 09-12-2018 12:53 conf/httpd.conf 957 09-12-2018 12:53 conf.modules.d/00-proxy.conf 944 09-12-2018 12:53 conf.dispatcher.d/available_farms/001_ams_lc_farm.any 220 09-12-2018 12:53 conf.dispatcher.d/cache/ams_author_invalidate_allowed.any 43 09-12-2018 12:53 conf.dispatcher.d/enabled_farms/999_ams_publish_farm.any 516 09-12-2018 12:53 conf.d/welcome.conf 37 09-12-2018 12:53 conf.d/enabled_vhosts/aem_publish.vhost 13077 09-12-2018 12:53 conf/magic 96 09-12-2018 12:53 conf.modules.d/02-dispatcher.conf 2601 09-12-2018 12:53 conf.dispatcher.d/available_farms/000_ams_author_farm.any 837 09-12-2018 12:53 conf.dispatcher.d/cache/ams_author_cache.any 42 09-12-2018 12:53 conf.dispatcher.d/enabled_farms/000_ams_author_farm.any 2926 09-12-2018 12:53 conf.d/autoindex.conf 2555 09-12-2018 12:53 conf.d/available_vhosts/aem_lc.vhost 41 09-12-2018 12:53 conf.modules.d/00-lua.conf 2234 09-12-2018 12:53 conf.dispatcher.d/filters/ams_publish_filters.any 220 09-12-2018 12:53 conf.dispatcher.d/cache/ams_publish_invalidate_allowed.any 402 09-12-2018 12:53 conf.dispatcher.d/dispatcher.any 573 09-12-2018 12:53 conf.d/whitelists/000_base_whitelist.rules 871 09-12-2018 12:53 conf.d/available_vhosts/aem_flush.vhost 139 09-12-2018 12:53 conf.modules.d/00-dav.conf 742 09-12-2018 12:53 conf.dispatcher.d/filters/ams_author_filters.any 557 09-12-2018 12:53 conf.dispatcher.d/cache/ams_publish_cache.any 105 09-12-2018 12:53 conf.dispatcher.d/vhosts/ams_lc_vhosts.any 101 09-12-2018 12:53 conf.dispatcher.d/vhosts/ams_publish_vhosts.any 3582 09-12-2018 12:53 conf.d/dispatcher_vhost.conf 2529 09-12-2018 12:53 conf.d/available_vhosts/aem_publish.vhost 742 09-12-2018 12:53 conf.modules.d/00-mpm.conf 88 09-12-2018 12:53 conf.dispatcher.d/filters/ams_lc_filters.any 177 09-12-2018 12:53 conf.dispatcher.d/clientheaders/ams_lc_clientheaders.any 366 09-12-2018 12:53 conf.d/README 2723 09-12-2018 12:53 conf.d/available_vhosts/aem_author.vhost 3739 09-12-2018 12:53 conf.modules.d/00-base.conf 138 09-12-2018 12:53 conf.dispatcher.d/renders/ams_author_renders.any 44 09-12-2018 12:53 conf.dispatcher.d/clientheaders/ams_publish_clientheaders.any 112 09-12-2018 12:53 conf.dispatcher.d/vhosts/ams_author_vhosts.any 580 09-12-2018 12:53 conf.d/variables/ams_default.vars 35 09-12-2018 12:53 conf.d/enabled_vhosts/aem_flush.vhost 1252 09-12-2018 12:53 conf.d/userdir.conf 451 09-12-2018 12:53 conf.modules.d/01-cgi.conf 321 09-12-2018 12:53 conf.dispatcher.d/renders/ams_publish_renders.any 170 09-12-2018 12:53 conf.dispatcher.d/clientheaders/ams_author_clientheaders.any 220 09-12-2018 12:53 conf.d/rewrites/xforwarded_forcessl_rewrite.rules 1753 09-12-2018 12:53 conf.d/available_vhosts/aem_health.vhost --------- ------- 69017 66 files