Orchestrating and Deploying Containers
Orchestrating and Deploying Containers
Security and the ability to maintain hybrid environments are the most frequently mentioned needs.
Join the DZone community and get the full member experience.Join For Free
Learn how to migrate and modernize stateless applications and run them in a Kubernetes cluster.
To gather insights on the current and future state of containers, we talked to executives from 26 companies. We asked, "What are the most important elements of orchestrating and deploying containers?" Here's what they told us:
The most important elements are the simplification of deployment scenarios. Container orchestration can be quite forgiving in regard to accepting incomplete or sub-optimal inputs, however, even small deviations can have negative operational impacts. The complexity of the Docker CLI (command line interfaces) lends itself to the introduction of human error through forgetting CLI strings, and there is no pre-validation of commands prior to execution.
- Make everything deploy faster by spinning an app up and down in a container versus having to provision a server.
- API gateway and runtime gateway. Deploy on OpenShift with AWS and SaaS. Be platform independent to realize the full-value of containers. Create efficiencies with containers.
- Application automation tooling for lift and shift. Containers automate how to package. We provide the application code libraries and services required when deploying. We help legacy apps not designed for containers. We provide a build pipeline that can be exported into a container format for Docker and K8s. Integrate for different deployment – declarative and repeatable build process.
- Excellent change control so you are 100% sure what you are deploying where. Lightweight containers with true isolation (when you want it). Ability to create swarms that do interact.
- Understand the application. K8s does a lot of orchestration and scheduling but it's only as good as the developers are able to tell it what to do. Guide to optimal use and best practices. Monitor systems and capacity. Know the characteristics of the applications.
- Ensure all of the systems integrate for flexibility and scalability.
- 85 to 90% of the software stack, microservices, and algorithmic models use Docker containers.
- Most important is having expertise in how to use containers and orchestrators.
- Understand connectivity of the database to the container and the dynamic nature of containers. Educate with distributed databases and how to allocate services. Deploying apps to the container and caching layer for ease of access to the data. You can collapse the memory cache and database into the application container.
- Kubernetes is the "posix" or "HTTP" of the cloud, providing the standard metadata, APIs, tools, abstractions for orchestration containers on any cloud.
- 1) On the bottom, we’re provisioning for Cloudera, Splunk, and other big data platforms. 2) On the top, we’re doing high-scale big data analytics. We take care of containers for clients providing appliance models. We work on scaling and managing our own infrastructure better. Splunk doesn’t support Docker so we cannot offer Docker to our clients. We have to evaluate to what extent we fit within a container architecture or have containers within our product. This varies by the scale of the customer.
- Provide capabilities to development teams. Enable legacy apps to take advantage of container workflows since containers are immutable. Containers help with app portability and mobility. Uses the basic functions of the Linux kernel wherever it lands. Cloud-native distribution, resilient apps need a container framework of service underneath. Infrastructure lifecycle management of K8s cluster. NSX networking for security traffic flow between pods providing manageability and the visibility of flows. Harbor does container scanning. Deploy manages scale with K8s.
- The most important elements are ensuring the containers are deployed safely without disrupting existing deployments (we employ a blue/green upgrade strategy) as well as providing mechanisms for our QA engineers to manage the promotion of code.
- Maintaining high availability during deployment; making sure the application does not go down during a deployment of new containers as the old ones are replaced. Automation is a key factor in this as we can add checks and tests to make sure every service is fine before moving onto the next one.
Here’s who we spoke to:
- Matt Chotin, Sr. Director of Technical Evangelism, AppDynamics
- Jeff Jensen, CTO, Arundo Analytics
- Jaime Ryan, Senior Director, Project Management and Strategy, CA Technologies
- B.G. Goyal, V.P. of Engineering, Cavirin Systems
- Tasha Drew, Product Manager, Chef
- James Strachan, Senior Architect, CloudBees
- Jenks Gibbons, Enterprise Sales Engineer, CloudPassage
- Oj Ngo, CTO and Co-founder, DH2i
- Anders Wallgren, CTO, Electric Cloud
- Navin Ganeshan, Chief Product Officer, Gemini Data
- Carsten Jacobsen, Developer Evangelist, Hyperwallet
- Daniel Berg, Distinguished Engineer Cloud Foundation Services, IBM
- Jack Norris, S.V.P. Data and Applications, MapR
- Fei Huang, CEO, NeuVector
- Ariff Kassam, V.P. Product, NuoDB
- Bob Quillan, V.P. Container Group, Oracle
- Sirish Raghuram, CEO and Co-founder, Platform9
- Neil Cresswell, CEO/CTO, Portainer.io
- Sheng Liang, Co-founder and CEO and Shannon Williams, Co-founder and VP of Sales, Rancher Labs
- Bill Mulligan, Container Success Orchestrator, RiseML
- Martin Loewinger, Director of SaaS Operations and Jonathan Parrilla, DevOps Engineer, SmartBear
- Antony Edwards, CTO, Eggplant
- Ady Degany, CTO, Velostrata
- Paul Dul, V.P. Product Marketing Cloud Native Applications, VMware
- Mattius McLaughlin, Engineering Manager & Containers SME, xMatters
- Roman Shoposhnik, Co-founder, Product & Strategy, Zededa
Opinions expressed by DZone contributors are their own.