jedberg / container-devops

How Containers are Disrupting Devops

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

container-devops

#How Containers are Disrupting Devops Containers are disrupting DevOps by automating software delivery into easily manageable segments. The DevOps pipeline is an autonomous, recurring process, comprised of continuous development, integration, and deployment. We asked ourselves, “How are containers redefining how DevOps is handled and what vendors and products are leading the change?”

##Containers Make Environments Consistent Containers provide a common set of building blocks that can be reused in any stage of development to recreate identical environments for development, testing, staging, and production. Containers extend the idea of write once; deploy anywhere, to an infrastructure abstraction that application developers can easily consume and operations professionals can predictably manage.

##Containers Make Tooling Consistent Containers provide a disposable, reusable unit of tooling that can execute a segment of a delivery pipeline. Now, critical code quality, analysis, build, and test functions can be packaged as containers and consistently reused within developer workspaces, continuous integration systems, and release management tools. Service injection into containers allows developers to code more productively and tooling vendors to provide value in every phase of the pipeline.

##Container Infrastructure ActiveState Stackato (agile PaaS platform optimized for containers)

Alpine Linux (lightweight operating system container-optimized)

Amazon EC2 Container Service (Docker extension tools)

Apache Mesos (distributed systems and container kernel)

Apache Zookeeper (centralizes container configurations)

CenturyLink [Cloud] (https://www.ctl.io/) (cloud management service with container support)

Ceph (distributed block storage for Docker)

ClusterHQ Flocker (open source container data volume manager)

CoreOS Tectonic (kubernetes cluster for Docker)

CoreOS flannel (cross-container communication)

Datawise.io Project 6 (deploy and manage Docker containers across clusters)

Docker Compose (define and running multi-container applications)

Docker Machine (automated Docker provisioning)

Docker Swarm (native clustering for Docker)

EngineYard Deis (open source PaaS for Docker)

Joyent Triton (elastic container infrastructure)

Kontena (application containers for masses)

Google Compute Engine (PaaS with container managed service)

Google Kubernetes (orchestration of services running pods of containers)

HashiCorp Packer (image construction automation)

HashiCorp Consul (finds and configure infrastructure services)

IBM Bluemix (hybrid PaaS based upon CloudFoundry and Docker)

Jelastic (multi-container orchestration platform)

Microsoft Azure (PaaS with container-managed services)

Mesosphere [DCOS] (https://mesosphere.com/product/) (data center OS works with Docker)

[Nirmata] (http://nirmata.com/tag/docker/) (application deployment and operations with Docker)

OpenStack Nova (launches containers on a massive scale)

Pertino (builds container-level VPC networks)

Portworx PWX (scale out block storage for Docker)

Rackspace Managed Cloud (management software)

RancherLabs Rancher (infrastructure platform for Docker)

RancherLabs RancherOS (Linux distribution that runs OS as Docker containers)

Red Hat Atomic (lightweight immutable platform for running containers)

Red Hat OpenShift (hybrid PaaS based on Docker)

Ruxit (monitor containerized apps in dynamic Docker environments)

VMware Photon (lightweight Linux host for containers)

Weave (creates a network of Docker containers)


1st column ##DevOps Pipeline:

  1. Author Code & Check-In

  2. Check Out & Build Code

  3. Unit Test

  4. Quality Control

  5. Package and Archiving

  6. Integration Testing

  7. Deploy to Test Environment

  8. Deploy to Pre-Production

  9. Acceptance Testing

  10. Deploy to Production

  11. Management & Monitoring

2nd Column ##Continuous Delivery: Continuous Development

Continuous Integration

Continuous Deployment


###Continuous Development ####Developer Workspace [Codenvy] (https://codenvy.com/) (RESTful workspaces built with Docker containers)

[Codefresh] (http://codefresh.io/) (NodeJS workspaces built with Docker)

Eclipse [Che] (http://www.eclipse.org/che/) (hosted workspaces using containers for microservices)

JetBrains IntelliJ IDEA (manages Docker containers from IDE)

Nitrous (Docker containers as workspaces)

Progrium Envy (lightweight developer environments)

Vagrant (Docker provisioner)

VMware AppCatalyst (desktop hypervisor optimized for containers)

####Source Code Management

###Continuous Integration ####Continuous Integration Drone.io (open source continuous integration built on Docker)

Electric Cloud (plug-in to invoke containers while building)

XebiaLabs Overcast (Docker for integration testing with other services)

CloudBees Jenkins CI (build slaves runnable within containers)

CircleCi (supports Docker-based dev, test and deploy workflow)

Codeship ParallelCI (parallel testing with containers)

Shippable (automated DevOps with Docker)

Wercker (containerized build pipeline)

####Code Quality Analysis Code Climate (static analysis with containers)

Screener (screens code before and after being Dockerized)

SonarQube (code quality with containers)

####Packaging and Build Automation Atlassian Bamboo(uses Docker containers to create build agents)

Bitnami (image cloud hosting)

Gradle (build management through Docker)

####Testing Frameworks Salt (allows unit testing within container)

SeleniumEnv (can be run through Docker instead of installed)

PhantomJsEnv (can be run through Docker instead of installed)

RoboCI (aimed to run Travis CI builds locally inside Docker containers)

###Continuous Deployment ####Artifact and Image Registry Docker Hub (hosted registry service)

Docker Trusted Registry (private dedicated image registry)

[Google Container Registry] (https://cloud.google.com/container-registry/) (secure Docker image storage)

JFrog Artifactory (doubles as Docker and artifact registry)

Quay.io (secure hosting for Docker registries)

[Tutum Registry] (https://support.tutum.co/support/solutions/articles/5000012183-using-tutum-s-private-Docker-image-registry) (private Docker registry)

####Release Automation Amazon OpsWorks (application management for container & VM infrastructure)

Ansible (playbooks will generate consistent app in containers & VMs)

Chef (container management, provisioning and automation)

PuppetLabs Puppet Forge (Docker management)

Salt (container management, provisioning and automation)

####Operations Tools AppDynamics (extension for Docker monitoring)

CenturyLink Labs [Panamax] (http://panamax.io/) (tools to visualize & manage containers)

New Relic (distributed container monitoring and analytics)

[Sysdig Cloud] (https://sysdig.com/distributed-container-monitoring-sysdig-cloud-revolution/) (distributed container monitoring)

SignalFx (streaming analytics of Docker apps)

About

How Containers are Disrupting Devops