Dispatcher Configurations manage-your-dispatcher-configurations

Lär dig hur du distribuerar dispatcherkonfigurationsfiler med Cloud Manager

Distribuera Dispatcher Configurations med Cloud Manager deploying-dispatcher-configurations

Cloud Manager kan distribuera webbservrar och Dispatcher konfigurationsfiler förutsatt att de lagras i Git-databasen tillsammans med vanliga AEM.

För att kunna utnyttja den här funktionen bör Maven-bygget skapa en ZIP-fil som innehåller minst två kataloger: conf och conf.d. Den här ZIP-filen kan skapas med maven-assembly-plugin.

Projekt som genererats av Cloud Manager med den inbyggda projektguiden har rätt projektstruktur i Maven som skapas automatiskt. Detta är den rekommenderade sökvägen om du inte är i Adobe Managed Services (AMS).

När innehållet i dessa kataloger på Dispatcher-instansen distribueras till en dispatcher-instans skrivs det över av dem i Git-databasen. Eftersom webbservern och Dispatcher konfigurationsfiler ofta kräver miljöspecifik information för att den här funktionen ska kunna användas på rätt sätt, måste du först arbeta med dina Customer Success Engineers (CSE) för att ange dessa miljövariabler i /etc/sysconfig/httpd.

Dispatcher-konfiguration för befintliga hanterade tjänstkunder steps-for-configuring-dispatcher

Följ de här stegen nedan för att slutföra den första Dispatcher-konfigurationen.

  1. Hämta aktuella produktionskonfigurationsfiler från din CSE.
  2. Ta bort hårdkodade miljöspecifika data, till exempel IP för publiceringsrendering och ersätt med variabler.
  3. Definiera obligatoriska variabler i nyckelvärdepar för varje mål-Dispatcher och begär att CSE lägger till dem i /etc/sysconfig/httpd för varje instans.
  4. Testa de uppdaterade konfigurationerna i testmiljön.
  5. Begär att CSE distribuerar till produktionen när det har testats.
  6. Spara filerna i Git-databasen.
  7. Driftsätt via Cloud Manager.
NOTE
Du kan migrera Dispatcher- och webbserverkonfigurationer till din Git-databas under Cloud Manager-introduktionen, men detta kan även göras vid en senare tidpunkt.

Exempel example

Den specifika fil- och katalogstrukturen kan variera beroende på projektets specifika egenskaper, men i det här exemplet bör du få en handledning om hur du strukturerar projektet så att det omfattar Apache- och Dispatcher-konfigurationer.

  1. Skapa en underkatalog med namnet dispatcher.

    Du kan använda vilket namn som helst här, men katalognamnet som skapas i det här steget måste vara samma som namnet som används i steg 6.

  2. Den här underkatalogen innehåller en Maven-modul som bygger Dispatcher ZIP-filen med Maven Assembly-pluginen. Börja med att skapa en pom.xml-fil med det här innehållet i katalogen dispatcher och ändra parent -referensen, artifactId och name efter behov.

    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>
    
    • Precis som i steg 1 kan artefactId och name här vara andra värden om du vill. dispatcher används här som ett exempel.
  3. Plugin-programmet Maven Assembly kräver descriptor för att definiera hur ZIP-filen ska skapas. Om du vill skapa den här beskrivningen skapar du en fil i underkatalogen dispatcher med namnet assembly.xml med följande innehåll. Observera att det här filnamnet refereras på rad 26 i filen pom.xml ovan.

    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>
    
  4. Skapa en underkatalog med namnet src (som det refereras till i sammansättningsbeskrivningen ovan på rad 11) inuti dispatcher-underkatalogen för att lagra de faktiska Apache- och Dispatcher-konfigurationerna. Skapa kataloger med namnen conf, conf.d, conf.dispatcher.d och conf.modules.d i den här src-katalogen.

  5. Fyll i katalogerna conf, conf.d, conf.dispatcher.d och conf.modules.d med konfigurationsfilerna. Standardkonfigurationen består till exempel av dessa filer och symboliska länkar.

    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
    
  6. Till sist lägger du till ett <module>-element i pom.xml-filen i projektets rot för att inkludera dispatchermodulen.

    Om din befintliga modullista till exempel är

    code language-xml
        <modules>
            <module>core</module>
            <module>ui.apps</module>
            <module>ui.content</module>
        </modules>
    

    Du bör ändra den till

    code language-xml
        <modules>
            <module>core</module>
            <module>ui.apps</module>
            <module>ui.content</module>
            <module>dispatcher</module>
        </modules>
    
    • Som anges i steg 1 måste värdet för elementet <module> matcha det katalognamn som skapas.
  7. Testa genom att köra mvn clean package i projektets rotkatalog. Du bör se linjer som detta i utdata.

    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
    

    Du kan även packa upp den här filen för att visa dess innehåll.

    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
    
recommendation-more-help
c6cdc82b-cee9-48e0-a6ee-48149d5e72c3