Upload
others
View
7
Download
0
Embed Size (px)
Citation preview
<Insert Picture Here>
Aufbau einer hochverfgbaren SOA Service Infrastruktur mit der SOA Suite 11gThomas RobertMaster Principal Sales ConsultantOracle Deutschland GmbH
The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions.The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.
<Insert Picture Here>
Agenda
• Installationen• SOA Konfigurationen• BAM Konfigurationen
Überblick
• Grundlage des Vortrags ist• Enterprise Deployment Guide• High Availability Guide• Concepts Guide
• Fokus ist Konfiguration des SOA Clusters• Anbindung an Identity
Management wird nicht betrachtet
WebLogic Domäne
Überblick Plattenlayout
Oracle Instance
Middleware Home
SOA Oracle Home WebLogic Server HomeWebtier Oracle Home
SOA Domain
Admin Server SOA Server 1 SOA Server 2
Oracle HTTP Server
Webcache
Shared
Non Shared
Shared oder Non Shared
Unterverzeichnis
Nutzt Binaries, nicht notwendig Unterverzeichnis
SOAHost-2SOAHost-1
WebHost-1 WebHost-2
Überblick Netzlayout
Loadbalancer
soa.com
soainternal.com
OHS OHS
AdminServer SOA 1 BAM 1 AdminServer
admin-vip.com soa1-vip.com bam-vip.com soa2-vip.com
SOA 1 BAM 1
admin.com
WSM 1 SOA 2 BAM 2WSM 2
Repository Creation Utility (RCU)
• Eigene DVD / Zip-File• Aufruf mit rcuHome/bin/rcu• Überprüft Voraussetzungen• Angabe eines Prefix ermöglicht mehrere MDS in einer
Datenbank• Tablespaces können angepasst werden• Komponenten können ausgewählt werden• Empfohlen wird, eigenen Servicenamen in RAC DB
einzurichten
RCU – Auswahl der Komponenten
RCU – Anlegen der Tablespaces
RCU - Summary
Oracle HTTP Server
• Installation von „Webtier Utilities“ DVD• Trennung von Binaries (ORACLE_HOME) und
Konfiguration (ORACLE_INSTANCE)• Installation und Konfiguration getrennt möglich• Gemeinsame Installation in shared ORACLE_HOME möglich• Mind. zwei ORACLE_HOMEs empfohlen (wg. Patching)• Konfiguration pro Rechner auf „lokales“*) Volume
*) „lokal“ meint „rechnerspezifisches“ Filesystem, das natürlich auch auf einem gesharten Device liegen kann
OHS - Installation und Konfiguration
OHS - Installations-Überblick
• Trennung von• ORACLE_HOME
(Binaries) und• ORACLE_INSTANCE
(Konfiguration)
OHS – Konfiguration des 2. Knotens
Oracle WebLogic Server
• Trennung von Binaries und Domänen-Informationen• Installation in Shared
Filesystem möglich• Mindestens zwei
WEBLOGIC_HOMEs empfohlen (wg. Patching)
• Domänen in lokales*)
Verzeichnis• Wird Nodemanager aus
gemeinsamem Shared Verzeichnis aufgerufen, sollten die Domänen-Verzeichnisse auf allen Knoten identisch sein
*) „lokal“ meint „rechnerspezifisches“ Filesystem, das natürlich auch auf einem gesharten Device liegen kann
SOA Suite Installation
• Installation der SOA Komponenten • In shared Verzeichnis möglich• Mind. zwei ORACLE_HOMES
empfohlen (wg. Patching)
• ORACLE_HOME ist Unterverzeichnis des MIDDLEWARE_HOME
<Insert Picture Here>
Agenda
• Installation• SOA Konfigurationen• BAM Konfigurationen
Konfigurieren der Admin-Domäne
• Aufruf des WLS Configuration-Assistant• Aktivieren des WSM Policy Managers und der Java Required
Files (JRF):
• Die Admin Domäne sollte auf einem Shared Filesystem liegen (wegen Admin Server Failover)
• SOA und BAM können hier bereits mit ausgewählt werden (EDG schlägt andere Reihenfolge vor)
export CONFIG_JVM_ARGS=-DTemplateCatalog.enable.selectable.all=trueexport CONFIG_JVM_ARGS=-DTemplateCatalog.enable.selectable.all=true
RAC-Anbindung einrichten
Managed Server konfigurieren und clustern
Weblogic Konsole
Enterprise Manager Konsole
Webserver registrieren
• WebLogic Server registrieren
./opmnctl registerinstance \-adminHost stuopteronhh1-adminvip \-adminPort 7001 \-adminUsername weblogic
./opmnctl registerinstance \-adminHost stuopteronhh1-adminvip \-adminPort 7001 \-adminUsername weblogic
OHS Konfiguration
• Virtuelle Hosts in die httpd.conf
• Routing Regeln in die mod_wl_ohs.conf• Innerhalb <IfModule>
Tag, damit die Einträge in der Admin Konsole angezeigt werden
<IfModule weblogic_module># WSM-PM <Location /wsm-pm>
SetHandler weblogic-handler WebLogicCluster stuopteronhh1:7010,stuopteronhh2:7010
</Location>
# Admin Server and EM <Location /console>
SetHandler weblogic-handler WebLogicHost stuopteronhh1-adminvip WeblogicPort 7001
</Location> <Location /consolehelp>
SetHandler weblogic-handler WebLogicHost stuopteronhh1-adminvip WeblogicPort 7001
</Location> <Location /em>
SetHandler weblogic-handler WebLogicHost stuopteronhh1-adminvip WeblogicPort 7001
</Location></IfModule>
<IfModule weblogic_module># WSM-PM <Location /wsm-pm>
SetHandler weblogic-handler WebLogicCluster stuopteronhh1:7010,stuopteronhh2:7010
</Location>
# Admin Server and EM <Location /console>
SetHandler weblogic-handler WebLogicHost stuopteronhh1-adminvip WeblogicPort 7001
</Location> <Location /consolehelp>
SetHandler weblogic-handler WebLogicHost stuopteronhh1-adminvip WeblogicPort 7001
</Location> <Location /em>
SetHandler weblogic-handler WebLogicHost stuopteronhh1-adminvip WeblogicPort 7001
</Location></IfModule>
OHS Konfiguration
• Virtuelle Hosts in die httpd.conf
• Routing Regeln in die mod_wl_ohs.conf• Innerhalb <IfModule>
Tag, damit die Einträge in der Admin Konsole angezeigt werden
• Oder über die Admin Konsole
Cluster Konfiguration m. Coherence
• SOA Clustering � WLS Clustering• Coherence wird benutzt, um Informationen im SOA Cluster zu
verteilen
JMS Ziele einrichten
• JMS Queues/Topics clustern • Uniform Distributed Destinations (UDD)
java weblogic.WLST soa-createUDD.py \--domain_home /oradata/OracleAS/admin/admin_domain/adminServer/admin_domain \--soacluster SOA_Cluster
java weblogic.WLST soa-createUDD.py \--domain_home /oradata/OracleAS/admin/admin_domain/adminServer/admin_domain \--soacluster SOA_Cluster
Domäne verteilen
• Domäne packen
• Und auf allen Knoten wieder entpacken
/oradata/OracleAS/bea/soa/common/bin> ./pack.sh \-managed=true \-domain=/oradata/OracleAS/admin/admin_domain/adminServer/admin_domain \-template=soadomaintemplateExtSOA.jar \-template_name=soa_domain_templateExtSOA
/oradata/OracleAS/bea/soa/common/bin> ./pack.sh \-managed=true \-domain=/oradata/OracleAS/admin/admin_domain/adminServer/admin_domain \-template=soadomaintemplateExtSOA.jar \-template_name=soa_domain_templateExtSOA
/oradata/OracleAS/bea/soa/common/bin> ./unpack.sh \-domain=/u01/OracleAS/11.1/soa/managedServer/soa \-template=soadomaintemplateExtSOA.jar \–app_dir=/u01/OracleAS/11.1/soa/managedServer/apps
/oradata/OracleAS/bea/soa/common/bin> ./unpack.sh \-domain=/u01/OracleAS/11.1/soa/managedServer/soa \-template=soadomaintemplateExtSOA.jar \–app_dir=/u01/OracleAS/11.1/soa/managedServer/apps
URLs anpassen
• Folgende URL-Parameter müssen auf die Loadbalancer Adresse angepasst werden:• WLS SOA Cluster Frontend
Host und Port• Ggf. Server CallBack URL
• Auf jedem Knoten!
Server Callback URL anpassen
Persistence Stores anpassen
• Persistence Stores auf Shared Filesystem legen:• JMS:
• Services => Persistence Stores => <Store Name> => Configuration
• Directory auf Shared Filesystem legen, z.B.
• JTA:• Environment => Servers => <SOA Server Name> =>
Configuration => Services (Achtung, dies ist der Services Tab UNTER (nicht neben) dem Configuration Tab)
• Default Store Directory auf Shared Filesystem legen, z.B.
/oradata/OracleAS/admin/admin_domain/SOA_Cluster/jms/<Store Name>/oradata/OracleAS/admin/admin_domain/SOA_Cluster/jms/<Store Name>
/oradata/OracleAS/admin/admin_domain/SOA_Cluster/jtlogs/oradata/OracleAS/admin/admin_domain/SOA_Cluster/jtlogs
Adapter clustern
• File-Adapter: Control-Directory und Deployment Plan auf Shared Device:• Deployments => FileAdapter => Configuration => Outbound
Connection Pools => java.resource.cci.Connectionfactory erweitern und eis/HAFileAdapter modifizieren
• controlDir auf /oradata/OracleAS/admin/admin_domain/SOA_Cluster/fadapter
• Nach SAVE Deployment Plan auf /oradata/OracleAS/admin/admin_domain/SOA_Cluster/dp/Plan.xml legen
• DB-Adapter: DeletePollingStrategy anpassen um doppelte Reads zu verhindern
<Insert Picture Here>
Agenda
• Installationen• SOA Konfigurationen• BAM Konfigurationen
Business Activity Monitoring (BAM)
BAM Database Connection anlegen
BAM Cluster konfigurieren
BAM Datasource und JMS Ziele anpassen
• Statement Cache Size für Connection Pools beider BAM DataSources auf 0 setzten
• JMS Queues/Topics clustern
• Services -> Messaging -> JMS Modules -> UMSJMSSystemResource -> Targets• UMSJMSSystemResource vom BAM_Cluster entfernen
• JMS Persistence Store sollte bereits richtig konfiguriert sein• JTA Persistence Store der BAM Managed Server auf Shared
Device legen
java weblogic.WLST soa-createUDD.py \--domain_home /oradata/OracleAS/admin/admin_domain/adminServer/admin_domain \--bamcluster BAM_Cluster \--extend=true
java weblogic.WLST soa-createUDD.py \--domain_home /oradata/OracleAS/admin/admin_domain/adminServer/admin_domain \--bamcluster BAM_Cluster \--extend=true
BAM Server Singleton konfigurieren
• BAM Server von allen Managed Servern bis auf einen entfernen
Domäne verteilen
• Domäne packen und in neue Domain-Verzeichnisse entpacken
Oracle HTTP Server um OracleBAM Location erweitern
./unpack.sh \-domain=/u01/OracleAS/11.1/soa/managedServerBAM/soa \-template=soadomaintemplateBAM.jar \-app_dir=/u01/OracleAS/11.1/soa/managedServerBAM/apps
./unpack.sh \-domain=/u01/OracleAS/11.1/soa/managedServerBAM/soa \-template=soadomaintemplateBAM.jar \-app_dir=/u01/OracleAS/11.1/soa/managedServerBAM/apps
<Location /OracleBAM > SetHandler weblogic-handler WebLogicCluster stuopteronhh1-bamvip:9001,stuopteronhh2:9001
</Location>
<Location /OracleBAM > SetHandler weblogic-handler WebLogicCluster stuopteronhh1-bamvip:9001,stuopteronhh2:9001
</Location>
BAM Konfiguration
• BAM auf den einen BAM Server konfigurieren
BAM Konfiguration
• BAM auf den einen BAM Server konfigurieren• ADCServerName für Active Data Cache auf virtuellen
Hostnamen des BAMServers setzen
Server Migration einrichten
• Leasing Tabelle im Repository anlegen• Ggf. dafür eigenen User mit eigenem Tablespace anlegen
• MultiDataSource auf den Schema-Owner dieser Tabelle anlegen
• BAM Server für Server Migration konfigurieren
sqlplus username/password @$WL_HOME/server/db/oracle/920/leasing.ddlsqlplus username/password @$WL_HOME/server/db/oracle/920/leasing.ddl
Node Manager für Server Migration konfigurieren
• nodemanager.property Datei für VIP-Failover konfigurieren
• sudo Berechtigung für /sbin/ifconfig und /sbin/arping einrichten
Interface=eth0 NetMask=255.255.255.0 UseMACBroadcast=true
Interface=eth0 NetMask=255.255.255.0 UseMACBroadcast=true
# visudo
oraias ALL=NOPASSWD: /sbin/ifconfig,/sbin/arping
# visudo
oraias ALL=NOPASSWD: /sbin/ifconfig,/sbin/arping
BAM Cluster für Server Migration einrichten
• Potentielle Ziele für Server Migration angeben
BAM Cluster für Server Migration einrichten
• Potentielle Ziele für Server Migration angeben
• Server Migration für Singleton Server aktivieren
• Und Ziel-Rechner angeben
fertig