SlideShare uma empresa Scribd logo
1 de 45
Baixar para ler offline
INOVASI
INFORMATIKA
INDONESIA
Running AutoScaling JBOSSRunning AutoScaling JBOSS
Cluster with OpenShiftCluster with OpenShift
Yusuf Hadiwinata Sutandar
●
What Problem Need to SolveWhat Problem Need to Solve
●
Container & Docker SolutionContainer & Docker Solution
●
Kubernetes & OpenShift SolutionKubernetes & OpenShift Solution
●
Building Simple Application with OpenshiftBuilding Simple Application with Openshift
●
Building JBOSS Cluster with OpenShiftBuilding JBOSS Cluster with OpenShift
●
Auto scaling JBOSS Node Cluster withAuto scaling JBOSS Node Cluster with
OpenshiftOpenshift
●
Bonus: Continues Integration and Delivery withBonus: Continues Integration and Delivery with
OpenShift, Jenkins, SonarQube, Nexus andOpenShift, Jenkins, SonarQube, Nexus and
GogsGogs
AgendaAgenda
BackgroundBackground
High availability and fail-over are very important featureHigh availability and fail-over are very important feature
for any kind of infrastructure. As the name suggests thefor any kind of infrastructure. As the name suggests the
services should be available at any given point of timeservices should be available at any given point of time
and requests should fail over if any component goesand requests should fail over if any component goes
down abruptly. You can have several parallel instance ofdown abruptly. You can have several parallel instance of
an application and can scale up and down depending onan application and can scale up and down depending on
the business requirement, without worrying much aboutthe business requirement, without worrying much about
the cost. Load is distributed across different servers, andthe cost. Load is distributed across different servers, and
even if one or more of the servers fails, the application iseven if one or more of the servers fails, the application is
still accessible via the other application instances. HA isstill accessible via the other application instances. HA is
crucial for scalable enterprise applications, as you cancrucial for scalable enterprise applications, as you can
improve performance by adding more pod/containerimprove performance by adding more pod/container
(which will be replica of your current one).(which will be replica of your current one).
Introduction to Container &Introduction to Container &
DockerDocker
The ProblemThe Problem
Solution?Solution?
The Solution!!The Solution!!
90% of all cargo now shipped in a90% of all cargo now shipped in a
standard containerstandard container
Order of magnitude reduction in costOrder of magnitude reduction in cost
and time to load and unload ships,and time to load and unload ships,
trains, truckstrains, trucks
How about Application Development &How about Application Development &
Deployment???Deployment???
Another Question!!Another Question!!
The EvolutionThe Evolution
The App ProblemThe App Problem
The App SolutionThe App Solution
The App SolutionThe App Solution
Advantages of ContainersAdvantages of Containers
● Low hardware footprint
– Uses OS internal features to create an isolated environment where
resources are managed using OS facilities such as namespaces and
cgroups. This approach minimizes the amount of CPU and memory
overhead compared to a virtual machine hypervisor. Running an
application in a VM is a way to create isolation from the running
environment, but it requires a heavy layer of services to support the
same low hardware footprint isolation provided by containers.
● Environment isolation
– Works in a closed environment where changes made to the host OS
or other applications do not affect the container. Because the
libraries needed by a container are self-contained, the application can
run without disruption. For example, each application can exist in its
own container with its own set of libraries. An update made to one
container does not affect other containers, which might not work with
the update.
Advantages of ContainersAdvantages of Containers
cont..cont..
● Quick deployment
– Deploys any container quickly because there is no need for a full OS
install or restart. Normally, to support the isolation, a new OS installation
is required on a physical host or VM, and any simple update might require
a full OS restart. A container only requires a restart without stopping any
services on the host OS.
● Multiple environment deployment
– In a traditional deployment scenario using a single host, any environment
differences might potentially break the application. Using containers,
however, the differences and incompatibilities are mitigated because the
same container image is used.
● Reusability
– The same container can be reused by multiple applications without the
need to set up a full OS. A database container can be used to create a set
of tables for a software application, and it can be quickly destroyed and
recreated without the need to run a set of housekeeping tasks.
Additionally, the same database container can be used by the production
environment to deploy an application.
Is not Virtualizaiton :)Is not Virtualizaiton :)
Linux Kernel
App1 App2 App3
Isolation, not Virtualization
•
Kernel
Namespaces
•
Process
•
Network
•
IPC
•
Mount
•
User
•
Resource Limits
•
Cgroups
•
Security
•
SELinux
Container SolutionContainer Solution
Virtual Machine and Container Complement each otherVirtual Machine and Container Complement each other
Containers
● Containers run as isolated processes in user
space of host OS
● They share the kernel with other container
(container-processes)
● Containers include the application and all of
its dependencies
● Not tied to specific infrastructure
Virtual Machine
● Virtual machines include the application, the
necessary binaries and libraries, and an entire guest
operating system
● Each Guest OS has its own Kernel and user space
Container ProblemContainer Problem
Containers before DockerContainers before Docker
● No standardized exchange format.
(No, a rootfs tarball is not a format!)
● Containers are hard to use for developers.
(Where's the equivalent of docker run debian?)
● No re-usable components, APIs, tools.
(At best: VM abstractions, e.g. libvirt.)
Analogy:
● Shipping containers are not just steel boxes.
● They are steel boxes that are a standard size,
with the same hooks and holes
Docker Solution!!Docker Solution!!
Containers after DockerContainers after Docker
● Standardize the container format, because
containers were not portable.
● Make containers easy to use for developers.
● Emphasis on re-usable components, APIs,
ecosystem of standard tools.
● Improvement over ad-hoc, in-house,
specific tools.
What IT`s Said about DockerWhat IT`s Said about Docker
Developer Say:
Build Once, Run Anywhere
Operator: Configure Once,
Run Anything
Advantages of ContainersAdvantages of Containers
Developer Say:
Build Once, Run Anywhere
A clean, safe, hygienic, portable runtime environment for your app.
No worries about missing dependencies, packages and other pain points
during subsequent deployments.
Run each app in its own isolated container, so you can run various versions of
libraries and other dependencies for each app without worrying.
Automate testing, integration, packaging...anything you can script.
Reduce/eliminate concerns about compatibility on different platforms,
either your own or your customers.
Cheap, zero-penalty containers to deploy services. A VM without the
overhead of a VM. Instant replay and reset of image snapshots.
Advantages of ContainersAdvantages of Containers
Operator: Configure
Once, Run Anything
Make the entire lifecycle more efficient, consistent, and repeatable
Increase the quality of code produced by developers.
Eliminate inconsistencies between development, test, production, and
customer environments.
Support segregation of duties.
Significantly improves the speed and reliability of continuous deployment and
continuous integration systems.
Because the containers are so lightweight, address significant performance,
costs, deployment, and portability issues normally associated with VMs.
Introduction to JBOSS EAPIntroduction to JBOSS EAP
Jboss Enterprise ApplicationJboss Enterprise Application
PlatformPlatform
Build once, deploy Java EE apps everywhere
Red Hat® JBoss® Enterprise Application Platform (JBoss EAP)
delivers enterprise-grade security, performance, and scalability in
any environment. Whether on-premise; virtual; or in private,
public, or hybrid clouds, JBoss EAP can help you deliver apps
faster, everywhere.
Jboss Enterprise ApplicationJboss Enterprise Application
PlatformPlatform
Optimized for cloud and containers
JBoss EAP 7 is built to provide simplified deployment and full
Java™ EE performance for applications in any environment.
Whether on-premise or in virtual, private, public, and hybrid
clouds, JBoss EAP features a modular architecture that starts
services only as they are required. The extreme low memory
footprint and fast startup times mean that JBoss EAP is ideal for
environments where efficient resource utilization is a priority, such
as Red Hat OpenShift.
Jboss Enterprise ApplicationJboss Enterprise Application
PlatformPlatform
More detail about JBOSS EAP please visit:
https://www.redhat.com/en/technologies/jboss-
middleware/application-platform
Jboss EAP Cluster TermJboss EAP Cluster Term
Clustering allows us to run an applications on
several parallel servers (a.k.a cluster nodes). The
load is distributed across different servers, and
even if any of the servers fails, the application is
still accessible via other cluster nodes. Clustering
is crucial for scalable enterprise applications, as
you can improve performance by simply adding
more nodes to the cluster.
JBOSS Cluster TopologyJBOSS Cluster Topology
JBOSS Cluster TopologyJBOSS Cluster Topology
Deploying JBOSS ClusterDeploying JBOSS Cluster
● Install Linux on 2 Server / VM – Duration 60 Minutes
● Install JBOSS on 2 Server / VM – Duration 35 Minutes
● Configure JBOSS Cluster & Testing Cluster – 35 Minutes
● Deploy Application and Configue Datastore – 20 Minutes
● Testing Application and Session Replication – 25 Minutes
● Configure Load Balancer for 2 JBOSS Server – 60 Minutes
Total Time: 235 Minute!! / 4 Hours for Deploying 2
Node JBOSS Cluster
Adding Another JBOSS Node to Cluster: +2 Hours
So... How to Reduce Deployment time???So... How to Reduce Deployment time???
Another Question!!Another Question!!
How to make JBOSS Cluster more easyHow to make JBOSS Cluster more easy
to Manage & Scale???to Manage & Scale???
Short Answer: Dockerize your JBOSS!!
We not only need Docker, we also need
orchestration
Its time to Openshift!!!Its time to Openshift!!!
Yess!!..its OpenShiftYess!!..its OpenShift
OpenShift is an auto-scalable Platform as a
Service. Auto-scalable means OpenShift can
horizontally scale your application up or down
depending on the number of concurrent
connections. OpenShift supports the JBoss
application server, which is a certified platform
for Java EE 6/7 development. As an OpenShift
user, you have access to both the community
version of JBoss and JBoss EAP 6/7(JBoss
Enterprise Application Platform) for free.
We Need more than justWe Need more than just
OrchestrationOrchestration
Self Service
-Templates
- Web Console
Multi-
Language
Automation
- Deploy
- Build
DevOps
Collaboration
Secure
- Namespaced
- RBAC
Scalable
- Integrated LB
Open Source
Enterprise
- Authentication
- Web Console
- Central Logging
OpenShift is Red Hat Container ApplicationOpenShift is Red Hat Container Application
Platform (PaaS)Platform (PaaS)
OpenShift=Enterprise K8sOpenShift=Enterprise K8s
OpenShift Build & DeployOpenShift Build & Deploy
ArchitectureArchitecture
OpenShift Cluster
Master
Node
Storage
Pod
Volume
Node
Service
Pod
Pod
etcd
SkyDNS
Replication
Controller
APIDev/Ops
Router
Deploy
Build
Policies
Registry
Image
VisitorLogging
EFK
Build & Deploy an ImageBuild & Deploy an Image
Cod
e
Deplo
y
Buil
d
Can configure
different
deployment
strategies like
A/B, Rolling
upgrade,
Automated base
updates, and
more.
Can configure
triggers for
automated
deployments,
builds, and more.
Source
2
Image Builder
Image
Develope
SCM
Container Image
Builder Images
•
Jboss-EAP
•
PHP
•
Python
•
Ruby
•
Jenkins
•
Customer
•
C++ / Go
•
S2I (bash) scripts
Triggers
•
Image Change (tagging)
•
Code Change (webhook)
•
Config Change
Continous IntegrationContinous Integration
Pipeline ExamplePipeline Example
Source Build Deploy
:test
:test
Deploy
:test-fw
Test Tag
:uat
Deploy
:uat
commit webhook
registry
ImageChange
registry
ImageChange
Approve Tag
:prod
Deploy
:prod
registry
ImageChange
ITIL
container
Demo time!!... Yeay...Demo time!!... Yeay...
Any Question?
Lets continue to
Openshift Demo..
Its time to Openshift!!!Its time to Openshift!!!
Deploying JBOSS EAPDeploying JBOSS EAP
oc delete project haexample
oc new-project haexample
oc policy add-role-to-user view system:serviceaccount:haexample:default -n
haexample
oc new-app --image-stream="openshift/jboss-eap70-openshift:latest"
https://github.com/isnuryusuf/haexample#master --name='haexample' -l
name='haexample' -e SELECTOR=haexample -e
OPENSHIFT_KUBE_PING_NAMESPACE=haexample
OPENSHIFT_KUBE_PING_LABELS=app=haexample
oc env dc/haexample -e OPENSHIFT_KUBE_PING_NAMESPACE=haexample
OPENSHIFT_KUBE_PING_LABELS=app=haexample
Create project, and assign cluster roles
Create App and Define Cluster Partition
Setting up ClusterSetting up Cluster
ports:
- containerPort: 8080
protocol: TCP
- containerPort: 8443
protocol: TCP
- containerPort: 8778
protocol: TCP
- name: ping
containerPort: 8888
protocol: TCP
[org.jgroups.protocols.openshift.KUBE_PING] (MSC service thread 1-5)
namespace [haexample] set; clustering enabled
[org.jgroups.protocols.openshift.KUBE_PING] (MSC service thread 1-4)
namespace [haexample] set; clustering enabled
[org.infinispan.remoting.transport.jgroups.JGroupsTransport] (MSC service
thread 1-5) ISPN000094: Received new cluster view for channel server:
[haexample-2-pxsd9|0] (1) [haexample-2-pxsd9]
Configuring Cluster on Openshift
Its Running!!!
Configure Auto ScaleConfigure Auto Scale
oc expose service haexample --name haexample
oc get svc
oc create -f limits.json -n haexample
oc describe limits mylimits
oc autoscale dc/haexample --min 1 --max 10 --cpu-percent=90
oc describe dc/haexample
oc get hpa
for i in {1..500}; do curl http://haexample-haexample.smartfintech.i3-
cloud.com/haexample ; done;
while true; do curl -s http://haexample-haexample.smartfintech.i3-
cloud.com/haexample | grep "haexample" | cut -c 55-95; sleep 2; done
Configuring Auto Scale
Testing Auto Scale
More DetailMore Detail
Complete Solution,
Please visit:
https://github.com/isnuryusuf/haexample
Thnks for ComingThnks for Coming
More about me
https://www.linkedin.com/in/yusuf-hadiwinata-sutandar-301
7aa41/
- https://www.facebook.com/yusuf.hadiwinata
- https://github.com/isnuryusuf/
Join me on:
- “Linux administrators” & “CentOS Indonesia Community”
Facebook Group
- Docker UG Indonesia: https://t.me/dockerid
Graha BIP 6th
Floor
Jl. Jend. Gatot Subroto Kav. 23
Jakarta 12930, Indonesia
Phone : (62) 21 290 23393
Fax : (62) 21 525 8065
info@i-3.co.id
www.i-3.co.id
INOVASI
INFORMATIKA
INDONESIA
Inovasi Informatika Indonesia I3_ID

Mais conteúdo relacionado

Mais procurados

Introduction to Red Hat OpenShift 4
Introduction to Red Hat OpenShift 4Introduction to Red Hat OpenShift 4
Introduction to Red Hat OpenShift 4HngNguyn748044
 
stupid-simple-kubernetes-final.pdf
stupid-simple-kubernetes-final.pdfstupid-simple-kubernetes-final.pdf
stupid-simple-kubernetes-final.pdfDaniloQueirozMota
 
Red Hat multi-cluster management & what's new in OpenShift
Red Hat multi-cluster management & what's new in OpenShiftRed Hat multi-cluster management & what's new in OpenShift
Red Hat multi-cluster management & what's new in OpenShiftKangaroot
 
Red Hat OpenShift Operators - Operators ABC
Red Hat OpenShift Operators - Operators ABCRed Hat OpenShift Operators - Operators ABC
Red Hat OpenShift Operators - Operators ABCRobert Bohne
 
OPENSHIFT CONTAINER PLATFORM CI/CD Build & Deploy
OPENSHIFT CONTAINER PLATFORM CI/CD Build & DeployOPENSHIFT CONTAINER PLATFORM CI/CD Build & Deploy
OPENSHIFT CONTAINER PLATFORM CI/CD Build & DeployNatale Vinto
 
Serverless and Design Patterns In GCP
Serverless and Design Patterns In GCPServerless and Design Patterns In GCP
Serverless and Design Patterns In GCPOliver Fierro
 
Lifecycle of a pod
Lifecycle of a podLifecycle of a pod
Lifecycle of a podHarshal Shah
 
Dockers and containers basics
Dockers and containers basicsDockers and containers basics
Dockers and containers basicsSourabh Saxena
 
ServiceMesh と仲間たち 〜Istio & Conduit & Linkerd〜 @Cloud Native Meetup Tokyo #1
ServiceMesh と仲間たち 〜Istio & Conduit & Linkerd〜 @Cloud Native Meetup Tokyo #1ServiceMesh と仲間たち 〜Istio & Conduit & Linkerd〜 @Cloud Native Meetup Tokyo #1
ServiceMesh と仲間たち 〜Istio & Conduit & Linkerd〜 @Cloud Native Meetup Tokyo #1Masaya Aoyama
 
클라우드 네이티브로의 전환을 위한 여정
클라우드 네이티브로의 전환을 위한 여정클라우드 네이티브로의 전환을 위한 여정
클라우드 네이티브로의 전환을 위한 여정VMware Tanzu Korea
 
Introduction to Apache Camel
Introduction to Apache CamelIntroduction to Apache Camel
Introduction to Apache CamelClaus Ibsen
 
UrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slidesUrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slidesIBM Rational software
 
GitOps - Modern best practices for high velocity app dev using cloud native t...
GitOps - Modern best practices for high velocity app dev using cloud native t...GitOps - Modern best practices for high velocity app dev using cloud native t...
GitOps - Modern best practices for high velocity app dev using cloud native t...Weaveworks
 
Journey to the devops automation with docker kubernetes and openshift
Journey to the devops automation with docker kubernetes and openshiftJourney to the devops automation with docker kubernetes and openshift
Journey to the devops automation with docker kubernetes and openshiftYusuf Hadiwinata Sutandar
 
Hands-On Introduction to Kubernetes at LISA17
Hands-On Introduction to Kubernetes at LISA17Hands-On Introduction to Kubernetes at LISA17
Hands-On Introduction to Kubernetes at LISA17Ryan Jarvinen
 
OpenShift 4, the smarter Kubernetes platform
OpenShift 4, the smarter Kubernetes platformOpenShift 4, the smarter Kubernetes platform
OpenShift 4, the smarter Kubernetes platformKangaroot
 
GitOps is IaC done right
GitOps is IaC done rightGitOps is IaC done right
GitOps is IaC done rightChen Cheng-Wei
 

Mais procurados (20)

Introduction to Red Hat OpenShift 4
Introduction to Red Hat OpenShift 4Introduction to Red Hat OpenShift 4
Introduction to Red Hat OpenShift 4
 
stupid-simple-kubernetes-final.pdf
stupid-simple-kubernetes-final.pdfstupid-simple-kubernetes-final.pdf
stupid-simple-kubernetes-final.pdf
 
Kubernetes
KubernetesKubernetes
Kubernetes
 
Red Hat multi-cluster management & what's new in OpenShift
Red Hat multi-cluster management & what's new in OpenShiftRed Hat multi-cluster management & what's new in OpenShift
Red Hat multi-cluster management & what's new in OpenShift
 
Red Hat OpenShift Operators - Operators ABC
Red Hat OpenShift Operators - Operators ABCRed Hat OpenShift Operators - Operators ABC
Red Hat OpenShift Operators - Operators ABC
 
OPENSHIFT CONTAINER PLATFORM CI/CD Build & Deploy
OPENSHIFT CONTAINER PLATFORM CI/CD Build & DeployOPENSHIFT CONTAINER PLATFORM CI/CD Build & Deploy
OPENSHIFT CONTAINER PLATFORM CI/CD Build & Deploy
 
Serverless and Design Patterns In GCP
Serverless and Design Patterns In GCPServerless and Design Patterns In GCP
Serverless and Design Patterns In GCP
 
Kubernetes Basics
Kubernetes BasicsKubernetes Basics
Kubernetes Basics
 
Lifecycle of a pod
Lifecycle of a podLifecycle of a pod
Lifecycle of a pod
 
Dockers and containers basics
Dockers and containers basicsDockers and containers basics
Dockers and containers basics
 
ServiceMesh と仲間たち 〜Istio & Conduit & Linkerd〜 @Cloud Native Meetup Tokyo #1
ServiceMesh と仲間たち 〜Istio & Conduit & Linkerd〜 @Cloud Native Meetup Tokyo #1ServiceMesh と仲間たち 〜Istio & Conduit & Linkerd〜 @Cloud Native Meetup Tokyo #1
ServiceMesh と仲間たち 〜Istio & Conduit & Linkerd〜 @Cloud Native Meetup Tokyo #1
 
클라우드 네이티브로의 전환을 위한 여정
클라우드 네이티브로의 전환을 위한 여정클라우드 네이티브로의 전환을 위한 여정
클라우드 네이티브로의 전환을 위한 여정
 
Introduction to Apache Camel
Introduction to Apache CamelIntroduction to Apache Camel
Introduction to Apache Camel
 
UrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slidesUrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slides
 
GitOps - Modern best practices for high velocity app dev using cloud native t...
GitOps - Modern best practices for high velocity app dev using cloud native t...GitOps - Modern best practices for high velocity app dev using cloud native t...
GitOps - Modern best practices for high velocity app dev using cloud native t...
 
presentation on Docker
presentation on Dockerpresentation on Docker
presentation on Docker
 
Journey to the devops automation with docker kubernetes and openshift
Journey to the devops automation with docker kubernetes and openshiftJourney to the devops automation with docker kubernetes and openshift
Journey to the devops automation with docker kubernetes and openshift
 
Hands-On Introduction to Kubernetes at LISA17
Hands-On Introduction to Kubernetes at LISA17Hands-On Introduction to Kubernetes at LISA17
Hands-On Introduction to Kubernetes at LISA17
 
OpenShift 4, the smarter Kubernetes platform
OpenShift 4, the smarter Kubernetes platformOpenShift 4, the smarter Kubernetes platform
OpenShift 4, the smarter Kubernetes platform
 
GitOps is IaC done right
GitOps is IaC done rightGitOps is IaC done right
GitOps is IaC done right
 

Semelhante a create auto scale jboss cluster with openshift

Immutable Infrastructure: the new App Deployment
Immutable Infrastructure: the new App DeploymentImmutable Infrastructure: the new App Deployment
Immutable Infrastructure: the new App DeploymentAxel Fontaine
 
Containerizing couchbase with microservice architecture on mesosphere.pptx
Containerizing couchbase with microservice architecture on mesosphere.pptxContainerizing couchbase with microservice architecture on mesosphere.pptx
Containerizing couchbase with microservice architecture on mesosphere.pptxRavi Yadav
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to DockerAditya Konarde
 
Shipping NodeJS with Docker and CoreOS
Shipping NodeJS with Docker and CoreOSShipping NodeJS with Docker and CoreOS
Shipping NodeJS with Docker and CoreOSRoss Kukulinski
 
A curtain-raiser to the container world Docker & Kubernetes
A curtain-raiser to the container world Docker & KubernetesA curtain-raiser to the container world Docker & Kubernetes
A curtain-raiser to the container world Docker & KuberneteszekeLabs Technologies
 
Docker Presentation at the OpenStack Austin Meetup | 2013-09-12
Docker Presentation at the OpenStack Austin Meetup | 2013-09-12Docker Presentation at the OpenStack Austin Meetup | 2013-09-12
Docker Presentation at the OpenStack Austin Meetup | 2013-09-12dotCloud
 
Application Deployment on Openstack
Application Deployment on OpenstackApplication Deployment on Openstack
Application Deployment on OpenstackDocker, Inc.
 
Containers: DevOp Enablers of Technical Solutions
Containers: DevOp Enablers of Technical SolutionsContainers: DevOp Enablers of Technical Solutions
Containers: DevOp Enablers of Technical SolutionsJules Pierre-Louis
 
Docker - Portable Deployment
Docker - Portable DeploymentDocker - Portable Deployment
Docker - Portable Deploymentjavaonfly
 
Docker - A high level introduction to dockers and containers
Docker - A high level introduction to dockers and containersDocker - A high level introduction to dockers and containers
Docker - A high level introduction to dockers and containersDr Ganesh Iyer
 
How to build an HA container orchestrator infrastructure for production – Giu...
How to build an HA container orchestrator infrastructure for production – Giu...How to build an HA container orchestrator infrastructure for production – Giu...
How to build an HA container orchestrator infrastructure for production – Giu...Codemotion
 
Containerization Report
Containerization ReportContainerization Report
Containerization ReportJatin Chauhan
 
Containerizing GPU Applications with Docker for Scaling to the Cloud
Containerizing GPU Applications with Docker for Scaling to the CloudContainerizing GPU Applications with Docker for Scaling to the Cloud
Containerizing GPU Applications with Docker for Scaling to the CloudSubbu Rama
 
ThatConference 2016 - Highly Available Node.js
ThatConference 2016 - Highly Available Node.jsThatConference 2016 - Highly Available Node.js
ThatConference 2016 - Highly Available Node.jsBrad Williams
 
Docker - A curtain raiser to the Container world
Docker - A curtain raiser to the Container worldDocker - A curtain raiser to the Container world
Docker - A curtain raiser to the Container worldzekeLabs Technologies
 
DockerCon 15 Keynote - Day 2
DockerCon 15 Keynote - Day 2DockerCon 15 Keynote - Day 2
DockerCon 15 Keynote - Day 2Docker, Inc.
 
Cloudjiffy vs Amazon Elastic Beanstalk
Cloudjiffy vs Amazon Elastic BeanstalkCloudjiffy vs Amazon Elastic Beanstalk
Cloudjiffy vs Amazon Elastic BeanstalkSharma Aashish
 

Semelhante a create auto scale jboss cluster with openshift (20)

Docker handons-workshop-for-charity
Docker handons-workshop-for-charityDocker handons-workshop-for-charity
Docker handons-workshop-for-charity
 
Immutable Infrastructure: the new App Deployment
Immutable Infrastructure: the new App DeploymentImmutable Infrastructure: the new App Deployment
Immutable Infrastructure: the new App Deployment
 
Introduction Into Docker Ecosystem
Introduction Into Docker EcosystemIntroduction Into Docker Ecosystem
Introduction Into Docker Ecosystem
 
Containerizing couchbase with microservice architecture on mesosphere.pptx
Containerizing couchbase with microservice architecture on mesosphere.pptxContainerizing couchbase with microservice architecture on mesosphere.pptx
Containerizing couchbase with microservice architecture on mesosphere.pptx
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to Docker
 
Shipping NodeJS with Docker and CoreOS
Shipping NodeJS with Docker and CoreOSShipping NodeJS with Docker and CoreOS
Shipping NodeJS with Docker and CoreOS
 
A curtain-raiser to the container world Docker & Kubernetes
A curtain-raiser to the container world Docker & KubernetesA curtain-raiser to the container world Docker & Kubernetes
A curtain-raiser to the container world Docker & Kubernetes
 
Docker Presentation at the OpenStack Austin Meetup | 2013-09-12
Docker Presentation at the OpenStack Austin Meetup | 2013-09-12Docker Presentation at the OpenStack Austin Meetup | 2013-09-12
Docker Presentation at the OpenStack Austin Meetup | 2013-09-12
 
Application Deployment on Openstack
Application Deployment on OpenstackApplication Deployment on Openstack
Application Deployment on Openstack
 
Containers: DevOp Enablers of Technical Solutions
Containers: DevOp Enablers of Technical SolutionsContainers: DevOp Enablers of Technical Solutions
Containers: DevOp Enablers of Technical Solutions
 
Docker - Portable Deployment
Docker - Portable DeploymentDocker - Portable Deployment
Docker - Portable Deployment
 
Docker containers intro
Docker containers introDocker containers intro
Docker containers intro
 
Docker - A high level introduction to dockers and containers
Docker - A high level introduction to dockers and containersDocker - A high level introduction to dockers and containers
Docker - A high level introduction to dockers and containers
 
How to build an HA container orchestrator infrastructure for production – Giu...
How to build an HA container orchestrator infrastructure for production – Giu...How to build an HA container orchestrator infrastructure for production – Giu...
How to build an HA container orchestrator infrastructure for production – Giu...
 
Containerization Report
Containerization ReportContainerization Report
Containerization Report
 
Containerizing GPU Applications with Docker for Scaling to the Cloud
Containerizing GPU Applications with Docker for Scaling to the CloudContainerizing GPU Applications with Docker for Scaling to the Cloud
Containerizing GPU Applications with Docker for Scaling to the Cloud
 
ThatConference 2016 - Highly Available Node.js
ThatConference 2016 - Highly Available Node.jsThatConference 2016 - Highly Available Node.js
ThatConference 2016 - Highly Available Node.js
 
Docker - A curtain raiser to the Container world
Docker - A curtain raiser to the Container worldDocker - A curtain raiser to the Container world
Docker - A curtain raiser to the Container world
 
DockerCon 15 Keynote - Day 2
DockerCon 15 Keynote - Day 2DockerCon 15 Keynote - Day 2
DockerCon 15 Keynote - Day 2
 
Cloudjiffy vs Amazon Elastic Beanstalk
Cloudjiffy vs Amazon Elastic BeanstalkCloudjiffy vs Amazon Elastic Beanstalk
Cloudjiffy vs Amazon Elastic Beanstalk
 

Mais de Yusuf Hadiwinata Sutandar

LOUCA23 Yusuf Hadiwinata Linux Security BestPractice
LOUCA23 Yusuf Hadiwinata Linux Security BestPracticeLOUCA23 Yusuf Hadiwinata Linux Security BestPractice
LOUCA23 Yusuf Hadiwinata Linux Security BestPracticeYusuf Hadiwinata Sutandar
 
March of the Penguin - 31 years Linux Snapshot
March of the Penguin - 31 years Linux SnapshotMarch of the Penguin - 31 years Linux Snapshot
March of the Penguin - 31 years Linux SnapshotYusuf Hadiwinata Sutandar
 
Choose the Right Container Storage for Kubernetes
Choose the Right Container Storage for KubernetesChoose the Right Container Storage for Kubernetes
Choose the Right Container Storage for KubernetesYusuf Hadiwinata Sutandar
 
Biznet GIO National Seminar on Digital Forensics
Biznet GIO National Seminar on Digital ForensicsBiznet GIO National Seminar on Digital Forensics
Biznet GIO National Seminar on Digital ForensicsYusuf Hadiwinata Sutandar
 
PHPIDOL#80: Kubernetes 101 for PHP Developer. Yusuf Hadiwinata - VP Operation...
PHPIDOL#80: Kubernetes 101 for PHP Developer. Yusuf Hadiwinata - VP Operation...PHPIDOL#80: Kubernetes 101 for PHP Developer. Yusuf Hadiwinata - VP Operation...
PHPIDOL#80: Kubernetes 101 for PHP Developer. Yusuf Hadiwinata - VP Operation...Yusuf Hadiwinata Sutandar
 
Kubernetes Jakarta Meetup 010 - Service Mesh Observability with Kiali
Kubernetes Jakarta Meetup 010 - Service Mesh Observability with KialiKubernetes Jakarta Meetup 010 - Service Mesh Observability with Kiali
Kubernetes Jakarta Meetup 010 - Service Mesh Observability with KialiYusuf Hadiwinata Sutandar
 
Protecting National Critical Infrastructure Asiangames 2018
Protecting National Critical Infrastructure Asiangames 2018Protecting National Critical Infrastructure Asiangames 2018
Protecting National Critical Infrastructure Asiangames 2018Yusuf Hadiwinata Sutandar
 
Devops Indonesia Presentation Monitoring Framework
Devops Indonesia Presentation Monitoring FrameworkDevops Indonesia Presentation Monitoring Framework
Devops Indonesia Presentation Monitoring FrameworkYusuf Hadiwinata Sutandar
 
Devops Indonesia - DevSecOps - The Open Source Way
Devops Indonesia - DevSecOps - The Open Source WayDevops Indonesia - DevSecOps - The Open Source Way
Devops Indonesia - DevSecOps - The Open Source WayYusuf Hadiwinata Sutandar
 

Mais de Yusuf Hadiwinata Sutandar (20)

LOUCA23 Yusuf Hadiwinata Linux Security BestPractice
LOUCA23 Yusuf Hadiwinata Linux Security BestPracticeLOUCA23 Yusuf Hadiwinata Linux Security BestPractice
LOUCA23 Yusuf Hadiwinata Linux Security BestPractice
 
How DevOps works in the Enterprise
How DevOps works  in the EnterpriseHow DevOps works  in the Enterprise
How DevOps works in the Enterprise
 
Acronis Meet and Learn
Acronis Meet and LearnAcronis Meet and Learn
Acronis Meet and Learn
 
BiznetGio Presentation Business Continuity
BiznetGio Presentation Business ContinuityBiznetGio Presentation Business Continuity
BiznetGio Presentation Business Continuity
 
March of the Penguin - 31 years Linux Snapshot
March of the Penguin - 31 years Linux SnapshotMarch of the Penguin - 31 years Linux Snapshot
March of the Penguin - 31 years Linux Snapshot
 
Choose the Right Container Storage for Kubernetes
Choose the Right Container Storage for KubernetesChoose the Right Container Storage for Kubernetes
Choose the Right Container Storage for Kubernetes
 
Biznet GIO National Seminar on Digital Forensics
Biznet GIO National Seminar on Digital ForensicsBiznet GIO National Seminar on Digital Forensics
Biznet GIO National Seminar on Digital Forensics
 
PHPIDOL#80: Kubernetes 101 for PHP Developer. Yusuf Hadiwinata - VP Operation...
PHPIDOL#80: Kubernetes 101 for PHP Developer. Yusuf Hadiwinata - VP Operation...PHPIDOL#80: Kubernetes 101 for PHP Developer. Yusuf Hadiwinata - VP Operation...
PHPIDOL#80: Kubernetes 101 for PHP Developer. Yusuf Hadiwinata - VP Operation...
 
Kubernetes Jakarta Meetup 010 - Service Mesh Observability with Kiali
Kubernetes Jakarta Meetup 010 - Service Mesh Observability with KialiKubernetes Jakarta Meetup 010 - Service Mesh Observability with Kiali
Kubernetes Jakarta Meetup 010 - Service Mesh Observability with Kiali
 
Protecting National Critical Infrastructure Asiangames 2018
Protecting National Critical Infrastructure Asiangames 2018Protecting National Critical Infrastructure Asiangames 2018
Protecting National Critical Infrastructure Asiangames 2018
 
Devops Indonesia Presentation Monitoring Framework
Devops Indonesia Presentation Monitoring FrameworkDevops Indonesia Presentation Monitoring Framework
Devops Indonesia Presentation Monitoring Framework
 
Biznet Gio Presentation - Database Security
Biznet Gio Presentation - Database SecurityBiznet Gio Presentation - Database Security
Biznet Gio Presentation - Database Security
 
Biznet Gio Presentation - Cloud Computing
Biznet Gio Presentation - Cloud ComputingBiznet Gio Presentation - Cloud Computing
Biznet Gio Presentation - Cloud Computing
 
Bssn book security awarness
Bssn book security awarnessBssn book security awarness
Bssn book security awarness
 
Job vacancies cti group
Job vacancies cti groupJob vacancies cti group
Job vacancies cti group
 
Devops Indonesia - DevSecOps - The Open Source Way
Devops Indonesia - DevSecOps - The Open Source WayDevops Indonesia - DevSecOps - The Open Source Way
Devops Indonesia - DevSecOps - The Open Source Way
 
Devops indonesia - The Future Container
Devops indonesia - The Future ContainerDevops indonesia - The Future Container
Devops indonesia - The Future Container
 
War of Openstack Private Cloud Distribution
War of Openstack Private Cloud DistributionWar of Openstack Private Cloud Distribution
War of Openstack Private Cloud Distribution
 
Docker meetup-20-apr-17-openshit
Docker meetup-20-apr-17-openshitDocker meetup-20-apr-17-openshit
Docker meetup-20-apr-17-openshit
 
I3 docker-intro-yusuf
I3 docker-intro-yusufI3 docker-intro-yusuf
I3 docker-intro-yusuf
 

Último

『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书rnrncn29
 
Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170Sonam Pathan
 
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)Christopher H Felton
 
PHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 DocumentationPHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 DocumentationLinaWolf1
 
Magic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptxMagic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptxMartaLoveguard
 
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一Fs
 
Elevate Your Business with Our IT Expertise in New Orleans
Elevate Your Business with Our IT Expertise in New OrleansElevate Your Business with Our IT Expertise in New Orleans
Elevate Your Business with Our IT Expertise in New Orleanscorenetworkseo
 
Film cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasaFilm cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasa494f574xmv
 
Top 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxTop 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxDyna Gilbert
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Paul Calvano
 
Blepharitis inflammation of eyelid symptoms cause everything included along w...
Blepharitis inflammation of eyelid symptoms cause everything included along w...Blepharitis inflammation of eyelid symptoms cause everything included along w...
Blepharitis inflammation of eyelid symptoms cause everything included along w...Excelmac1
 
NSX-T and Service Interfaces presentation
NSX-T and Service Interfaces presentationNSX-T and Service Interfaces presentation
NSX-T and Service Interfaces presentationMarko4394
 
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书zdzoqco
 
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一Fs
 
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一Fs
 
Contact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New DelhiContact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New Delhimiss dipika
 
Q4-1-Illustrating-Hypothesis-Testing.pptx
Q4-1-Illustrating-Hypothesis-Testing.pptxQ4-1-Illustrating-Hypothesis-Testing.pptx
Q4-1-Illustrating-Hypothesis-Testing.pptxeditsforyah
 
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作ys8omjxb
 

Último (20)

『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
 
Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170Call Girls Near The Suryaa Hotel New Delhi 9873777170
Call Girls Near The Suryaa Hotel New Delhi 9873777170
 
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
 
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
 
PHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 DocumentationPHP-based rendering of TYPO3 Documentation
PHP-based rendering of TYPO3 Documentation
 
Magic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptxMagic exist by Marta Loveguard - presentation.pptx
Magic exist by Marta Loveguard - presentation.pptx
 
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
 
Elevate Your Business with Our IT Expertise in New Orleans
Elevate Your Business with Our IT Expertise in New OrleansElevate Your Business with Our IT Expertise in New Orleans
Elevate Your Business with Our IT Expertise in New Orleans
 
Film cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasaFilm cover research (1).pptxsdasdasdasdasdasa
Film cover research (1).pptxsdasdasdasdasdasa
 
Top 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptxTop 10 Interactive Website Design Trends in 2024.pptx
Top 10 Interactive Website Design Trends in 2024.pptx
 
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
young call girls in Uttam Nagar🔝 9953056974 🔝 Delhi escort Service
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24
 
Blepharitis inflammation of eyelid symptoms cause everything included along w...
Blepharitis inflammation of eyelid symptoms cause everything included along w...Blepharitis inflammation of eyelid symptoms cause everything included along w...
Blepharitis inflammation of eyelid symptoms cause everything included along w...
 
NSX-T and Service Interfaces presentation
NSX-T and Service Interfaces presentationNSX-T and Service Interfaces presentation
NSX-T and Service Interfaces presentation
 
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
办理多伦多大学毕业证成绩单|购买加拿大UTSG文凭证书
 
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
 
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
 
Contact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New DelhiContact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New Delhi
 
Q4-1-Illustrating-Hypothesis-Testing.pptx
Q4-1-Illustrating-Hypothesis-Testing.pptxQ4-1-Illustrating-Hypothesis-Testing.pptx
Q4-1-Illustrating-Hypothesis-Testing.pptx
 
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
 

create auto scale jboss cluster with openshift

  • 1. INOVASI INFORMATIKA INDONESIA Running AutoScaling JBOSSRunning AutoScaling JBOSS Cluster with OpenShiftCluster with OpenShift Yusuf Hadiwinata Sutandar
  • 2. ● What Problem Need to SolveWhat Problem Need to Solve ● Container & Docker SolutionContainer & Docker Solution ● Kubernetes & OpenShift SolutionKubernetes & OpenShift Solution ● Building Simple Application with OpenshiftBuilding Simple Application with Openshift ● Building JBOSS Cluster with OpenShiftBuilding JBOSS Cluster with OpenShift ● Auto scaling JBOSS Node Cluster withAuto scaling JBOSS Node Cluster with OpenshiftOpenshift ● Bonus: Continues Integration and Delivery withBonus: Continues Integration and Delivery with OpenShift, Jenkins, SonarQube, Nexus andOpenShift, Jenkins, SonarQube, Nexus and GogsGogs AgendaAgenda
  • 3. BackgroundBackground High availability and fail-over are very important featureHigh availability and fail-over are very important feature for any kind of infrastructure. As the name suggests thefor any kind of infrastructure. As the name suggests the services should be available at any given point of timeservices should be available at any given point of time and requests should fail over if any component goesand requests should fail over if any component goes down abruptly. You can have several parallel instance ofdown abruptly. You can have several parallel instance of an application and can scale up and down depending onan application and can scale up and down depending on the business requirement, without worrying much aboutthe business requirement, without worrying much about the cost. Load is distributed across different servers, andthe cost. Load is distributed across different servers, and even if one or more of the servers fails, the application iseven if one or more of the servers fails, the application is still accessible via the other application instances. HA isstill accessible via the other application instances. HA is crucial for scalable enterprise applications, as you cancrucial for scalable enterprise applications, as you can improve performance by adding more pod/containerimprove performance by adding more pod/container (which will be replica of your current one).(which will be replica of your current one).
  • 4. Introduction to Container &Introduction to Container & DockerDocker
  • 7. The Solution!!The Solution!! 90% of all cargo now shipped in a90% of all cargo now shipped in a standard containerstandard container Order of magnitude reduction in costOrder of magnitude reduction in cost and time to load and unload ships,and time to load and unload ships, trains, truckstrains, trucks
  • 8. How about Application Development &How about Application Development & Deployment???Deployment??? Another Question!!Another Question!!
  • 10. The App ProblemThe App Problem
  • 11. The App SolutionThe App Solution
  • 12. The App SolutionThe App Solution
  • 13. Advantages of ContainersAdvantages of Containers ● Low hardware footprint – Uses OS internal features to create an isolated environment where resources are managed using OS facilities such as namespaces and cgroups. This approach minimizes the amount of CPU and memory overhead compared to a virtual machine hypervisor. Running an application in a VM is a way to create isolation from the running environment, but it requires a heavy layer of services to support the same low hardware footprint isolation provided by containers. ● Environment isolation – Works in a closed environment where changes made to the host OS or other applications do not affect the container. Because the libraries needed by a container are self-contained, the application can run without disruption. For example, each application can exist in its own container with its own set of libraries. An update made to one container does not affect other containers, which might not work with the update.
  • 14. Advantages of ContainersAdvantages of Containers cont..cont.. ● Quick deployment – Deploys any container quickly because there is no need for a full OS install or restart. Normally, to support the isolation, a new OS installation is required on a physical host or VM, and any simple update might require a full OS restart. A container only requires a restart without stopping any services on the host OS. ● Multiple environment deployment – In a traditional deployment scenario using a single host, any environment differences might potentially break the application. Using containers, however, the differences and incompatibilities are mitigated because the same container image is used. ● Reusability – The same container can be reused by multiple applications without the need to set up a full OS. A database container can be used to create a set of tables for a software application, and it can be quickly destroyed and recreated without the need to run a set of housekeeping tasks. Additionally, the same database container can be used by the production environment to deploy an application.
  • 15. Is not Virtualizaiton :)Is not Virtualizaiton :) Linux Kernel App1 App2 App3 Isolation, not Virtualization • Kernel Namespaces • Process • Network • IPC • Mount • User • Resource Limits • Cgroups • Security • SELinux
  • 16. Container SolutionContainer Solution Virtual Machine and Container Complement each otherVirtual Machine and Container Complement each other Containers ● Containers run as isolated processes in user space of host OS ● They share the kernel with other container (container-processes) ● Containers include the application and all of its dependencies ● Not tied to specific infrastructure Virtual Machine ● Virtual machines include the application, the necessary binaries and libraries, and an entire guest operating system ● Each Guest OS has its own Kernel and user space
  • 17. Container ProblemContainer Problem Containers before DockerContainers before Docker ● No standardized exchange format. (No, a rootfs tarball is not a format!) ● Containers are hard to use for developers. (Where's the equivalent of docker run debian?) ● No re-usable components, APIs, tools. (At best: VM abstractions, e.g. libvirt.) Analogy: ● Shipping containers are not just steel boxes. ● They are steel boxes that are a standard size, with the same hooks and holes
  • 18. Docker Solution!!Docker Solution!! Containers after DockerContainers after Docker ● Standardize the container format, because containers were not portable. ● Make containers easy to use for developers. ● Emphasis on re-usable components, APIs, ecosystem of standard tools. ● Improvement over ad-hoc, in-house, specific tools.
  • 19. What IT`s Said about DockerWhat IT`s Said about Docker Developer Say: Build Once, Run Anywhere Operator: Configure Once, Run Anything
  • 20. Advantages of ContainersAdvantages of Containers Developer Say: Build Once, Run Anywhere A clean, safe, hygienic, portable runtime environment for your app. No worries about missing dependencies, packages and other pain points during subsequent deployments. Run each app in its own isolated container, so you can run various versions of libraries and other dependencies for each app without worrying. Automate testing, integration, packaging...anything you can script. Reduce/eliminate concerns about compatibility on different platforms, either your own or your customers. Cheap, zero-penalty containers to deploy services. A VM without the overhead of a VM. Instant replay and reset of image snapshots.
  • 21. Advantages of ContainersAdvantages of Containers Operator: Configure Once, Run Anything Make the entire lifecycle more efficient, consistent, and repeatable Increase the quality of code produced by developers. Eliminate inconsistencies between development, test, production, and customer environments. Support segregation of duties. Significantly improves the speed and reliability of continuous deployment and continuous integration systems. Because the containers are so lightweight, address significant performance, costs, deployment, and portability issues normally associated with VMs.
  • 22. Introduction to JBOSS EAPIntroduction to JBOSS EAP
  • 23. Jboss Enterprise ApplicationJboss Enterprise Application PlatformPlatform Build once, deploy Java EE apps everywhere Red Hat® JBoss® Enterprise Application Platform (JBoss EAP) delivers enterprise-grade security, performance, and scalability in any environment. Whether on-premise; virtual; or in private, public, or hybrid clouds, JBoss EAP can help you deliver apps faster, everywhere.
  • 24. Jboss Enterprise ApplicationJboss Enterprise Application PlatformPlatform Optimized for cloud and containers JBoss EAP 7 is built to provide simplified deployment and full Java™ EE performance for applications in any environment. Whether on-premise or in virtual, private, public, and hybrid clouds, JBoss EAP features a modular architecture that starts services only as they are required. The extreme low memory footprint and fast startup times mean that JBoss EAP is ideal for environments where efficient resource utilization is a priority, such as Red Hat OpenShift.
  • 25. Jboss Enterprise ApplicationJboss Enterprise Application PlatformPlatform More detail about JBOSS EAP please visit: https://www.redhat.com/en/technologies/jboss- middleware/application-platform
  • 26. Jboss EAP Cluster TermJboss EAP Cluster Term Clustering allows us to run an applications on several parallel servers (a.k.a cluster nodes). The load is distributed across different servers, and even if any of the servers fails, the application is still accessible via other cluster nodes. Clustering is crucial for scalable enterprise applications, as you can improve performance by simply adding more nodes to the cluster.
  • 27. JBOSS Cluster TopologyJBOSS Cluster Topology
  • 28. JBOSS Cluster TopologyJBOSS Cluster Topology
  • 29. Deploying JBOSS ClusterDeploying JBOSS Cluster ● Install Linux on 2 Server / VM – Duration 60 Minutes ● Install JBOSS on 2 Server / VM – Duration 35 Minutes ● Configure JBOSS Cluster & Testing Cluster – 35 Minutes ● Deploy Application and Configue Datastore – 20 Minutes ● Testing Application and Session Replication – 25 Minutes ● Configure Load Balancer for 2 JBOSS Server – 60 Minutes Total Time: 235 Minute!! / 4 Hours for Deploying 2 Node JBOSS Cluster Adding Another JBOSS Node to Cluster: +2 Hours
  • 30. So... How to Reduce Deployment time???So... How to Reduce Deployment time??? Another Question!!Another Question!! How to make JBOSS Cluster more easyHow to make JBOSS Cluster more easy to Manage & Scale???to Manage & Scale??? Short Answer: Dockerize your JBOSS!! We not only need Docker, we also need orchestration
  • 31. Its time to Openshift!!!Its time to Openshift!!!
  • 32. Yess!!..its OpenShiftYess!!..its OpenShift OpenShift is an auto-scalable Platform as a Service. Auto-scalable means OpenShift can horizontally scale your application up or down depending on the number of concurrent connections. OpenShift supports the JBoss application server, which is a certified platform for Java EE 6/7 development. As an OpenShift user, you have access to both the community version of JBoss and JBoss EAP 6/7(JBoss Enterprise Application Platform) for free.
  • 33. We Need more than justWe Need more than just OrchestrationOrchestration Self Service -Templates - Web Console Multi- Language Automation - Deploy - Build DevOps Collaboration Secure - Namespaced - RBAC Scalable - Integrated LB Open Source Enterprise - Authentication - Web Console - Central Logging OpenShift is Red Hat Container ApplicationOpenShift is Red Hat Container Application Platform (PaaS)Platform (PaaS)
  • 35. OpenShift Build & DeployOpenShift Build & Deploy ArchitectureArchitecture OpenShift Cluster Master Node Storage Pod Volume Node Service Pod Pod etcd SkyDNS Replication Controller APIDev/Ops Router Deploy Build Policies Registry Image VisitorLogging EFK
  • 36. Build & Deploy an ImageBuild & Deploy an Image Cod e Deplo y Buil d Can configure different deployment strategies like A/B, Rolling upgrade, Automated base updates, and more. Can configure triggers for automated deployments, builds, and more. Source 2 Image Builder Image Develope SCM Container Image Builder Images • Jboss-EAP • PHP • Python • Ruby • Jenkins • Customer • C++ / Go • S2I (bash) scripts Triggers • Image Change (tagging) • Code Change (webhook) • Config Change
  • 37. Continous IntegrationContinous Integration Pipeline ExamplePipeline Example Source Build Deploy :test :test Deploy :test-fw Test Tag :uat Deploy :uat commit webhook registry ImageChange registry ImageChange Approve Tag :prod Deploy :prod registry ImageChange ITIL container
  • 38. Demo time!!... Yeay...Demo time!!... Yeay... Any Question? Lets continue to Openshift Demo..
  • 39. Its time to Openshift!!!Its time to Openshift!!!
  • 40. Deploying JBOSS EAPDeploying JBOSS EAP oc delete project haexample oc new-project haexample oc policy add-role-to-user view system:serviceaccount:haexample:default -n haexample oc new-app --image-stream="openshift/jboss-eap70-openshift:latest" https://github.com/isnuryusuf/haexample#master --name='haexample' -l name='haexample' -e SELECTOR=haexample -e OPENSHIFT_KUBE_PING_NAMESPACE=haexample OPENSHIFT_KUBE_PING_LABELS=app=haexample oc env dc/haexample -e OPENSHIFT_KUBE_PING_NAMESPACE=haexample OPENSHIFT_KUBE_PING_LABELS=app=haexample Create project, and assign cluster roles Create App and Define Cluster Partition
  • 41. Setting up ClusterSetting up Cluster ports: - containerPort: 8080 protocol: TCP - containerPort: 8443 protocol: TCP - containerPort: 8778 protocol: TCP - name: ping containerPort: 8888 protocol: TCP [org.jgroups.protocols.openshift.KUBE_PING] (MSC service thread 1-5) namespace [haexample] set; clustering enabled [org.jgroups.protocols.openshift.KUBE_PING] (MSC service thread 1-4) namespace [haexample] set; clustering enabled [org.infinispan.remoting.transport.jgroups.JGroupsTransport] (MSC service thread 1-5) ISPN000094: Received new cluster view for channel server: [haexample-2-pxsd9|0] (1) [haexample-2-pxsd9] Configuring Cluster on Openshift Its Running!!!
  • 42. Configure Auto ScaleConfigure Auto Scale oc expose service haexample --name haexample oc get svc oc create -f limits.json -n haexample oc describe limits mylimits oc autoscale dc/haexample --min 1 --max 10 --cpu-percent=90 oc describe dc/haexample oc get hpa for i in {1..500}; do curl http://haexample-haexample.smartfintech.i3- cloud.com/haexample ; done; while true; do curl -s http://haexample-haexample.smartfintech.i3- cloud.com/haexample | grep "haexample" | cut -c 55-95; sleep 2; done Configuring Auto Scale Testing Auto Scale
  • 43. More DetailMore Detail Complete Solution, Please visit: https://github.com/isnuryusuf/haexample
  • 44. Thnks for ComingThnks for Coming More about me https://www.linkedin.com/in/yusuf-hadiwinata-sutandar-301 7aa41/ - https://www.facebook.com/yusuf.hadiwinata - https://github.com/isnuryusuf/ Join me on: - “Linux administrators” & “CentOS Indonesia Community” Facebook Group - Docker UG Indonesia: https://t.me/dockerid
  • 45. Graha BIP 6th Floor Jl. Jend. Gatot Subroto Kav. 23 Jakarta 12930, Indonesia Phone : (62) 21 290 23393 Fax : (62) 21 525 8065 info@i-3.co.id www.i-3.co.id INOVASI INFORMATIKA INDONESIA Inovasi Informatika Indonesia I3_ID