Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

WebLogic im Docker Container

1.290 Aufrufe

Veröffentlicht am

Presentation by Andreas Koop on WebLogic Basics and how to run WebLogic 12.2.1 in Docker. Talk was given at DOAG 2015 in Nürnberg, Germany.

Veröffentlicht in: Präsentationen & Vorträge
  • Als Erste(r) kommentieren

WebLogic im Docker Container

  1. 1. DOAG 2015, Nürnberg Andreas Koop WEBLOGIC IM DOCKER CONTAINER WebLogic WebLogic WebLogic
  2. 2. Andreas Koop Geschäftsführung & ConsultingABOUT ME Consulting, Training Oracle Technology
 Oracle ADF Certified Implementation Specialist
 Certified Professional for Software Architecture
 Professional Scrum Master
 
 Community
 DOAG, ADF EMG, ADF German Community, Google Plus,
 Twitter @andreaskoop @enpit
 
 Blog
 News - http://www.enpit.de/blog
 Technical (english) - http://multikoop.blogspot.com 2 www.scope-alliance.de
  3. 3. ENTERPRISE PRAGMATIC IT
  4. 4. DOAG 2014, Nürnberg, Andreas Koop AGENDA Evolution der Systemumgebungen und -techniken Docker Grundlagen WebLogic in Docker, Topologien Herausforderungen & Best Practices Fazit & Ausblick 4
  5. 5. Andreas Koop EVOLUTION DER SYSTEMUMGEBUNGEN UND - TECHNIKEN 5 Physical Server Virtualisierung VMWare, Virtualbox, Oracle VM, kvm, … Provisionierung Vagrant, Puppet, Chef, Ansible, … Container Docker, rkt, … „On-The-Fly“ AWS Lambda, nginScript VM …
  6. 6. 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
  7. 7. DOAG 2015, Nürnberg, Andreas Koop CONTAINER-TECHNOLOGIE IST HIP ‣ Isolierte Prozessumgebung ‣ Schnell ‣ Leichtgewichtig ‣ Unveränderlich & Flüchtig ‣ Schnelle Bereitstellung ‣ Einfache Verteilung 7
  8. 8. Andreas Koop DOCKER GRUNDLAGEN 8 Image Docker Hub Dockerfile Registry Container build push pull … run commit ‣ 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"]
  9. 9. DOAG 2015, Nürnberg, Andreas Koop DOCKER IMAGE LAYERING 9 bootfs/kernel Base Image ubuntu: 14 Image Image apache:2.0 wordpress: 3.3 Image my/wpsite: 1.0 ContainerContainerContainerContainer some_name 1..n „copy on write fs“
  10. 10. DOAG 2015, Nürnberg, Andreas Koop DOCKER INTERACTION 10 Docker Client Docker Host (Linux) RegistryDocker Daemon Containers Images docker build docker run docker pull docker push …
  11. 11. 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 …
  12. 12. DEMO docker build ... BASICS docker run ... docker ps ... docker stop ... docker rm ...
  13. 13. DOAG 2014, Nürnberg, Andreas Koop AGENDA Evolution der Systemumgebungen und -techniken Docker Grundlagen WebLogic in Docker, Topologien Herausforderungen & Best Practices Fazit & Ausblick 13
  14. 14. DOAG 2015, Nürnberg, Andreas Koop WEBLOGIC ON DOCKER OVERVIEW 14 Base Image: Oracle Linux 7 oraclelinux: 7 Image: JDK 7 und WebLogic Bin Image: WebLogic Domain weblogic:12.2.1 my/weblogicdomain:12.2.1 ContainerContainerContainer Development Image: WebLogic App 1 my/weblogicapp1:1.0 ContainerContainerContainer Test ContainerContainerContainer Prod
  15. 15. 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
  16. 16. 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
  17. 17. 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 .
  18. 18. DOAG 2015, Nürnberg, Andreas Koop ‣ Domain ist individuell. Docker-Image muss gebaut werden. Beispiele auf GitHub 12.1.3 / 12.2.1 WEBLOGIC DOMAIN
 IMAGE 18 docker build -t enpit/samplewls:12.2.1-dev .
  19. 19. 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
  20. 20. 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 …
  21. 21. Andreas Koop 21 DEMO
  22. 22. 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
  23. 23. 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 .
  24. 24. DOAG 2015, Nürnberg, Andreas Koop RUN WEBLOGIC APP CONTAINERS 24 docker run -d -p 8001:8001 wls-shoppingcart-app Run WebLogic Application (WAR)
  25. 25. DOAG 2015, Nürnberg, Andreas Koop WEBLOGIC DOCKER TOPOLOGIEN 25
  26. 26. DOAG 2015, Nürnberg, Andreas Koop TYPISCHE CONTAINER TOPOLOGIE 26 Linux Host 2 Container2 WLS Domain (Admin)Server App Container3 WLS Domain (Admin)Server App … Linux Host 1 Container1 WLS Domain (Admin)Server App … … Load- Balancer (OHS, OTD)
  27. 27. 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 ‣ Einfach 27
  28. 28. DOAG 2015, Nürnberg, Andreas Koop Linux Host 1 WLS Domain KLASSISCHE WEBLOGIC TOPOLOGIE 28 Container1 AdminServer Dynamic Cluster Load- Balancer (OHS, OTD) Container2 ManagedServer App Container3 ManagedServer App NodeManager NodeManager … ! Stand heute kein Multi-Host Support
  29. 29. 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
  30. 30. DOAG 2014, Nürnberg, Andreas Koop AGENDA Evolution der Systemumgebungen und -techniken Docker Grundlagen WebLogic in Docker, Topologien Herausforderungen & Best Practices Fazit & Ausblick 30
  31. 31. DOAG 2015, Nürnberg, Andreas Koop HERAUSFORDERUNGEN 31 MIT PERSPEKTIVE
  32. 32. 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
  33. 33. 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
  34. 34. DOAG 2015, Nürnberg, Andreas Koop BEST PRACTICE 34
  35. 35. 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
  36. 36. DOAG 2015, Nürnberg, Andreas Koop MULTI CONTAINER SETUP MIT DOCKER-COMPOSE 36 weblogic … oradb docker-compose up
  37. 37. 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
  38. 38. 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
  39. 39. DOAG 2014, Nürnberg, Andreas Koop AGENDA Evolution der Systemumgebungen und -techniken Docker Grundlagen WebLogic in Docker, Topologien Herausforderungen & Best Practices Fazit & Ausblick 39
  40. 40. 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
  41. 41. DOAG 2015, Nürnberg, Andreas Koop WEITERE INFORMATIONEN ‣ The Docker Book ‣ WebLogic 12.2.1 on Docker Doc
 http://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
  42. 42. VIELEN DANK FÜR IHRE AUFMERKSAMKEIT HABEN SIE NOCH FRAGEN?
  43. 43. DOAG 2015, Nürnberg 43 Treffen Sie uns am Stand der scope alliance auf Ebene 1

×