SlideShare ist ein Scribd-Unternehmen logo
1 von 57
DARWIN IT-PROFESSIONALS
IT Driven Evolution
The Kubernetes WebLogic Revival
Martien van den Akker, Darwin IT
Simon Haslam, eProseed
2019
martien.van.den.akker@darwin-it.nl @Makker_nl
Who I am
copyright Š2019 Darwin IT-Professionals B.V. 2
Copyright Š 2019, eProseed and/or its affiliates. All rights reserved. | Public
ABOUT ME
3
Simon Haslam
• Platform / Infrastructure
Architect
• Focus includes HA, DR,
security, automation
Relevant to this session
• WebLogic / FMW installations
since 2000s
• First research/webcast on JCS
in 2016
• Designed & built SOA CS
integration platform for global
use since Oct 2017
• On team migrating eProseed
Lux data centres to OCI@simon_haslam
since
2009
DarwinIT-Professionals
KUBERNETESOPERATOR
PART 2
copyright Š2019 Darwin IT-Professionals B.V. 5
Whybuild theWebLogic KubernetesOperator?
• Contains built-in knowledge
about how to perform lifecycle
operations on a domain
• Uses Kubernetes APIs to
automate lifecycle operations.
POD 1 POD 2
AS MS
POD 3
MS
POD 4 POD 5 POD 6
MS MSMS
WLS Cluster
Kubernetes Cluster
Manage
Pods
Kubernete
s
Operator
Orchestrate
WebLogic
copyright Š2019 Darwin IT-Professionals B.V. 6
WebLogic Kubernetes Operator
Manages lifecycle
operations (start,
stop, scale, rolling
restart, etc.) in
Kubernetes
Automate
configuration, e.g.
clustering,
channels/ports,
configuration
overrides
Supports standard k8s
idioms like sidecars,
init containers, custom
resources
1 2 3
Open source and fully supported https://github.com/oracle/weblogic-kubernetes-operator
copyright Š2019 Darwin IT-Professionals B.V. 7
DarwinIT-Professionals
DEPLOY WEBLOGIC IN KUBERNETES
copyright Š2019 Darwin IT-Professionals B.V. 8
WebLogic Domain in Kubernetes Operator
Domain Home in Image
Kubernete
s
Kubernetes Cluster
Customer Tenancy
Kubernetes
WLS Domain
Image
Repository
Operator
Image
Build Image
Create OKE
Cluster Kubernetes
copyright Š2019 Darwin IT-Professionals B.V. 9
Kubernete
s
Kubernetes Cluster
Customer Tenancy
WLS Domain
Image
Repository
Operator
Image
Kubernetes
Kubernetes
Secrets
Create Secrets
• Create secrets
Wls and Docker
Image Repository
(OCIR)
copyright Š2019 Darwin IT-Professionals B.V. 10
Customer Tenancy
WLS Domain
Image
Repository
Operator
Image
Kubernetes Cluster
Operator
Kubernetes
Secrets
InstallWeblogicOperator using Helm
Kubernetes
copyright Š2019 Darwin IT-Professionals B.V. 11
Customer Tenancy
WLS Domain
Image
Repository
Operator
Image
Kubernetes Cluster
Kubernetes
Operator
Kubernetes
Secrets
Install/ConfigTreafikLoadBalancer
copyright Š2019 Darwin IT-Professionals B.V. 12
Kubernetes Cluster
Operator
Customer Tenancy
Kubernetes
Secrets
Possiblycreate persistentvolume
Kubernetes
WLS Domain
Image
Repository
Operator
Image
copyright Š2019 Darwin IT-Professionals B.V. 13
WLS Domain
Image
Repository
Operator
Image
Kubernetes Cluster
Operator
Customer Tenancy
Kubernetes
Install Domain
inputs (yaml)
Secrets
Create a Domain.yaml
Kubernetes
copyright Š2019 Darwin IT-Professionals B.V. 14
Kubernete
s
Kubernetes Cluster
Operator
Domain
CR
Customer Tenancy
Kubernetes
Install Domain
inputs (yaml)
kubectl apply …
Secrets
WLS Domain
Image
Repository
Operator
Image
Apply Domain.yamlto CustomResource
Kubernetes
copyright Š2019 Darwin IT-Professionals B.V. 15
Kubernete
s
POD 1 POD 2
AS MS
POD 3
MS
POD 4 POD 5 POD 6
MS MSMS
WLS Cluster
Kubernetes Cluster
Operator
Domain
CR
Customer Tenancy
WebLogic Domain(s)
Kubernetes Logs
Secrets
Operator creatingpods
WLS Domain
Image
Repository
Operator
Image
copyright Š2019 Darwin IT-Professionals B.V. 16
GitHub,Wercker, OCI Registry & OKE
Push
Oracle Cloud Developer Services
Kubernetes
copyright Š2019 Darwin IT-Professionals B.V. 17
18copyright Š2019 Darwin IT-Professionals B.V.
Example cluster creation:
App page
WebLogic console
DEMO
DarwinIT-Professionals
TOPOLOGIES
copyright Š2019 Darwin IT-Professionals B.V. 19
2 TopologyModels
20copyright Š2019 Darwin IT-Professionals B.V.
Options Domain in PV/C Domain in Image
Domain Topology Changes Apply to domain in PV (wlst online) New Image
Configuration Changes
(tunables, credentials, …)
Change configuration in domain in PV Overrides Only
Patching New Image CI/CD (new image)
Application Updates Apply to domain in PV CI/CD (new image)
Management of PV/PVC More complex (filesystem shared per
domain)
Simple (not shared, per server)
Administration Console App deployments and Configuration
Changes, can not do lifecycle mgt.
Monitoring and Diagnosis. Invalidate
configuration changes.
Log Persistence Supported (PV, Pod FS, Elastic Stack,
Standard Out)
Supported (PV, Pod FS, Elastic Stack,
Standard Out)
HA Across Availability
Domain
Limited (requirement for shared PV) Supported (No requirement for shared
PV)
DR across Regions Supported Active/Passive (like on
Premise user responsible for sync
domain config across DC)
Supported Active/Passive (easier,
user does not need to sync domain
config across DC)
Which model shouldI use?
• The key difference is how updates are handled
– Java updates
– WebLogic patching
– WebLogic configuration changes
– Application updates
• Are you fully embracing the CI/CD "DevOps" model and intend to manage
change through that process?
• E.g. create new images every time there is an update.
• Are you making changes to configurations and deployments in running
systems?
• E.g. run WLST online to dynamically change your domain configuration.
DarwinIT-Professionals
CONFIGURATION OVERRIDES
Confidential – Oracle Internal/Restricted/Highly
Restricted
22
ConfigurationOverrides
• WebLogic Images containing Application, domain
configuration, resources are immutable.
• These Docker images must be portable
• Development -> Testing -> Production.
• Follow the customer’s CI/CD process.
• Therefore, customers need a mechanism to override
certain domain configuration
• E.g. Provide data source URL and credentials
DomainIntrospection and ConfigOverride Generation
Introspection Job
Domain
Customer provided
override templates
Operator
Operator overrides
• Scan domain configuration
for topology and to validate
• Generation of final
configuration overrides
WLS Domain Image
User ConfigurationOverrides
• Typical attributes for overrides include:
– User names, passwords, and URLs for:
• JDBC datasources
• JMS bridges, foreign servers, and SAF
– Network channel public addresses:
• For remote RMI clients (T3, JMS, EJB, JTA)
• For remote WLST clients
– Debugging
– Tuning (MaxMessageSize, etc.)
ConfigurationOverrides
• Create a Kubernetes configuration map that contains:
– Override templates
• Create Kubernetes secrets that contains:
– Data source username and password.
• Set your domain CR
– Config map.
– Secret with the Config Override
• Start or restart your domain.
DarwinIT-Professionals
ASSIGN PODS TO NODES
Confidential – Oracle Internal/Restricted/Highly
Restricted
27
AssigningWebLogic Podsto Nodes
• Use Node Selector to constrain a
pod to only be able to run on
particular nodes.
• Assign a label (key=value) to the
node:
• kubectl label nodes kubernetes-foo-
node-1 licensed-for-weblogic=true
• Edit the Domain Custom Resource
at the domain/cluster/server level
and assign key:value nodeSelector.
Edit Domain CR
serverPod:
nodeSelector:
licensed-for-weblogic: true
Domain
Custom
Resource
AssigningWebLogic Podsto Nodes
• Assign pods to Nodes based on
resources, e.g. CPU and
Memory usage
• A Pod is scheduled to run on a
Node only if the Node has
enough CPU resources
available.
Edit Domain CR
serverPod:
resources:
requests:
memory: "8Gb"
cpu: "250m"
limits:
memory: "128Mi"
cpu: "500m"`
Domain
Custom
Resource
Inter-Pod Affinityand Anti-Affinity
• Which K8s nodes to schedule or re-
schedule pods with respect to other
WebLogic pods
• Possible types of Node affinity/anti-affinity:
• Preferred (soft affinity)
• Required (hard affinity)
• Match labels for Affinity/Anti-affinity
• Operator: In
• Operator: Exists
• Operator: NotIn
• Operator: DoesNotExist
Edit Domain CR
serverPod:
affinity: podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: "weblogic.clusterName"
operator: In
values: - cluster-1
topologyKey: "kubernetes.io/hostname"
Node 1 Node 3Node 2
nodeSelector:
licensed-for-weblogic: true
affinity: podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: "weblogic.clusterName"
- operator: In
Licensed-for-weblogic Licensed-for-weblogic
WLS
POD1
WLS
POD2
ScheduleOperator
weblogic.clusterName
Node 1 Node 3Node 2
nodeSelector:
licensed-for-weblogic: true
affinity: podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: "weblogic.clusterName"
- operator: In
Licensed-for-weblogic Licensed-for-weblogic
WLS
POD1
WLS
POD2
Operator
weblogic.clusterName weblogic.clusterName
Node 1 Node 3Node 2
nodeSelector:
licensed-for-weblogic: true
affinity: podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: "weblogic.clusterName"
- operator: In
Licensed-for-weblogic Licensed-for-weblogic
WLS
POD1
WLS
POD3
ScheduleOperator
weblogic.clusterName
WLS
POD2
weblogic.clusterName
Node 1 Node 3Node 2
nodeSelector:
licensed-for-weblogic: true
affinity: podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: "weblogic.clusterName"
- operator: In
Licensed-for-weblogic Licensed-for-weblogic
WLS
POD1
WLS
POD2
Operator
weblogic.clusterName weblogic.clusterName
WLS
POD3
weblogic.clusterName
DarwinIT-Professionals
HA ANDDR INKUBERNETES
Confidential – Oracle Internal/Restricted/Highly
Restricted
35
WebLogic High Availability
• WebLogic High Availability across
Data Centers with WebLogic
Stretch Clusters.
• Span a WebLogic domain across
several Availability Domains
• Single Kubernetes ClusterWebLogic domain
AD 1 AD 2 AD 3
WebLogic Disaster Recovery
• WebLogic DR across Regions
made easier
• WebLogic domain image contains
complete domain configuration
• State needs to be externalized to
Database
Region A Region BWLS
Domain
image
DarwinIT-Professionals
TOOLING
copyright Š2019 Darwin IT-Professionals B.V. 38
WebLogic MonitoringExporter
• Monitoring Exporter enables
Prometheus monitoring of WebLogic
• Standard monitoring tools can be
used for monitoring WebLogic
• Grafana Dashboards used for
visualization
• Prometheus auto-scaling of
WebLogic cluster
• Prometheus and Grafana example
GitHub Sample
39
Confidential – Oracle Internal/Restricted/Highly
Restricted
MS M
S
Kubernete
s
Kubernet
es
Operator
WebLogic WebLogic WebLogic
Monitor
Scale
WLS
Outof the BoxGrafana Dashboards
WebLogic Deploy Tooling
• Introspect domains
– WebLogic 10.3.6, 12.1.3, 12.2.1.X
– Create a model (yaml) of the
domain
– Migrate existing domains and
applications Upgrade (if required)
to 12.2.1.X
• Customize and Validate
configuration to meet Kubernetes
requirements
• Create domains in Docker image
GitHub Sample 41
Confidential – Oracle Internal/Restricted/Highly
Restricted
WebLogic WebLogic WebLogic
WebLogic Deploy Tooling
Domain Model
WebLogic Logging Exporter
• Logging Exporter enables
exporting WebLogic server logs
to the Elastic Stack
• Store logs in the Elastic Stack
• Search and analyze logs in
Elastichsearch
• Display logs in dashboards in
Kibana
• Integrate with FluentD (future)
• GitHub weblogic-logging-exporter
42
Confidential – Oracle Internal/Restricted/Highly
Restricted
MS M
S
Kubernete
s
Kubernet
es
Operator
WebLogic WebLogic WebLogic
KibanaDashboards
PatchingWL Image with WebLogic Image Tool
44
Confidential – Oracle Internal/Restricted/Highly
Restricted
Kubernete
s
Repository
WLS Domain Image
Operator
Image
WLS 12.2.1.3 Binary Image
WLS 12.2.1.3
JDK 8_u201
OL 7.5
p29135930 & p27117282
WLS 12.2.1.3 Binary
Image from Repository
p29135930 & p27117282
Download
p29135930 & p27117282
My Oracle Support
WLS 12.2.1.3
p29135930 & p27117282
Domain yaml model &
Application binaries
WLS Image Tool WLS 12.2.1.3 patched
Binary Image
WLS Domain Image
Patched
Use cases
Build
image from
scratch
Build image
from already
existing
image
WLS 12.2.1.3 Binary Image
Apply patches p29135930 &
p27117282
Build domain
image based
on WLS
12.2.1.3
WLS 12.2.1.3 patched Binary
Image
With WDT build a domain
image with application
Oracle Linux
Apply patches
p29135930 &
p27117282
Server JRE
WebLogioc 12.2.1.3
binaries
Future
DarwinIT-Professionals
DEMO WEBLOGIC WITHIN OKECLUSTER
copyright Š2019 Darwin IT-Professionals B.V. 45
OKE Cluster and its VCN context
4 - 46
ORACLE CLOUD DATA CENTER REGION (Frankfurt)
Medreck8s Compartment
AVAILABILITY DOMAIN-1 AVAILABILITY DOMAIN-2 AVAILABILITY DOMAIN-3
Regional Private SUBNET A,10.0.10.0/24
Regional Public SUBNET A,10.0.20.0/24
Wkr Security List
LB Security List
OKE-1 OKE-2 OKE-0
10.0.10.4
LB130.61.12.8
10.0.10.2 10.0.10.3
OKE Cluster
OKE VCN, 10.0.0.0/16
OKE Cluster within OCI Console
4 - 47
ORACLE CLOUD DATA CENTER REGION (Frankfurt)
Medreck8s Compartment
AVAILABILITY DOMAIN-1 AVAILABILITY DOMAIN-2 AVAILABILITY DOMAIN-3
Regional Private SUBNET A,10.0.10.0/24
Regional Public SUBNET A,10.0.20.0/24
Wkr Security List
LB Security List
OKE-1 OKE-2 OKE-0
10.0.10.4
LB130.61.12.8
10.0.10.2 10.0.10.3
OKE Cluster
OKE VCN, 10.0.0.0/16
Weblogic running within an OKE Cluster
4 - 48
ORACLE CLOUD DATA CENTER REGION (Frankfurt)
Medreck8s Compartment
AVAILABILITY DOMAIN-1 AVAILABILITY DOMAIN-2 AVAILABILITY DOMAIN-3
Regional Private SUBNET A,10.0.10.0/24
Regional Public SUBNET A,10.0.20.0/24
Wkr Security List
LB Security List
OKE-1 OKE-2 OKE-0
AdmSrv
10.244.2.45
10.0.10.4
LB130.61.12.8
Srv-1
10.244.2.46
10.0.10.2
Srv-2
10.244.0.56
10.0.10.3Srv-3
10.244.1.40
OKE Cluster
OKE VCN, 10.0.0.0/16
Managed servers within weblogic domain running on a OKE cluster
4 - 49
ORACLE CLOUD DATA CENTER REGION (Frankfurt)
Medreck8s Compartment
AVAILABILITY DOMAIN-1 AVAILABILITY DOMAIN-2 AVAILABILITY DOMAIN-3
Regional Private SUBNET A,10.0.10.0/24
Regional Public SUBNET A,10.0.20.0/24
Wkr Security List
LB Security List
OKE-1 OKE-2 OKE-0
AdmSrv
10.244.2.45
10.0.10.4
LB130.61.12.8
Srv-1
10.244.2.46
10.0.10.2
Srv-2
10.244.0.56
10.0.10.3Srv-3
10.244.1.40
OKE Cluster
OKE VCN, 10.0.0.0/16
How to access a managed database outside an OKE cluster?
4 - 50
ORACLE CLOUD DATA CENTER REGION (Frankfurt)
Medreck8s Compartment
AVAILABILITY DOMAIN-1 AVAILABILITY DOMAIN-2 AVAILABILITY DOMAIN-3
Regional Private SUBNET A,10.0.10.0/24
Regional Public SUBNET A,10.0.20.0/24
Wkr Security List
LB Security List
OKE-1 OKE-2 OKE-0
DBHost
AdmSrv
10.244.2.45
10.0.10.4
10.0.10.6
LB130.61.12.8
Srv-1
10.244.2.46
10.0.10.2
Srv-2
10.244.0.56
10.0.10.3Srv-3
10.244.1.40
OKE Cluster
OKE VCN, 10.0.0.0/16
10.96.72.93
Running managed database in OCI console within same subnet as OKE cluster
4 - 51
ORACLE CLOUD DATA CENTER REGION (Frankfurt)
Medreck8s Compartment
AVAILABILITY DOMAIN-1 AVAILABILITY DOMAIN-2 AVAILABILITY DOMAIN-3
Regional Private SUBNET A,10.0.10.0/24
Regional Public SUBNET A,10.0.20.0/24
Wkr Security List
LB Security List
OKE-1 OKE-2 OKE-0
DBHost
AdmSrv
10.244.2.45
10.0.10.4
10.0.10.6
LB130.61.12.8
Srv-1
10.244.2.46
10.0.10.2
Srv-2
10.244.0.56
10.0.10.3Srv-3
10.244.1.40
OKE Cluster
OKE VCN, 10.0.0.0/16
10.96.72.93
Runtime access to a managed database via a k8s service
4 - 52
ORACLE CLOUD DATA CENTER REGION (Frankfurt)
Medreck8s Compartment
AVAILABILITY DOMAIN-1 AVAILABILITY DOMAIN-2 AVAILABILITY DOMAIN-3
Regional Private SUBNET A,10.0.10.0/24
Regional Public SUBNET A,10.0.20.0/24
Wkr Security List
LB Security List
OKE-1 OKE-2 OKE-0
DBHost
AdmSrv
10.244.2.45
10.0.10.4
10.0.10.6
LB130.61.12.8
Srv-1
10.244.2.46
10.0.10.2
Srv-2
10.244.0.56
10.0.10.3Srv-3
10.244.1.40
OKE Cluster
medrecdbhostname
sk8s service op 1521
OKE VCN, 10.0.0.0/16
10.96.104.28
k8s service medrecdbhostname details with kubectl
4 - 53
ORACLE CLOUD DATA CENTER REGION (Frankfurt)
Medreck8s Compartment
AVAILABILITY DOMAIN-1 AVAILABILITY DOMAIN-2 AVAILABILITY DOMAIN-3
Regional Private SUBNET A,10.0.10.0/24
Regional Public SUBNET A,10.0.20.0/24
Wkr Security List
LB Security List
OKE-1 OKE-2 OKE-0
DBHost
AdmSrv
10.244.2.45
10.0.10.4
10.0.10.6
LB130.61.12.8
Srv-1
10.244.2.46
10.0.10.2
Srv-2
10.244.0.56
10.0.10.3Srv-3
10.244.1.40
OKE Cluster
medrecdbhostname
sk8s service op 1521
OKE VCN, 10.0.0.0/16
10.96.72.93
Demo Down and Up Sizing a Weblogic Domain: more/less managed servers
4 - 54
ORACLE CLOUD DATA CENTER REGION (Frankfurt)
Medreck8s Compartment
AVAILABILITY DOMAIN-1 AVAILABILITY DOMAIN-2 AVAILABILITY DOMAIN-3
Regional Private SUBNET A,10.0.10.0/24
Regional Public SUBNET A,10.0.20.0/24
Wkr Security List
LB Security List
OKE-1 OKE-2 OKE-0
AdmSrv
10.244.2.45
10.0.10.4
LB130.61.12.8
Srv-1
10.244.2.46
10.0.10.2
Srv-2
10.244.0.56
10.0.10.3Srv-3
10.244.1.40
OKE Cluster
OKE VCN, 10.0.0.0/16
DarwinIT-Professionals
WRAPPING UP…
copyright Š2019 Darwin IT-Professionals B.V. 61
Links
• Oracle Weblogic Kubernetes Operator
– https://oracle.github.io/weblogic-kubernetes-operator
• Oracle Weblogic Kubernetes Operator Samples
– https://oracle.github.io/weblogic-kubernetes-operator/samples/
• Oracle Weblogic Slack Inviter
– https://weblogic-slack-inviter.herokuapp.com/
• Cloud Customer Connect – Containers and Kubernetes forum
– https://cloudcustomerconnect.oracle.com/resources/654ff18469/summary
• OPN PaasForum/SummerCamps ’19 Tutorial by Peter Nagy (to be forked)
– https://github.com/nagypeter/weblogic-operator-tutorial
• End2End example monitoring wl server with Grafana dashboards
– https://blogs.oracle.com/weblogicserver/end-to-end-example-of-monitoring-weblogic-server-with-grafana-
dashboards-on-the-oci-container-engine-for-kubernetes
copyright Š2019 Darwin IT-Professionals B.V. 62
DarwinIT-Professionals
THANK YOU FOR YOUR ATTENDANCE, PATIENCE AND
ATTENTION
copyright Š2019 Darwin IT-Professionals B.V. 63
Q & A
copyright Š2019 Darwin IT-Professionals B.V. 64

Weitere ähnliche Inhalte

Was ist angesagt?

WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise DemandsWebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
Ian Robinson
 

Was ist angesagt? (20)

Cloud foundry integration-with-openstack-and-docker-bangalorecf-meetup
Cloud foundry integration-with-openstack-and-docker-bangalorecf-meetupCloud foundry integration-with-openstack-and-docker-bangalorecf-meetup
Cloud foundry integration-with-openstack-and-docker-bangalorecf-meetup
 
Cloud Foundry Anniversary: Technical Slides
Cloud Foundry Anniversary: Technical Slides Cloud Foundry Anniversary: Technical Slides
Cloud Foundry Anniversary: Technical Slides
 
Cloud Foundry and OpenStack - A Marriage Made in Heaven! (Cloud Foundry Summi...
Cloud Foundry and OpenStack - A Marriage Made in Heaven! (Cloud Foundry Summi...Cloud Foundry and OpenStack - A Marriage Made in Heaven! (Cloud Foundry Summi...
Cloud Foundry and OpenStack - A Marriage Made in Heaven! (Cloud Foundry Summi...
 
As a Service: Cloud Foundry on OpenStack - Lessons Learnt
As a Service: Cloud Foundry on OpenStack - Lessons LearntAs a Service: Cloud Foundry on OpenStack - Lessons Learnt
As a Service: Cloud Foundry on OpenStack - Lessons Learnt
 
Platform Clouds, Containers, Immutable Infrastructure Oh My!
Platform Clouds, Containers, Immutable Infrastructure Oh My!Platform Clouds, Containers, Immutable Infrastructure Oh My!
Platform Clouds, Containers, Immutable Infrastructure Oh My!
 
WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise DemandsWebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
 
WebSphere and Docker
WebSphere and DockerWebSphere and Docker
WebSphere and Docker
 
VNG/IRD - Cloud computing & Openstack discussion 3/5/2014
VNG/IRD - Cloud computing & Openstack discussion 3/5/2014VNG/IRD - Cloud computing & Openstack discussion 3/5/2014
VNG/IRD - Cloud computing & Openstack discussion 3/5/2014
 
IBM WebSphere Application Server traditional and Docker
IBM WebSphere Application Server traditional and DockerIBM WebSphere Application Server traditional and Docker
IBM WebSphere Application Server traditional and Docker
 
WebSphere Application Server Liberty Profile and Docker
WebSphere Application Server Liberty Profile and DockerWebSphere Application Server Liberty Profile and Docker
WebSphere Application Server Liberty Profile and Docker
 
Beginner's Guide to High Availability for Postgres
Beginner's Guide to High Availability for Postgres Beginner's Guide to High Availability for Postgres
Beginner's Guide to High Availability for Postgres
 
Kubernetes Architecture with Components
 Kubernetes Architecture with Components Kubernetes Architecture with Components
Kubernetes Architecture with Components
 
WebSphere Application Server Liberty Profile and Docker
WebSphere Application Server Liberty Profile and DockerWebSphere Application Server Liberty Profile and Docker
WebSphere Application Server Liberty Profile and Docker
 
Presentation cloud orchestration
Presentation   cloud orchestrationPresentation   cloud orchestration
Presentation cloud orchestration
 
Docker OpenStack Cloud Foundry
Docker OpenStack Cloud FoundryDocker OpenStack Cloud Foundry
Docker OpenStack Cloud Foundry
 
Hadoop on Docker
Hadoop on DockerHadoop on Docker
Hadoop on Docker
 
EMC & OpenStack: A View From Within
EMC & OpenStack: A View From WithinEMC & OpenStack: A View From Within
EMC & OpenStack: A View From Within
 
Webinar: OpenStack Benefits for VMware
Webinar: OpenStack Benefits for VMwareWebinar: OpenStack Benefits for VMware
Webinar: OpenStack Benefits for VMware
 
Containers and microservices for realists
Containers and microservices for realistsContainers and microservices for realists
Containers and microservices for realists
 
Kubernetes for the VI Admin
Kubernetes for the VI AdminKubernetes for the VI Admin
Kubernetes for the VI Admin
 

Ähnlich wie 20191201 kubernetes managed weblogic revival - part 2

Vishwakarma: Terraform modules for deploying EKS and Self-hosting Kubernetes
Vishwakarma: Terraform modules for deploying EKS and Self-hosting KubernetesVishwakarma: Terraform modules for deploying EKS and Self-hosting Kubernetes
Vishwakarma: Terraform modules for deploying EKS and Self-hosting Kubernetes
Amazon Web Services
 
SD Times - Docker v2
SD Times - Docker v2SD Times - Docker v2
SD Times - Docker v2
Alvin Richards
 
Kubernetes @ meetic
Kubernetes @ meeticKubernetes @ meetic
Kubernetes @ meetic
SĂŠbastien Le Gall
 

Ähnlich wie 20191201 kubernetes managed weblogic revival - part 2 (20)

20191201 kubernetes managed weblogic revival - part 1
20191201 kubernetes managed weblogic revival - part 120191201 kubernetes managed weblogic revival - part 1
20191201 kubernetes managed weblogic revival - part 1
 
Oracle SOA Suite Everywhere
Oracle SOA Suite EverywhereOracle SOA Suite Everywhere
Oracle SOA Suite Everywhere
 
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
Edge 2016 Session 1886  Building your own docker container cloud on ibm power...Edge 2016 Session 1886  Building your own docker container cloud on ibm power...
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
 
Using Databases and Containers From Development to Deployment
Using Databases and Containers  From Development to DeploymentUsing Databases and Containers  From Development to Deployment
Using Databases and Containers From Development to Deployment
 
Vishwakarma: Terraform modules for deploying EKS and Self-hosting Kubernetes
Vishwakarma: Terraform modules for deploying EKS and Self-hosting KubernetesVishwakarma: Terraform modules for deploying EKS and Self-hosting Kubernetes
Vishwakarma: Terraform modules for deploying EKS and Self-hosting Kubernetes
 
SD Times - Docker v2
SD Times - Docker v2SD Times - Docker v2
SD Times - Docker v2
 
The ultimate Kubernetes Deployment Checklist - Infra to Microservices
The ultimate Kubernetes Deployment Checklist - Infra to MicroservicesThe ultimate Kubernetes Deployment Checklist - Infra to Microservices
The ultimate Kubernetes Deployment Checklist - Infra to Microservices
 
Running Enterprise Workloads in the Cloud
Running Enterprise Workloads in the CloudRunning Enterprise Workloads in the Cloud
Running Enterprise Workloads in the Cloud
 
Running Kubernetes Workloads on Oracle Cloud Infrastructure
Running Kubernetes Workloads on Oracle Cloud InfrastructureRunning Kubernetes Workloads on Oracle Cloud Infrastructure
Running Kubernetes Workloads on Oracle Cloud Infrastructure
 
Running Docker in Production
Running Docker in ProductionRunning Docker in Production
Running Docker in Production
 
Practical lessons from customers performing digital transformation with Azure
Practical lessons from customers performing digital transformation with AzurePractical lessons from customers performing digital transformation with Azure
Practical lessons from customers performing digital transformation with Azure
 
A Deep Dive into the Liberty Buildpack on IBM BlueMix
A Deep Dive into the Liberty Buildpack on IBM BlueMix A Deep Dive into the Liberty Buildpack on IBM BlueMix
A Deep Dive into the Liberty Buildpack on IBM BlueMix
 
Kubernetes deployment on bare metal with container linux
Kubernetes deployment on bare metal with container linuxKubernetes deployment on bare metal with container linux
Kubernetes deployment on bare metal with container linux
 
DeveloperWeekEnterprise2023 - Introduction to Kubernetes Operators for Databases
DeveloperWeekEnterprise2023 - Introduction to Kubernetes Operators for DatabasesDeveloperWeekEnterprise2023 - Introduction to Kubernetes Operators for Databases
DeveloperWeekEnterprise2023 - Introduction to Kubernetes Operators for Databases
 
SKILup Days Container Orchestration - Kubernetes Operators for Databases
SKILup Days Container Orchestration - Kubernetes Operators for DatabasesSKILup Days Container Orchestration - Kubernetes Operators for Databases
SKILup Days Container Orchestration - Kubernetes Operators for Databases
 
wls-azure-devnexus-2022.pdf
wls-azure-devnexus-2022.pdfwls-azure-devnexus-2022.pdf
wls-azure-devnexus-2022.pdf
 
WebSphere 20th - Application modernization
WebSphere 20th - Application modernizationWebSphere 20th - Application modernization
WebSphere 20th - Application modernization
 
01282016 Aerospike-Docker webinar
01282016 Aerospike-Docker webinar01282016 Aerospike-Docker webinar
01282016 Aerospike-Docker webinar
 
Kubernetes @ meetic
Kubernetes @ meeticKubernetes @ meetic
Kubernetes @ meetic
 
oci-container-engine-oke-100.pdf
oci-container-engine-oke-100.pdfoci-container-engine-oke-100.pdf
oci-container-engine-oke-100.pdf
 

Mehr von makker_nl (6)

SSO With APEX and ADFS the weblogic way
SSO With APEX and ADFS the weblogic waySSO With APEX and ADFS the weblogic way
SSO With APEX and ADFS the weblogic way
 
Sql developer 4 workshop
Sql developer 4 workshopSql developer 4 workshop
Sql developer 4 workshop
 
... No it's Apache Kafka!
... No it's Apache Kafka!... No it's Apache Kafka!
... No it's Apache Kafka!
 
20180607 master your vms with vagrant
20180607 master your vms with vagrant20180607 master your vms with vagrant
20180607 master your vms with vagrant
 
20180605 sso with apex and adfs the weblogic way
20180605 sso with apex and adfs the weblogic way20180605 sso with apex and adfs the weblogic way
20180605 sso with apex and adfs the weblogic way
 
Install Oracle FMW - 'Mostly Scripted'
Install Oracle FMW - 'Mostly Scripted'Install Oracle FMW - 'Mostly Scripted'
Install Oracle FMW - 'Mostly Scripted'
 

KĂźrzlich hochgeladen

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

KĂźrzlich hochgeladen (20)

Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 

20191201 kubernetes managed weblogic revival - part 2

  • 1. DARWIN IT-PROFESSIONALS IT Driven Evolution The Kubernetes WebLogic Revival Martien van den Akker, Darwin IT Simon Haslam, eProseed 2019
  • 2. martien.van.den.akker@darwin-it.nl @Makker_nl Who I am copyright Š2019 Darwin IT-Professionals B.V. 2
  • 3. Copyright Š 2019, eProseed and/or its affiliates. All rights reserved. | Public ABOUT ME 3 Simon Haslam • Platform / Infrastructure Architect • Focus includes HA, DR, security, automation Relevant to this session • WebLogic / FMW installations since 2000s • First research/webcast on JCS in 2016 • Designed & built SOA CS integration platform for global use since Oct 2017 • On team migrating eProseed Lux data centres to OCI@simon_haslam since 2009
  • 5. Whybuild theWebLogic KubernetesOperator? • Contains built-in knowledge about how to perform lifecycle operations on a domain • Uses Kubernetes APIs to automate lifecycle operations. POD 1 POD 2 AS MS POD 3 MS POD 4 POD 5 POD 6 MS MSMS WLS Cluster Kubernetes Cluster Manage Pods Kubernete s Operator Orchestrate WebLogic copyright Š2019 Darwin IT-Professionals B.V. 6
  • 6. WebLogic Kubernetes Operator Manages lifecycle operations (start, stop, scale, rolling restart, etc.) in Kubernetes Automate configuration, e.g. clustering, channels/ports, configuration overrides Supports standard k8s idioms like sidecars, init containers, custom resources 1 2 3 Open source and fully supported https://github.com/oracle/weblogic-kubernetes-operator copyright Š2019 Darwin IT-Professionals B.V. 7
  • 7. DarwinIT-Professionals DEPLOY WEBLOGIC IN KUBERNETES copyright Š2019 Darwin IT-Professionals B.V. 8
  • 8. WebLogic Domain in Kubernetes Operator Domain Home in Image Kubernete s Kubernetes Cluster Customer Tenancy Kubernetes WLS Domain Image Repository Operator Image Build Image Create OKE Cluster Kubernetes copyright Š2019 Darwin IT-Professionals B.V. 9
  • 9. Kubernete s Kubernetes Cluster Customer Tenancy WLS Domain Image Repository Operator Image Kubernetes Kubernetes Secrets Create Secrets • Create secrets Wls and Docker Image Repository (OCIR) copyright Š2019 Darwin IT-Professionals B.V. 10
  • 10. Customer Tenancy WLS Domain Image Repository Operator Image Kubernetes Cluster Operator Kubernetes Secrets InstallWeblogicOperator using Helm Kubernetes copyright Š2019 Darwin IT-Professionals B.V. 11
  • 11. Customer Tenancy WLS Domain Image Repository Operator Image Kubernetes Cluster Kubernetes Operator Kubernetes Secrets Install/ConfigTreafikLoadBalancer copyright Š2019 Darwin IT-Professionals B.V. 12
  • 12. Kubernetes Cluster Operator Customer Tenancy Kubernetes Secrets Possiblycreate persistentvolume Kubernetes WLS Domain Image Repository Operator Image copyright Š2019 Darwin IT-Professionals B.V. 13
  • 13. WLS Domain Image Repository Operator Image Kubernetes Cluster Operator Customer Tenancy Kubernetes Install Domain inputs (yaml) Secrets Create a Domain.yaml Kubernetes copyright Š2019 Darwin IT-Professionals B.V. 14
  • 14. Kubernete s Kubernetes Cluster Operator Domain CR Customer Tenancy Kubernetes Install Domain inputs (yaml) kubectl apply … Secrets WLS Domain Image Repository Operator Image Apply Domain.yamlto CustomResource Kubernetes copyright Š2019 Darwin IT-Professionals B.V. 15
  • 15. Kubernete s POD 1 POD 2 AS MS POD 3 MS POD 4 POD 5 POD 6 MS MSMS WLS Cluster Kubernetes Cluster Operator Domain CR Customer Tenancy WebLogic Domain(s) Kubernetes Logs Secrets Operator creatingpods WLS Domain Image Repository Operator Image copyright Š2019 Darwin IT-Professionals B.V. 16
  • 16. GitHub,Wercker, OCI Registry & OKE Push Oracle Cloud Developer Services Kubernetes copyright Š2019 Darwin IT-Professionals B.V. 17
  • 17. 18copyright Š2019 Darwin IT-Professionals B.V. Example cluster creation: App page WebLogic console DEMO
  • 19. 2 TopologyModels 20copyright Š2019 Darwin IT-Professionals B.V. Options Domain in PV/C Domain in Image Domain Topology Changes Apply to domain in PV (wlst online) New Image Configuration Changes (tunables, credentials, …) Change configuration in domain in PV Overrides Only Patching New Image CI/CD (new image) Application Updates Apply to domain in PV CI/CD (new image) Management of PV/PVC More complex (filesystem shared per domain) Simple (not shared, per server) Administration Console App deployments and Configuration Changes, can not do lifecycle mgt. Monitoring and Diagnosis. Invalidate configuration changes. Log Persistence Supported (PV, Pod FS, Elastic Stack, Standard Out) Supported (PV, Pod FS, Elastic Stack, Standard Out) HA Across Availability Domain Limited (requirement for shared PV) Supported (No requirement for shared PV) DR across Regions Supported Active/Passive (like on Premise user responsible for sync domain config across DC) Supported Active/Passive (easier, user does not need to sync domain config across DC)
  • 20. Which model shouldI use? • The key difference is how updates are handled – Java updates – WebLogic patching – WebLogic configuration changes – Application updates • Are you fully embracing the CI/CD "DevOps" model and intend to manage change through that process? • E.g. create new images every time there is an update. • Are you making changes to configurations and deployments in running systems? • E.g. run WLST online to dynamically change your domain configuration.
  • 21. DarwinIT-Professionals CONFIGURATION OVERRIDES Confidential – Oracle Internal/Restricted/Highly Restricted 22
  • 22. ConfigurationOverrides • WebLogic Images containing Application, domain configuration, resources are immutable. • These Docker images must be portable • Development -> Testing -> Production. • Follow the customer’s CI/CD process. • Therefore, customers need a mechanism to override certain domain configuration • E.g. Provide data source URL and credentials
  • 23. DomainIntrospection and ConfigOverride Generation Introspection Job Domain Customer provided override templates Operator Operator overrides • Scan domain configuration for topology and to validate • Generation of final configuration overrides WLS Domain Image
  • 24. User ConfigurationOverrides • Typical attributes for overrides include: – User names, passwords, and URLs for: • JDBC datasources • JMS bridges, foreign servers, and SAF – Network channel public addresses: • For remote RMI clients (T3, JMS, EJB, JTA) • For remote WLST clients – Debugging – Tuning (MaxMessageSize, etc.)
  • 25. ConfigurationOverrides • Create a Kubernetes configuration map that contains: – Override templates • Create Kubernetes secrets that contains: – Data source username and password. • Set your domain CR – Config map. – Secret with the Config Override • Start or restart your domain.
  • 26. DarwinIT-Professionals ASSIGN PODS TO NODES Confidential – Oracle Internal/Restricted/Highly Restricted 27
  • 27. AssigningWebLogic Podsto Nodes • Use Node Selector to constrain a pod to only be able to run on particular nodes. • Assign a label (key=value) to the node: • kubectl label nodes kubernetes-foo- node-1 licensed-for-weblogic=true • Edit the Domain Custom Resource at the domain/cluster/server level and assign key:value nodeSelector. Edit Domain CR serverPod: nodeSelector: licensed-for-weblogic: true Domain Custom Resource
  • 28. AssigningWebLogic Podsto Nodes • Assign pods to Nodes based on resources, e.g. CPU and Memory usage • A Pod is scheduled to run on a Node only if the Node has enough CPU resources available. Edit Domain CR serverPod: resources: requests: memory: "8Gb" cpu: "250m" limits: memory: "128Mi" cpu: "500m"` Domain Custom Resource
  • 29. Inter-Pod Affinityand Anti-Affinity • Which K8s nodes to schedule or re- schedule pods with respect to other WebLogic pods • Possible types of Node affinity/anti-affinity: • Preferred (soft affinity) • Required (hard affinity) • Match labels for Affinity/Anti-affinity • Operator: In • Operator: Exists • Operator: NotIn • Operator: DoesNotExist Edit Domain CR serverPod: affinity: podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - labelSelector: matchExpressions: - key: "weblogic.clusterName" operator: In values: - cluster-1 topologyKey: "kubernetes.io/hostname"
  • 30. Node 1 Node 3Node 2 nodeSelector: licensed-for-weblogic: true affinity: podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - labelSelector: matchExpressions: - key: "weblogic.clusterName" - operator: In Licensed-for-weblogic Licensed-for-weblogic WLS POD1 WLS POD2 ScheduleOperator weblogic.clusterName
  • 31. Node 1 Node 3Node 2 nodeSelector: licensed-for-weblogic: true affinity: podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - labelSelector: matchExpressions: - key: "weblogic.clusterName" - operator: In Licensed-for-weblogic Licensed-for-weblogic WLS POD1 WLS POD2 Operator weblogic.clusterName weblogic.clusterName
  • 32. Node 1 Node 3Node 2 nodeSelector: licensed-for-weblogic: true affinity: podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - labelSelector: matchExpressions: - key: "weblogic.clusterName" - operator: In Licensed-for-weblogic Licensed-for-weblogic WLS POD1 WLS POD3 ScheduleOperator weblogic.clusterName WLS POD2 weblogic.clusterName
  • 33. Node 1 Node 3Node 2 nodeSelector: licensed-for-weblogic: true affinity: podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - labelSelector: matchExpressions: - key: "weblogic.clusterName" - operator: In Licensed-for-weblogic Licensed-for-weblogic WLS POD1 WLS POD2 Operator weblogic.clusterName weblogic.clusterName WLS POD3 weblogic.clusterName
  • 34. DarwinIT-Professionals HA ANDDR INKUBERNETES Confidential – Oracle Internal/Restricted/Highly Restricted 35
  • 35. WebLogic High Availability • WebLogic High Availability across Data Centers with WebLogic Stretch Clusters. • Span a WebLogic domain across several Availability Domains • Single Kubernetes ClusterWebLogic domain AD 1 AD 2 AD 3
  • 36. WebLogic Disaster Recovery • WebLogic DR across Regions made easier • WebLogic domain image contains complete domain configuration • State needs to be externalized to Database Region A Region BWLS Domain image
  • 38. WebLogic MonitoringExporter • Monitoring Exporter enables Prometheus monitoring of WebLogic • Standard monitoring tools can be used for monitoring WebLogic • Grafana Dashboards used for visualization • Prometheus auto-scaling of WebLogic cluster • Prometheus and Grafana example GitHub Sample 39 Confidential – Oracle Internal/Restricted/Highly Restricted MS M S Kubernete s Kubernet es Operator WebLogic WebLogic WebLogic Monitor Scale WLS
  • 39. Outof the BoxGrafana Dashboards
  • 40. WebLogic Deploy Tooling • Introspect domains – WebLogic 10.3.6, 12.1.3, 12.2.1.X – Create a model (yaml) of the domain – Migrate existing domains and applications Upgrade (if required) to 12.2.1.X • Customize and Validate configuration to meet Kubernetes requirements • Create domains in Docker image GitHub Sample 41 Confidential – Oracle Internal/Restricted/Highly Restricted WebLogic WebLogic WebLogic WebLogic Deploy Tooling Domain Model
  • 41. WebLogic Logging Exporter • Logging Exporter enables exporting WebLogic server logs to the Elastic Stack • Store logs in the Elastic Stack • Search and analyze logs in Elastichsearch • Display logs in dashboards in Kibana • Integrate with FluentD (future) • GitHub weblogic-logging-exporter 42 Confidential – Oracle Internal/Restricted/Highly Restricted MS M S Kubernete s Kubernet es Operator WebLogic WebLogic WebLogic
  • 43. PatchingWL Image with WebLogic Image Tool 44 Confidential – Oracle Internal/Restricted/Highly Restricted Kubernete s Repository WLS Domain Image Operator Image WLS 12.2.1.3 Binary Image WLS 12.2.1.3 JDK 8_u201 OL 7.5 p29135930 & p27117282 WLS 12.2.1.3 Binary Image from Repository p29135930 & p27117282 Download p29135930 & p27117282 My Oracle Support WLS 12.2.1.3 p29135930 & p27117282 Domain yaml model & Application binaries WLS Image Tool WLS 12.2.1.3 patched Binary Image WLS Domain Image Patched Use cases Build image from scratch Build image from already existing image WLS 12.2.1.3 Binary Image Apply patches p29135930 & p27117282 Build domain image based on WLS 12.2.1.3 WLS 12.2.1.3 patched Binary Image With WDT build a domain image with application Oracle Linux Apply patches p29135930 & p27117282 Server JRE WebLogioc 12.2.1.3 binaries Future
  • 44. DarwinIT-Professionals DEMO WEBLOGIC WITHIN OKECLUSTER copyright Š2019 Darwin IT-Professionals B.V. 45
  • 45. OKE Cluster and its VCN context 4 - 46 ORACLE CLOUD DATA CENTER REGION (Frankfurt) Medreck8s Compartment AVAILABILITY DOMAIN-1 AVAILABILITY DOMAIN-2 AVAILABILITY DOMAIN-3 Regional Private SUBNET A,10.0.10.0/24 Regional Public SUBNET A,10.0.20.0/24 Wkr Security List LB Security List OKE-1 OKE-2 OKE-0 10.0.10.4 LB130.61.12.8 10.0.10.2 10.0.10.3 OKE Cluster OKE VCN, 10.0.0.0/16
  • 46. OKE Cluster within OCI Console 4 - 47 ORACLE CLOUD DATA CENTER REGION (Frankfurt) Medreck8s Compartment AVAILABILITY DOMAIN-1 AVAILABILITY DOMAIN-2 AVAILABILITY DOMAIN-3 Regional Private SUBNET A,10.0.10.0/24 Regional Public SUBNET A,10.0.20.0/24 Wkr Security List LB Security List OKE-1 OKE-2 OKE-0 10.0.10.4 LB130.61.12.8 10.0.10.2 10.0.10.3 OKE Cluster OKE VCN, 10.0.0.0/16
  • 47. Weblogic running within an OKE Cluster 4 - 48 ORACLE CLOUD DATA CENTER REGION (Frankfurt) Medreck8s Compartment AVAILABILITY DOMAIN-1 AVAILABILITY DOMAIN-2 AVAILABILITY DOMAIN-3 Regional Private SUBNET A,10.0.10.0/24 Regional Public SUBNET A,10.0.20.0/24 Wkr Security List LB Security List OKE-1 OKE-2 OKE-0 AdmSrv 10.244.2.45 10.0.10.4 LB130.61.12.8 Srv-1 10.244.2.46 10.0.10.2 Srv-2 10.244.0.56 10.0.10.3Srv-3 10.244.1.40 OKE Cluster OKE VCN, 10.0.0.0/16
  • 48. Managed servers within weblogic domain running on a OKE cluster 4 - 49 ORACLE CLOUD DATA CENTER REGION (Frankfurt) Medreck8s Compartment AVAILABILITY DOMAIN-1 AVAILABILITY DOMAIN-2 AVAILABILITY DOMAIN-3 Regional Private SUBNET A,10.0.10.0/24 Regional Public SUBNET A,10.0.20.0/24 Wkr Security List LB Security List OKE-1 OKE-2 OKE-0 AdmSrv 10.244.2.45 10.0.10.4 LB130.61.12.8 Srv-1 10.244.2.46 10.0.10.2 Srv-2 10.244.0.56 10.0.10.3Srv-3 10.244.1.40 OKE Cluster OKE VCN, 10.0.0.0/16
  • 49. How to access a managed database outside an OKE cluster? 4 - 50 ORACLE CLOUD DATA CENTER REGION (Frankfurt) Medreck8s Compartment AVAILABILITY DOMAIN-1 AVAILABILITY DOMAIN-2 AVAILABILITY DOMAIN-3 Regional Private SUBNET A,10.0.10.0/24 Regional Public SUBNET A,10.0.20.0/24 Wkr Security List LB Security List OKE-1 OKE-2 OKE-0 DBHost AdmSrv 10.244.2.45 10.0.10.4 10.0.10.6 LB130.61.12.8 Srv-1 10.244.2.46 10.0.10.2 Srv-2 10.244.0.56 10.0.10.3Srv-3 10.244.1.40 OKE Cluster OKE VCN, 10.0.0.0/16 10.96.72.93
  • 50. Running managed database in OCI console within same subnet as OKE cluster 4 - 51 ORACLE CLOUD DATA CENTER REGION (Frankfurt) Medreck8s Compartment AVAILABILITY DOMAIN-1 AVAILABILITY DOMAIN-2 AVAILABILITY DOMAIN-3 Regional Private SUBNET A,10.0.10.0/24 Regional Public SUBNET A,10.0.20.0/24 Wkr Security List LB Security List OKE-1 OKE-2 OKE-0 DBHost AdmSrv 10.244.2.45 10.0.10.4 10.0.10.6 LB130.61.12.8 Srv-1 10.244.2.46 10.0.10.2 Srv-2 10.244.0.56 10.0.10.3Srv-3 10.244.1.40 OKE Cluster OKE VCN, 10.0.0.0/16 10.96.72.93
  • 51. Runtime access to a managed database via a k8s service 4 - 52 ORACLE CLOUD DATA CENTER REGION (Frankfurt) Medreck8s Compartment AVAILABILITY DOMAIN-1 AVAILABILITY DOMAIN-2 AVAILABILITY DOMAIN-3 Regional Private SUBNET A,10.0.10.0/24 Regional Public SUBNET A,10.0.20.0/24 Wkr Security List LB Security List OKE-1 OKE-2 OKE-0 DBHost AdmSrv 10.244.2.45 10.0.10.4 10.0.10.6 LB130.61.12.8 Srv-1 10.244.2.46 10.0.10.2 Srv-2 10.244.0.56 10.0.10.3Srv-3 10.244.1.40 OKE Cluster medrecdbhostname sk8s service op 1521 OKE VCN, 10.0.0.0/16 10.96.104.28
  • 52. k8s service medrecdbhostname details with kubectl 4 - 53 ORACLE CLOUD DATA CENTER REGION (Frankfurt) Medreck8s Compartment AVAILABILITY DOMAIN-1 AVAILABILITY DOMAIN-2 AVAILABILITY DOMAIN-3 Regional Private SUBNET A,10.0.10.0/24 Regional Public SUBNET A,10.0.20.0/24 Wkr Security List LB Security List OKE-1 OKE-2 OKE-0 DBHost AdmSrv 10.244.2.45 10.0.10.4 10.0.10.6 LB130.61.12.8 Srv-1 10.244.2.46 10.0.10.2 Srv-2 10.244.0.56 10.0.10.3Srv-3 10.244.1.40 OKE Cluster medrecdbhostname sk8s service op 1521 OKE VCN, 10.0.0.0/16 10.96.72.93
  • 53. Demo Down and Up Sizing a Weblogic Domain: more/less managed servers 4 - 54 ORACLE CLOUD DATA CENTER REGION (Frankfurt) Medreck8s Compartment AVAILABILITY DOMAIN-1 AVAILABILITY DOMAIN-2 AVAILABILITY DOMAIN-3 Regional Private SUBNET A,10.0.10.0/24 Regional Public SUBNET A,10.0.20.0/24 Wkr Security List LB Security List OKE-1 OKE-2 OKE-0 AdmSrv 10.244.2.45 10.0.10.4 LB130.61.12.8 Srv-1 10.244.2.46 10.0.10.2 Srv-2 10.244.0.56 10.0.10.3Srv-3 10.244.1.40 OKE Cluster OKE VCN, 10.0.0.0/16
  • 55. Links • Oracle Weblogic Kubernetes Operator – https://oracle.github.io/weblogic-kubernetes-operator • Oracle Weblogic Kubernetes Operator Samples – https://oracle.github.io/weblogic-kubernetes-operator/samples/ • Oracle Weblogic Slack Inviter – https://weblogic-slack-inviter.herokuapp.com/ • Cloud Customer Connect – Containers and Kubernetes forum – https://cloudcustomerconnect.oracle.com/resources/654ff18469/summary • OPN PaasForum/SummerCamps ’19 Tutorial by Peter Nagy (to be forked) – https://github.com/nagypeter/weblogic-operator-tutorial • End2End example monitoring wl server with Grafana dashboards – https://blogs.oracle.com/weblogicserver/end-to-end-example-of-monitoring-weblogic-server-with-grafana- dashboards-on-the-oci-container-engine-for-kubernetes copyright Š2019 Darwin IT-Professionals B.V. 62
  • 56. DarwinIT-Professionals THANK YOU FOR YOUR ATTENDANCE, PATIENCE AND ATTENTION copyright Š2019 Darwin IT-Professionals B.V. 63
  • 57. Q & A copyright Š2019 Darwin IT-Professionals B.V. 64