Learn how you'll be able to quickly develop, host, and scale applications within the AWS cloud with Red Hat's OpenShift. During this session, we walk you thru the straightforward method of deploying and managing your own Linux based application within the AWS cloud and will additionally discuss key use-cases and advantages to container platform configuration, deployment, and administration.
Deploying OpenShift Container Platform on AWS by Red Hat
1. OpenShift Linux Container Platform
Pipeline Automation
From Code to Containers
Nicholas Gerasimatos – Red Hat CCSP
2.
3. Docker 101
● Docker is a software technology providing containers
● Promoted by the company Docker Inc.
● Docker provides an additional layer of abstraction andautomation
of operating-system-level virtualization on Linux and Windows.
● Docker uses the resource isolation features of the Linux kernel such as cgroups and
kernel namespaces, and a union-capable file system such as OverlayFS and others
● This allows independent "containers" to run within a single Linux instance,avoiding
the overhead of starting and maintaining virtualmachines.
4.
5. Scheduling
Decide where to deploycontainers
WENEED MORETHAN JUST CONTAINERS
Lifecycle and health
Keep containers running despite failures
Discovery
Find other containers on thenetwork
Monitoring
Visibility into running containers
Security
Control who can do what
Scaling
Scale containers up and down
Persistence
Survive data beyond container lifecycle
Aggregation
Compose apps from multiple containers
7. Kubernetes 101
WHAT DO I GETWITH KUBERNETES?
Kubernetes satisfies a number of common needs of applications, suchas:
● co-locating helper processes, facilitating composite applications and preserving the
one-application-per-container model
● mounting storage systems
● distributing secrets
● application health checking
● replicating application instances
● horizontal auto-scaling
● naming and discovery
● load balancing
● rolling updates
● resource monitoring
● log access andingestion
● support for introspection anddebugging
● identity and authorization
13. Red Hat Ansible
MODERNIZE
Automate existing
processes
Manage legacy like
DevOps
DEVOPS
Model everything
Deploy continuously
MIGRATE
Define applications
once
Re-deploy anywhere
14. POWERFUL
App deployment
Configuration management
Workflow orchestration
Orchestrate the app lifecycle
SIMPLE
Human readable automation
No special coding skills needed
Tasks executed in order
Get productive quickly
AGENTLESS
Agentless architecture
Uses OpenSSH & WinRM
No agents to exploit or update
More efficient &more secure
15. Ansible Tower?
Ansible tower is an enterprise
framework for controlling, securing
and managing yourAnsible automation
– with a UI and RESTfulAPI.
• Role-based access control keeps
environments secure, and teamsefficient.
• Non-privileged users can safely deploy
entire applications with push-button
deployment access.
• All Ansible automations are centrally
logged, ensuring complete auditability
and compliance.
16. Automate All the Things!
USE CASES
ANSIBLE
PYTHON CODEBASE
OPEN SOURCE MODULE LIBRARY
PLUGINS
CLOUD
AWS,
GOOGLE CLOUD,
AZURE…
INFRASTRUCTURE
LINUX,
WINDOWS,
UNIX…
NETWORKS
ARISTA,
CISCO,
JUNIPER…
CONTAINERS
DOCKER,
LXC…
SERVICES
DATABASES,
LOGGING, SOURCE
CONTROL
MANAGEMENT
TRANSPORT
SSH, WINRM, ETC.
AUTOMATE
YOUR ENTERPRISE
ANSIBLE CLI & CI SYSTEMS
ANSIBLE PLAYBOOKS
….
ANSIBLE
TOWER
SIMPLE USER INTERFACE TOWER API
ROLE-BASED
ACCESSCONTROL
KNOWLEDGE
& VISIBILITY
SCHEDULED &
CENTRALIZED JOBS
CONFIGURATION
MANAGEMENT
APP
DEPLOYMENT
CONTINUOUS
DELIVERY
SECURITY &
COMPLIANCE
ORCHESTRATIONPROVISIONING
26. https://developers.redhat.com/downloads/
1.Terraform - brew update && brew install terraform
2.An AWS account, configured with the cli locally “brew install awscli && aws configure”
3.Exec: “terraform get && terraform apply”
4.Add local identity “ssh-add ~/.ssh/id_rsa”
5.# Create our inventory from the template and terraform output. sed
"s/${aws_instance.master.public_ip}/$(terraform output master-public_ip)/"
inventory.template.cfg > inventory.cfg
6.# Copy the inventory to the bastion. scp ./inventory.cfg ec2-user@$(terraform output
bastion-public_dns):~
7.# Run the installer on the bastion. cat install-from-bastion.sh | ssh -A ec2-
user@$(terraform output bastion-public_dns)