Remote CLuster deployment
why we need it?
GDA TESTING
REMOTE CLUSTER TESTNG
REMOVE DEPLOYMENT LOGIC FROM JENKINS
DEPLOYMENT AS A SEPARATE LAYER IN FUNCTIONAL, UNIT AND PERFORMANCE TESTING
What is Docker?
DOCKER
Docker is an open-source project that automates the deployment of applications inside software containers, by providing an additional layer of abstraction and automation of operating-system-level virtualization on Linux. Docker uses the resource isolation features of the Linux kernel such as cgroups and kernel namespaces.
DOCKER SWARM
Docker Swarm is native clustering for Docker. It turns a pool of Docker hosts into a single, virtual Docker host.
Docker containers wrap up a piece of software in a complete filesystem that contains everything it needs to run: code, runtime, system tools, system libraries – anything you can install on a server. This guarantees that it will always run the same, regardless of the environment it is running in.
DOCKER CONTEINER
Docker Machine is a tool that lets you install Docker Engine on virtual hosts, and manage the hosts with docker-machine commands.
DOCKER MACHINE
Docker & VM - DIFFERENCES
LOADING AWESOME
LOADING AWESOME
Add short body of text
Some charts from google. Info source.
Docker: PRO and cons
Weaker isolation
Not right for all tasks
(ideally suited to microservice-type application but some applications simply need to be monolithic)
Limited support Mac and Win
Security Concerns
(root-level access within a container in some cases have the same root access to the underlying operating system)
Lightweight
Portability
Performance
"But we have plan 'B'? Right?"
- Docker Machine
- Vagrant (build in docker support)
HIGH LEVEL workflow
Jenkins Income
Docker Env
Testing Phase
Reporting Pahse
- Docker Swarn decides based load strategy where to deploy Docker container
- Deploy Container
- Start parstream server
- Parstream Version
- Number of nodes
- Unit Testing
- Functional Testing
- Performance Testing
- Any type of testing
"Just right Docekr Conteiner"
Generating / Analysing reports and publishing them on Jenkins
Do you have an example? - http://vmhudson:8080/view/QA/job/88-remote-cluster-deployment-docker-draft/
WHAT NEXT?
Refactoring/Adopting 'old' framework test suites
Creating conteiner Store with Parstream Data (ex: OTP)
Creating container Store with old Parstream versions
Performance Testing (JMeter/Pgbench)
Defining Reporting System
And many many more :-)
QUESTIONS?
LOADING AWESOME