SlideShare a Scribd company logo
daniel8192.wordpress.com@daniel8192
My local test Environment
Daniel Hillinger
Daniel Hillinger
• Senior Consultant at Trivadis Germany GmbH
Munich
• Focus:
• Oracle (RAC, Grid Infrastructure, Exadata, Dataguard)
• Unix/Linux (OEL, RedHat, Solaris)
• Azure (Automation, Design and Security)
@daniel8192 daniel8192.wordpress.com
My local test Environment
My local test Environment
Agenda
• Requirements for test environments
• Runtime environments
• Automation
• Sharing of environments
• Conclusion
Types of Tests
Functional tests of Utilities Application tests
Stress tests Performance tests
Generic requirements
Repeatable Same for all developers Easy deploy and rollback
High degree of
automatisim
Dependency handling Versioned
Requirements for local environments
Small footprint in terms of
resources
Mainly similar to
production
Completly local
DB
Application
Server
Webserver ...
Endian OS
Versions Libraries
Storage CPU
RAM
Performan
ce
Runtime environment
Runtime environments
• Native
• Fully virtualized operating system
• Container
• Sandbox
Native
• Directly on the OS
• Complex for some tools (Oracle DB)
• Bad portability
• Less comparable
• No overhead from environment
Host
OS
AppDB
Fully virtualized operating system
• High overhead from environment
• Maximum flexibel
• Easy to share
• Complex handling of dependencies
• Network and Startup
• Virtual box
• Workstation pro (fromer vmware workstation)
• HyperV
• Kvm
• Wsl2
• Parallels Desktop Host
OS
AppDB
Virtualisation
OSOS
Virtual Box
Container
• Less overhead from environment
• Shared kernel, but seperate libaries and runtime environment
• Flexibel
• OS dependencies
• Docker
• Podman
• Libvirt
Host
OS
ContainerContainer
AppDB
Container Runtime
Docker
• Large distribution
• Large amout of prebuild images available
on hub.docker.com
• Build described as code (Dockerfile)
Sandbox
• Less overhead from environment
• Shared kernel and libraries but separated runtime environment
• Wine / CrossOver
• Windows Subsystem for Linux (Wsl)
Host
OS
Runtime envRuntime env
AppDB
Windows Subsystem for Linux
Dependencies
• Maybe different for developer (linux, windows, macOS)
• Maybe different ways of working (IDEs)
• Maybe diffrent requirements for frontend, backend, mobile, …
• Available integration for IDEs
• Breakpoints
• Watching variables
• Tool dependencies
• Docker and Virtual box not in parallel
Automation
Automation
• Automatic setup and update of the environment
• Including Network
• Automatic start and stop with dependencies
• Automatic local deployment
• Same for all developers
vagrant init
vagrant up
vagrant ssh
Vagrant
• Easy setup
• Large community and ready to use images + vagrantfiles
on app.vagrantup.com
• Syntax based on Ruby
• Virtual Box, Docker, libvirt, …
Docker compose
• Only for Docker images
• YAML files for the config
• Supports data persistence, but must be configured
Kubernetes
• Container orchestration
• Only for docker or RKT images
• Integrated in docker desktop
• YAML / JSON files for the config
• Supports data persistance, but must be configured
Handmade Scripts
• Very flexible
• Huge amount of effort
• Hard to fit several environments / OS / …
• Seperated tests
Sharing of environments
Sharing of environments
• Fully virtualized operating system
• Remove all controlers (audio/usb)
• Remove all images (cd /disktette)
• Use VMDK format (short for Virtual Machine Disk) supported by Virtual Box, Vmware , Parallels
Desktop, …
• Split disks into 2g files
• Virtual box
• Install latest vbaddins
• Use the same version of virtual box
Sharing of environments
• Cointainer
• Share definition file (Dockerfile) and image
• Small images (minimise additional libraries)
• Easy rebuild with docker file
Conclusion
Conclusion
• A Large bunch of tools and options
• Combinations are possible and often useful
• Do it yourself is often to much work
• Prebuild images are the key to fast testing and current versions
• Be careful with network access to your local OS
What I use ...
• Windows Subsystem for Linux (WSL)
• Virtual box
• Docker inside virtual box
• Sometimes an additional DNS server
• Vagrant, only for basic vm setup
Any Questions?

More Related Content

PDF
AWS RDS Oracle - What is missing for a fully managed service?
PDF
WSO2Con USA 2017: Scalable Real-time Complex Event Processing at Uber
PPTX
Event Bus as Backbone for Decoupled Microservice Choreography (Oracle Code, A...
PPTX
Getting Started, Low Hanging Fruit: Our First Experiences with Oracle Managem...
PPTX
Tokyo azure meetup #9 azure update, october
PDF
Webinar Slides: Geo-Distributed MySQL Clustering Done Right!
PPTX
Tokyo azure meetup #8 - Azure Update, August
PDF
Developing the Stratoscale System at Scale - Muli Ben-Yehuda, Stratoscale - D...
AWS RDS Oracle - What is missing for a fully managed service?
WSO2Con USA 2017: Scalable Real-time Complex Event Processing at Uber
Event Bus as Backbone for Decoupled Microservice Choreography (Oracle Code, A...
Getting Started, Low Hanging Fruit: Our First Experiences with Oracle Managem...
Tokyo azure meetup #9 azure update, october
Webinar Slides: Geo-Distributed MySQL Clustering Done Right!
Tokyo azure meetup #8 - Azure Update, August
Developing the Stratoscale System at Scale - Muli Ben-Yehuda, Stratoscale - D...

What's hot (20)

PPTX
Tokyo Azure Meetup #9 - Azure Update, september
PPTX
Choosing the right Cloud Database
PPTX
DAC 2012
PPTX
PPT
JDD 2016 - Jacek Bukowski - "Flying To Clouds" - Can It Be Easy?
PPT
Flying to clouds - can it be easy? Cloud Native Applications
PDF
Tech ED 2014 Running Oracle Databases and Application Servers on Azurev1
PDF
oracle openworld review UX presentation 2016
PPTX
Adi Sapir ISUG 123 11/10/2012
PPTX
Key Design Considerations Private and Hybrid Clouds - RightScale Compute 2013
PPTX
Docker y azure container service
PPTX
How to Set Up ApsaraDB for RDS on Alibaba Cloud
PDF
Azure Virtual Machines Deployment Scenarios
PPTX
SQL Server 2016 New Security Features
PPTX
Operations Management Suite, the Penguins and the others
PPTX
Handson Oracle Management Cloud with Application Performance Monitoring and L...
PDF
Building Applications with Carbon Studio on Premise and Cloud
PPTX
Responding to Digital Transformation With RDS Database Technology
PPTX
Azure PaaS databases
PDF
Windows azure sql_database_security_isug012013
Tokyo Azure Meetup #9 - Azure Update, september
Choosing the right Cloud Database
DAC 2012
JDD 2016 - Jacek Bukowski - "Flying To Clouds" - Can It Be Easy?
Flying to clouds - can it be easy? Cloud Native Applications
Tech ED 2014 Running Oracle Databases and Application Servers on Azurev1
oracle openworld review UX presentation 2016
Adi Sapir ISUG 123 11/10/2012
Key Design Considerations Private and Hybrid Clouds - RightScale Compute 2013
Docker y azure container service
How to Set Up ApsaraDB for RDS on Alibaba Cloud
Azure Virtual Machines Deployment Scenarios
SQL Server 2016 New Security Features
Operations Management Suite, the Penguins and the others
Handson Oracle Management Cloud with Application Performance Monitoring and L...
Building Applications with Carbon Studio on Premise and Cloud
Responding to Digital Transformation With RDS Database Technology
Azure PaaS databases
Windows azure sql_database_security_isug012013
Ad

Similar to My local test Environment (20)

PPTX
Intro to Docker October 2013
PPTX
OpenStack Summit
PPTX
Docker introduction
PPTX
Docker-Intro
PPTX
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
PPTX
Intro Docker october 2013
PPTX
Docker presentation for sharing
PPTX
Using Docker in production: Get started today!
PDF
IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction à D...
PPTX
Docker - Portable Deployment
PPTX
Docker Workshop
PPTX
Introduction: Basic Installation Docker Container
PPTX
ma-formation-en-Docker-jlklk,nknkjn.pptx
PDF
Virtualization VM VirtualBox + Oracle Enterprise Linux With Oracle 11GR2
PPTX
Intro to Docker November 2013
PDF
Introduction to Containers - SQL Server and Docker
PDF
Introduction to Docker
PDF
Containing the world with Docker
PDF
stackconf 2020 | Replace your Docker based Containers with Cri-o Kata Contain...
Intro to Docker October 2013
OpenStack Summit
Docker introduction
Docker-Intro
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Intro Docker october 2013
Docker presentation for sharing
Using Docker in production: Get started today!
IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction à D...
Docker - Portable Deployment
Docker Workshop
Introduction: Basic Installation Docker Container
ma-formation-en-Docker-jlklk,nknkjn.pptx
Virtualization VM VirtualBox + Oracle Enterprise Linux With Oracle 11GR2
Intro to Docker November 2013
Introduction to Containers - SQL Server and Docker
Introduction to Docker
Containing the world with Docker
stackconf 2020 | Replace your Docker based Containers with Cri-o Kata Contain...
Ad

Recently uploaded (20)

PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Approach and Philosophy of On baking technology
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Machine learning based COVID-19 study performance prediction
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
KodekX | Application Modernization Development
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Digital-Transformation-Roadmap-for-Companies.pptx
Approach and Philosophy of On baking technology
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Machine learning based COVID-19 study performance prediction
Chapter 3 Spatial Domain Image Processing.pdf
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
KodekX | Application Modernization Development
Review of recent advances in non-invasive hemoglobin estimation
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Per capita expenditure prediction using model stacking based on satellite ima...
Building Integrated photovoltaic BIPV_UPV.pdf
Encapsulation_ Review paper, used for researhc scholars
20250228 LYD VKU AI Blended-Learning.pptx
Mobile App Security Testing_ A Comprehensive Guide.pdf
Bridging biosciences and deep learning for revolutionary discoveries: a compr...

My local test Environment

  • 2. Daniel Hillinger • Senior Consultant at Trivadis Germany GmbH Munich • Focus: • Oracle (RAC, Grid Infrastructure, Exadata, Dataguard) • Unix/Linux (OEL, RedHat, Solaris) • Azure (Automation, Design and Security) @daniel8192 daniel8192.wordpress.com
  • 5. Agenda • Requirements for test environments • Runtime environments • Automation • Sharing of environments • Conclusion
  • 6. Types of Tests Functional tests of Utilities Application tests Stress tests Performance tests
  • 7. Generic requirements Repeatable Same for all developers Easy deploy and rollback High degree of automatisim Dependency handling Versioned
  • 8. Requirements for local environments Small footprint in terms of resources Mainly similar to production Completly local DB Application Server Webserver ... Endian OS Versions Libraries Storage CPU RAM Performan ce
  • 10. Runtime environments • Native • Fully virtualized operating system • Container • Sandbox
  • 11. Native • Directly on the OS • Complex for some tools (Oracle DB) • Bad portability • Less comparable • No overhead from environment Host OS AppDB
  • 12. Fully virtualized operating system • High overhead from environment • Maximum flexibel • Easy to share • Complex handling of dependencies • Network and Startup • Virtual box • Workstation pro (fromer vmware workstation) • HyperV • Kvm • Wsl2 • Parallels Desktop Host OS AppDB Virtualisation OSOS
  • 14. Container • Less overhead from environment • Shared kernel, but seperate libaries and runtime environment • Flexibel • OS dependencies • Docker • Podman • Libvirt Host OS ContainerContainer AppDB Container Runtime
  • 15. Docker • Large distribution • Large amout of prebuild images available on hub.docker.com • Build described as code (Dockerfile)
  • 16. Sandbox • Less overhead from environment • Shared kernel and libraries but separated runtime environment • Wine / CrossOver • Windows Subsystem for Linux (Wsl) Host OS Runtime envRuntime env AppDB
  • 18. Dependencies • Maybe different for developer (linux, windows, macOS) • Maybe different ways of working (IDEs) • Maybe diffrent requirements for frontend, backend, mobile, … • Available integration for IDEs • Breakpoints • Watching variables • Tool dependencies • Docker and Virtual box not in parallel
  • 20. Automation • Automatic setup and update of the environment • Including Network • Automatic start and stop with dependencies • Automatic local deployment • Same for all developers
  • 21. vagrant init vagrant up vagrant ssh Vagrant • Easy setup • Large community and ready to use images + vagrantfiles on app.vagrantup.com • Syntax based on Ruby • Virtual Box, Docker, libvirt, …
  • 22. Docker compose • Only for Docker images • YAML files for the config • Supports data persistence, but must be configured
  • 23. Kubernetes • Container orchestration • Only for docker or RKT images • Integrated in docker desktop • YAML / JSON files for the config • Supports data persistance, but must be configured
  • 24. Handmade Scripts • Very flexible • Huge amount of effort • Hard to fit several environments / OS / … • Seperated tests
  • 26. Sharing of environments • Fully virtualized operating system • Remove all controlers (audio/usb) • Remove all images (cd /disktette) • Use VMDK format (short for Virtual Machine Disk) supported by Virtual Box, Vmware , Parallels Desktop, … • Split disks into 2g files • Virtual box • Install latest vbaddins • Use the same version of virtual box
  • 27. Sharing of environments • Cointainer • Share definition file (Dockerfile) and image • Small images (minimise additional libraries) • Easy rebuild with docker file
  • 29. Conclusion • A Large bunch of tools and options • Combinations are possible and often useful • Do it yourself is often to much work • Prebuild images are the key to fast testing and current versions • Be careful with network access to your local OS
  • 30. What I use ... • Windows Subsystem for Linux (WSL) • Virtual box • Docker inside virtual box • Sometimes an additional DNS server • Vagrant, only for basic vm setup

Editor's Notes

  • #4: Hier seht Ihr die wichtigsten Facts & Figures auf einen Blick. Trivadis wurde 1994 als unabhängiges Dienstleistungs-Unternehmen gegründet. Heute beschäftigen wir rund 700 Mitarbeitende in 16 Workspaces in der Schweiz, Deutschland, Österreich, Dänemark und Rumänien. Im letzten Geschäftsjahr haben wir Erfahrungen in über 1900 Kundenprojekte gesammelt und einen Umsatz von rund 118 Millionen CHF erzielt. Neben der grossen Zahl an Projekten unterstützen wir unsere Kunden in über 250 Service Level Agreements. Die Basis für die nachhaltige, technologische Exzellenz ergibt sich aus unserem Forschungs- und Entwicklungsbudget. Jährlich investieren wir ca. 5 Mio CHF in die Analyse und Evaluation neuer Technologien und die Ausarbeitung unserer Methoden und Produkte. Gemeinsam mit unseren Kunden und Partnern gestalten wir die digitale Zukunft. Überleitung zur nächsten Folie: Ganz im Sinne unserer Mission
  • #19: Virtual Box: - Alle defaults: 3 clicks - sonst über 10  ohne OS