weblogic im docker container
Post on 15-Apr-2017
7.640 Views
Preview:
TRANSCRIPT
DOAG 2015, Nürnberg
Andreas Koop
WEBLOGIC IM DOCKER CONTAINER
WebLogic WebLogic
WebLogic
Andreas Koop Geschäftsführung
& ConsultingABOUT ME
Consulting, Training Oracle Technology Oracle ADF Certified Implementation SpecialistCertified Professional for Software ArchitectureProfessional Scrum MasterCommunity DOAG, ADF EMG, ADF German Community, Google Plus,Twitter @andreaskoop @enpitBlogNews - http://www.enpit.de/blog Technical (english) - http://multikoop.blogspot.com
2
www.scope-alliance.de
ENTERPRISE PRAGMATIC IT
DOAG 2014, Nürnberg, Andreas Koop
AGENDA
Evolution der Systemumgebungen und -techniken
Docker Grundlagen
WebLogic in Docker, Topologien
Herausforderungen & Best Practices
Fazit & Ausblick
4
Andreas Koop
EVOLUTION DER SYSTEMUMGEBUNGEN UND -TECHNIKEN
5
Physical Server
VirtualisierungVMWare, Virtualbox, Oracle VM, kvm, …
ProvisionierungVagrant, Puppet, Chef, Ansible, …
ContainerDocker, rkt, …
„On-The-Fly“AWS Lambda, nginScript VM …
DOAG 2015, Nürnberg, Andreas Koop
VIRTUAL MACHINE VS CONTAINER
6
Maschine
Host OS
Hypervisor
Guest OS
Bins/Libs
App 1
Maschine
OS
Bins/Libs
App 1
Container - Engine
Guest OS
Bins/Libs
App 2
Guest OS
Bins/Libs
App 3
Bins/Libs
App 2
Bins/Libs
App 3
DOAG 2015, Nürnberg, Andreas Koop
CONTAINER-TECHNOLOGIE IST HIP‣ Isolierte Prozessumgebung
‣ Schnell
‣ Leichtgewichtig
‣ Unveränderlich & Flüchtig
‣ Schnelle Bereitstellung
‣ Einfache Verteilung7
Andreas Koop
DOCKER GRUNDLAGEN
8
Image Docker HubDockerfile
Registry
Container
build push
pull
…
runcommit
‣ bel. viele Container sind startbar
‣ Distribution auf beliebige Umgebungen
FROM oraclelinux:7.0…RUN rpm -i /u01/$JRPM…USER oracle
RUN java -jar $WLS....CMD [„startSmth.sh"]
DOAG 2015, Nürnberg, Andreas Koop
DOCKER IMAGE LAYERING
9
bootfs/kernel
Base Image ubuntu: 14Image
Image
apache:2.0wordpress: 3.3
Image my/wpsite: 1.0
ContainerContainerContainerContainer some_name 1..n
„copy on write fs“
DOAG 2015, Nürnberg, Andreas Koop
DOCKER INTERACTION
10
Docker Client
Docker Host (Linux)RegistryDocker Daemon
Containers
Images
docker builddocker rundocker pulldocker push…
DOAG 2015, Nürnberg, Andreas Koop
DOCKER GETTING STARTED‣ Docker Toolbox
(incl. Virtualbox & Kitematic)
‣ Mac/Win: Linux Host VM
11
Mac OS
Docker Client
boot2docker (Linux VM)
Docker Daemon
Container 1ContainerContainer
docker-machine create …
DEMO
docker build ...
BASICS
docker run ...
docker ps ...
docker stop ...
docker rm ...
DOAG 2014, Nürnberg, Andreas Koop
AGENDA
Evolution der Systemumgebungen und -techniken
Docker Grundlagen
WebLogic in Docker, Topologien
Herausforderungen & Best Practices
Fazit & Ausblick
13
DOAG 2015, Nürnberg, Andreas Koop
WEBLOGIC ON DOCKER OVERVIEW
14
Base Image: Oracle Linux 7 oraclelinux: 7Image: JDK 7 und WebLogic Bin
Image: WebLogic Domain
weblogic:12.2.1my/weblogicdomain:12.2.1
ContainerContainerContainer
Development
Image: WebLogic App 1 my/weblogicapp1:1.0
ContainerContainerContainer
Test
ContainerContainerContainer
Prod
DOAG 2015, Nürnberg, Andreas Koop
ORACLE ZERTIFIZIERUNG WEBLOGIC ON DOCKER
15
WebLogic JDK Host OS (Kernel) Docker
12.2.1 8 OL 6 UL 6 (3.8.13) OL 7 (3.8.13 / 3.10) 1.7+
12.2.1 8 RHEL 7 (3.10) 1.7+
12.1.3 7 / 8 OL 6 UL 5 (3.8.13) OL 7 (3.8.13 / 3.10) 1.3.3+
12.1.3 7 / 8 RHEL 7 (3.10) 1.3.3+
https://blogs.oracle.com/WebLogicServer/entry/oracle_weblogic_server_12_21
DOAG 2015, Nürnberg, Andreas Koop
BASE IMAGE
16
‣ Nothing to do! Oracle Linux 7, offizielles Image auf Docker-Hub verfügbar
Für alle Neugierigen. So schaut das Dockerfile aus
DOAG 2015, Nürnberg, Andreas Koop
‣ Kein „fertiges Image“ auf Docker-Hub verfügbar. wegen notw. „OTN Licence Agreement“ f. JDK / WLS Selber bauen.
JDK / WEBLOGIC IMAGE
17
Dockerfile für Developer- oder Generic-Installer verfügbar
12.1.3 und 12.2.1
docker build -t oracle/weblogic:12.2.1-dev .
DOAG 2015, Nürnberg, Andreas Koop
‣ Domain ist individuell. Docker-Image muss gebaut werden. Beispiele auf GitHub 12.1.3 / 12.2.1
WEBLOGIC DOMAINIMAGE
18
docker build -t enpit/samplewls:12.2.1-dev .
DOAG 2015, Nürnberg, Andreas Koop
WEBLOGIC DOCKER CONTAINER
19
WebLogic Docker Image
Container
AdminServer
Container
Managed Server
NodeManager
WebLogic Domain
…
2 Typen von WebLogic Containern möglich
DOAG 2015, Nürnberg, Andreas Koop
RUN WEBLOGIC CONTAINERS
20
docker run -d --name=wlsms1 --link wlsadmin:wlsadmin -p 7001:7001 -p 5556:5556 enpit/samplewls:12.2.1-dev createServer.sh
Run Base-Domain / AdminServer
Add Managed Server (Must be manually started)
docker run -d —name=wlsadmin -p 8001:8001 enpit/samplewls:12.2.1-dev
docker run -d --name=wlsms2 --link wlsadmin:wlsadmin enpit/samplewls:12.2.1-dev createServer.sh
…
Andreas Koop 21
DEMO
DOAG 2015, Nürnberg, Andreas Koop
‣ Dockerfile + App (WAR or EAR) + WLST Skripts Step 1: Prepare WLST script(s)
WEBLOGIC APP IMAGE (1/2)
22
DOAG 2015, Nürnberg, Andreas Koop
‣ Step 2: Dockerfile -> Run WLST Script
WEBLOGIC APP IMAGE (2/2)
23
docker build -t enpit/shoppingcart:1.0-dev .
DOAG 2015, Nürnberg, Andreas Koop
RUN WEBLOGIC APP CONTAINERS
24
docker run -d -p 8001:8001 enpit/shoppingcart:1.0-dev
Run WebLogic Application (WAR)
DOAG 2015, Nürnberg, Andreas Koop
WEBLOGIC DOCKER TOPOLOGIEN
25
DOAG 2015, Nürnberg, Andreas Koop
TYPISCHE CONTAINER TOPOLOGIE
26
Linux Host 2 Container2WLS Domain(Admin)Server
App
Container3WLS Domain(Admin)Server
App
…
Linux Host 1Container1WLS Domain(Admin)Server
App
…
…
Load-Balancer
(OHS, OTD)
DOAG 2015, Nürnberg, Andreas Koop
TYPISCHE CONTAINER TOPOLOGIE‣ Jeder Container ist eine Instanz der selben
WebLogic Domain
‣ Alle Apps, Datenquellen, JMS, Libs werden auf den AdminServer bereitgestellt.
‣ „Docker-Way“ Topologie
‣ Kein Session-Failover möglich
‣ Einfach27
DOAG 2015, Nürnberg, Andreas Koop
Linux Host 1WLS Domain
KLASSISCHE WEBLOGIC TOPOLOGIE
28
Container1AdminServer
Dynamic Cluster
Load-Balancer
(OHS, OTD)
Container2ManagedServer
App
Container3ManagedServer
App
NodeManager NodeManager
…
! Stand heute kein Multi-Host Support
DOAG 2015, Nürnberg, Andreas Koop
KLASSISCHE WEBLOGIC TOPOLOGIE‣ Aus einem Image können 2 unterschiedliche
Container-Typen gestartet werden.
‣ Alle Apps, Datenquellen, JMS, Libs werden auf ManagedServern bereitgestellt.
‣ Klassische Topologie, Docker untypisch
‣ Session-Failover möglich
‣ Komplex(er)29
DOAG 2014, Nürnberg, Andreas Koop
AGENDA
Evolution der Systemumgebungen und -techniken
Docker Grundlagen
WebLogic in Docker, Topologien
Herausforderungen & Best Practices
Fazit & Ausblick
30
DOAG 2015, Nürnberg, Andreas Koop
HERAUSFORDERUNGEN
31
MIT PERSPEKTIVE
DOAG 2015, Nürnberg, Andreas Koop
HERAUSFORDERUNGEN IN EINER CONTAINER WELT‣ Persistente Daten - Datenbank, Logs, „State“…
=> Volume Management (Data Containers, …)
‣ Container-Linking/Orchestrierung, Service-Discovery => Cluster-Management (Swarm, Kubernetes, Mesosphere, …)
‣ Monitoring=> Sensu, cAdvisor, Prometheus, …
‣ Neue Betriebsprozesse, SW-Architekturen => Skills, Organisationsstrukturen, Agilität
32
DOAG 2015, Nürnberg, Andreas Koop
PERSPEKTIVE‣ Improved Networking in Docker 1.9 => linking
becomes deprecated. Multi-Host Support!
‣ Service Discovery / Cluster, Scheduling-Management mit docker swarm und etcd, consul oder zookeeper
‣ Standardisierung von Microservice-Architekturen
‣ new: Oracle Docker Cloud Service
33
DOAG 2015, Nürnberg, Andreas Koop
BEST PRACTICE
34
DOAG 2015, Nürnberg, Andreas Koop
ERSTELLUNG VON WEBLOGIC IMAGES‣ Images klein halten! Insbesondere auch die
einzelnen Layer. (Cleanup nicht vergessen bei yum / apt-get / Installationsfiles !)
‣ Ggf. Nutzung bestehender Provisionierungsskripte wie Puppet, Chef, Ansible
‣ Bonus: Bereitstellung eines build.sh Skripts
35
DOAG 2015, Nürnberg, Andreas Koop
MULTI CONTAINER SETUP MIT DOCKER-COMPOSE
36
weblogic
…
oradb
docker-compose up -d
DOAG 2015, Nürnberg, Andreas Koop
UPGRADE / PATCHING‣ Erweiterung des Basis WebLogic Docker Images
‣ Neue Container können anschließend vom gepatchten Image gestartet werden.
37
oraclelinux: 7
weblogic:12.2.1-dev
weblogic:12.2.2p-dev
weblogic:12.2.3p-dev
DOAG 2015, Nürnberg, Andreas Koop
WEBLOGIC ON DOCKER IN DER SW-ENTWICKLUNG‣ Überschaubare Komplexität. Geringes Investment
‣ Neben WebLogic-Umgebungen können auch ganze Entwicklungsumgebungen inkl. IDE erstellt werden. Zugriff erfolgt dann via X11, VNC, RDP oder XRDP.
‣ Es lohnt sich sich mit Docker zu befassen!
38
DOAG 2014, Nürnberg, Andreas Koop
AGENDA
Evolution der Systemumgebungen und -techniken
Docker Grundlagen
WebLogic in Docker, Topologien
Herausforderungen & Best Practices
Fazit & Ausblick
39
DOAG 2015, Nürnberg, Andreas Koop
ZUSAMMENFASSUNG & FAZIT‣ Docker macht Spaß, ist schnell. Container sind
kurzlebig. Umdenken notwendig.
‣ Auswirkungen Software- & Systemarchitektur: Neue Herausforderungen bzgl. Service-Discovery, Container-Cluster-Management, Monitoring!
‣ Isolation, Mandantenfähigkeit, Cluster-Management auf Container-Ebene zu erwarten
‣ Produktivumgebungen sind nicht zu unterschätzen
40
DOAG 2015, Nürnberg, Andreas Koop
WEITERE INFORMATIONEN‣ The Docker Book
‣ WebLogic 12.2.1 on Docker Dochttp://docs.oracle.com/middleware/1221/wls/DOCKR/overvew.htm
‣ WebLogic Docker Whitepaper (June 2015) http://www.oracle.com/technetwork/middleware/weblogic/overview/weblogic-server-docker-containers-2491959.pdf
‣ WebLogic Dockerfiles on GitHub.com https://github.com/oracle/docker/tree/master/OracleWebLogic
41
VIELEN DANK FÜR IHRE AUFMERKSAMKEIT
HABEN SIE NOCH FRAGEN?
DOAG 2015, Nürnberg 43
Treffen Sie uns am Stand der scope alliance auf Ebene 1
top related