Container Orchestration: What is container orchestration and what can it be used for?

Virtualization, containers and cloud computing have fundamentally changed the development and operation of modern applications. However, if you have to manage and provide a large number of containers, there is no way around container orchestration, because countless processes have to be managed simultaneously and in a resource-optimized manner. Tools such as the open source-based Kubernetes provide powerful solutions for orchestrating a container-based environment.

In the following article, we explain what container orchestration is, what it is used for, and how it works. We go into detail about Container Orchestration with Kubernetes and introduce the nine Managed Google Kubernetes Engine (GKE). Some use cases will conclude by illustrating the usefulness of container orchestration.

Definition of the container orchestration

Container Orchestration is the automation of the processes for provisioning, organizing, managing, and scaling containers. It creates a dynamic system that groups many different containers, manages their interconnections, and ensures their availability. Container Orchestration can be used in different environments. It can manage containers in a private or public cloud or on-premises equipment.

Container orchestration details 

Container orchestration is closely linked to cloud computing and the delivery of applications in the form of many individual microservices. But what is Container Orchestration needed for and how does it work?

What is container orchestration needed for?

Applications that were developed without containers in mind, are often referred to as Classical or Monolithic applications.  All functions, classes and sometimes services, were included in to a single source repository with many internal dependencies: 

Source: https://cloud.google.com/kubernetes-engine/kubernetes-comic/assets/panel-8.png, art and story from Scott McCloud

While these “application monsters” have an impressive range of functions, they are difficult to deploy, maintain, and scale. These applications cannot keep pace with the ever-faster processes of digital transformation.

Source: https://cloud.google.com/kubernetes-engine/kubernetes-comic/assets/panel-3.png, art and story from Scott McCloud

The current trend is moving towards microservices, which allows for an IT team to “divide and conquer” large problems into small tasks. Applications consist of many small, independent services with individual tasks. The microservices communicate with each other via defined interfaces and as a whole form the actual application.

Source: https://cloud.google.com/kubernetes-engine/kubernetes-comic/assets/panel-9.png, art and story from Scott McCloud

Each microservice can be provided, operated, debugged, and updated individually without affecting the operation of the overall application. Microservices are a decisive step towards agile applications and the DevOps concept.

Source: https://cloud.google.com/kubernetes-engine/kubernetes-comic/assets/panel-10.png, art and story from Scott McCloud

Existing services are divided up into containers or a group of containers. The containers provide a kind of virtualized environment and have the complete runtime environment including libraries, configurations, and dependencies. When compared to full virtual machines, containers require fewer resources and can be started much faster. Many containers can be run in parallel on a single physical or virtual server. Together with the containers, the microservices can be moved easily and quickly between different environments. Containerized microservices form the basis for cloud-native applications.

Complex applications consist of many microservices and containers that are operated on different systems and in different environments. The manual management of a large number of containers is a challenge for every administrator. A solution to this problem is container orchestration, as is possible with Kubernetes, for example. It automates the processes of deployment, organization, management, and scaling of containers.

Source: https://cloud.google.com/kubernetes-engine/kubernetes-comic/assets/panel-20.png, art and story from Scott McCloud

Which functions does the container orchestration perform?

Container Orchestration offers the user the possibility to control, coordinate and automate all processes around the many individual containers. Container Orchestration performs the following tasks, among others:

  • Provision of the containers
  • Configuring the containers
  • Allocating resources
  • Grouping the containers
  • Starting and stopping the containers
  • Monitoring of the container status
  • Updating the containers
  • Failover of individual containers
  • Scaling the containers
  • Ensuring the communication of the containers

The containers and their dependencies are described in configuration files. Container Orchestration uses these files to plan the deployment and operation of containers.

Container Orchestration in Kubernetes

Kubernetes, often abbreviated K8s, is an open source-based solution for orchestrating containers. It was originally developed by Google and released in 2014. In 2015, Google donated the Kubernetes project to the Cloud Native Computing Foundation (CNCF). CNCF is responsible for many other projects in the Cloud Native Computing environment.

Source: https://cloud.google.com/kubernetes-engine/kubernetes-comic/assets/panel-21.png, art and story from Scott McCloud

Although it is still a young software, Kubernetes rules the ecosystem of the orchestrators. Kubernetes can control, operate and manage containers, but requires a container engine like Docker to provide the actual container runtime environment. Compared to the container orchestration with Docker Swarm, which is now integrated in Docker, Kubernetes offers a much wider range of features.

How does Kubernetes work?

Kubernetes knows the following basic elements:

  •  Pods
  • Nodes (formerly Minions)
  • Cluster
  • Master Nodes

Within the Kubernetes architecture, a Pod is the smallest unit. A Pod can contain one or more containers.

Source: https://cloud.google.com/kubernetes-engine/kubernetes-comic/assets/panel-26.png, art and story from Scott McCloud

Individual Pods or groups of Pods are operated on one node. A node is a physical or virtual machine. A container runtime environment like Docker is installed on the nodes.

Source: https://cloud.google.com/kubernetes-engine/kubernetes-comic/assets/panel-27.png, art and story from Scott McCloud

Several nodes can be combined into a cluster. Clusters consist of at least one master node and several worker nodes. The master nodes have the task of receiving commands from the administrator and controlling the worker nodes with their pods.

Source: https://cloud.google.com/kubernetes-engine/kubernetes-comic/assets/panel-28.png, art and story from Scott McCloud

The master decides which node is best suited for a particular task, determines the pods that run on the node and allocates resources. The master nodes receive regular status updates that allow the operation of the nodes to be monitored. If required, Pods with their containers can be automatically started on other nodes.

The nine Managed Google Kubernetes Engine (GKE)

Kubernetes is a powerful tool and offers a huge feature set, but also has a steep learning curve. Appropriate know-how and resources are required for container orchestration with Kubernetes. With the nine Managed Google Kubernetes Engine (GKE) you get a fully managed environment where you can deploy and orchestrate your containers directly. The operation of the platform is manged by nine. 

What is the nine Managed GKE and how does it work?

The nine Managed GKE is a managed service product. It is based on the Google Kubernetes Engine (GKE), an environment to deploy, manage, and scale containerized applications on Google infrastructure. The containers run on a secure, easily scalable cluster consisting of multiple machines. Nine provides additional features to Google Kubernetes and takes over the complete operation of the cluster. Regular backups are performed, external services are integrated and storage management, monitoring, and replication tasks are performed. You can fully concentrate on the development of your applications and the orchestration of the containers on the managed platform.

All data is securely stored in Switzerland, as this is a Swiss service. At the same time, the worldwide Google infrastructure offers the possibility of global scaling.

Concrete Use Cases

If you have applications that are divided into microservices, or you want to redesign existing applications cloud-natively, you can run the containerized microservices on a cluster with nine Managed GKE. Nine takes care of the operation of the cluster. You concentrate on the development and management of the containers. The reallocated resources allow you to eliminate budget bottlenecks, catch up on backlogs in application development, or eliminate technical deficits in existing applications. Below are some use cases that illustrate the best practices of container orchestration.

Agile, dynamically growing applications of a startup

Startups with new business ideas need agile applications. Functions have to be changed, extended, or adapted on a daily basis. Once the first successes are achieved, the requirements in terms of resources and scaling increase. With modern, containerized applications, startups cover all requirements for agile, dynamically growing applications. By dividing the application into many different microservices and making them available via containers, individual functions can be changed or scaled without affecting the entire application.

Applications with high availability

Many companies depend on the high availability of their business-critical applications. Even short failures can lead to immense sales losses or a loss of reputation. Industries that have high demands on the availability of certain applications include manufacturing and finance. In a modern application consisting of containerized microservices, container orchestration takes care of the uninterrupted operation. For example, if individual computers fail, the affected containers are automatically started on other computers in a redundantly designed cloud environment. Manual intervention is not necessary. Even when updating or scaling the services, the basic operational readiness of the entire application is not affected.

Concentration on application development – no resources for operation 

In most cases the financial, human, or technical resources are limited. If applications are provided on the basis of a fully managed, containerized, and cloud-based environment such as the nine Managed GKE, resources are freed up as typical operational tasks are eliminated. These resources can be used for application development or for eliminating technical shortcomings of existing applications. The company focuses more on its core business and the chances of success increase.

The nine cloud navigators are your partner for cloud-native applications and container orchestration 

If you want to benefit from the advantages of cloud computing and cloud-native applications and accelerate your time-to-market, then the nine cloud navigators are the right partner for you. With the nine Managed GKE, your data is securely stored in Switzerland. At the same time, you have the possibility of the global scalability of the Google Cloud. You do not have to deal with the complexity of managing and operating a cluster yourself. 

Our Kubernetes experts help you with container orchestration and provide you with a fully managed environment. We will be happy to answer your questions or introduce you to our managed cloud solution.

What is the Public Cloud and what are typical use cases?

Cloud computing has been established for a long time. The advantages over the classic supply of IT services in the own data center are becoming increasingly dominant. The question for companies is therefore not whether they should use cloud computing, but what type of cloud model or which provider they choose.

The public cloud is very attractive for companies because of its direct availability. A public cloud is an IT service delivered by a provider via the public Internet. Users do not need to install or operate their own hardware. They share the public cloud provider’s infrastructure with other companies. However, data and applications are usually completely separated from each other.

The so-called Hybrid Cloud and Multi Cloud are also in high demand. With the Hybrid Cloud, the advantages of public and private clouds can be combined in a common cloud environment. The Multi Cloud creates a cloud environment consisting of several public clouds.

In the following article, we would like to give you an understanding of the Public Cloud. We explain what a public cloud is, what advantages it offers, and where its limits are. Furthermore, we will dispel any misconceptions: A public cloud is less secure than a private cloud. A few use cases are intended to illustrate the sensible use of the public cloud.

The Public Cloud in Detail

Regardless of whether private or public cloud, cloud computing distinguishes between these three basic service models:

  • Software as a Service (SaaS)
  • Platform as a Service (PaaS)
  • Infrastructure as a Service (IaaS)

Source: Google Cloud Blog 

While IaaS provides customers with virtualized IT infrastructure such as computing power, networks, or storage space, PaaS provides runtime and programming environments for developing or operating their own applications. An example of an IaaS service is the nine cloud servers. They provide customers with computing power, storage space, and network connectivity. With the Managed Google Kubernetes Engine (GKE) from nine, you get an offering that can be ranked under PaaS. SaaS makes applications or software available over the Internet. Typical examples are Google Docs, Sheets, Slides, and Forms for the collaborative creation of text documents, tables, presentations, and questionnaires. 

The services of a public cloud are available to customers via the public Internet. Companies select the services they need themselves and order them from their cloud provider. It is not necessary to install and operate their own IT infrastructure for these services. The provider operates and manages the hardware and software (depending on the service model) in its data centers. For example, employees of the provider maintain servers, operating systems, and software, apply updates and patches, monitor the performance of the computers, secure the systems against hackers or unauthorized access and ensure high availability through redundancy. If a customer needs more performance, he can flexibly expand the services via web-based self-service user interfaces. The services are easily scalable and adapt to the needs of the company. The services used are generally billed on a usage basis. Customers of a public cloud only pay for the services and resources they have actually ordered and used.

Difference between Public Cloud and Private Cloud

In contrast to a public cloud, the services of a private cloud are not available to the general public, but only exclusively to an individual company. A private cloud is either operated by the company itself or has outsourced its operation to a service provider. Hardware and software are either installed in the company’s own data center or in the data center of the service provider. The private cloud allows maximum control over the resources used and permits individual applications and services. The services are accessible either via the company network or via the Internet and virtual private networks (VPNs). A private cloud may become necessary if, for example, strict legal data protection regulations or security requirements prohibit outsourcing data and applications to an external service provider, or if very specific services are required.

What are Multi Cloud and Hybrid Cloud?

The two cloud models Multi Cloud and Hybrid Cloud play an increasingly important role. The Hybrid Cloud combines the services of a private and a public cloud. A joint cloud environment is created, whose services are obtained as required from a public or a private cloud. This allows the best of both worlds to be combined. The nine cloud navigators also support hybrid setups thanks to two of their own redundant data centers and the partnership with Google Cloud. Thanks to that nine can optimally support you in operating a hybrid setup.

A Multicloud is a combination of several public clouds from different providers. The provider with the best cloud offer can be selected for the services required. The Multicloud reduces dependency on individual providers and provides more redundancy.

Misunderstanding security

One of the biggest misconceptions about the public cloud is the security of the public cloud. It is claimed that a private cloud is automatically more secure than a public cloud. Looking at the details, this prejudice is difficult to prove. Although a private cloud is not available to the general public on the Internet, it is still connected to the Internet. Hackers can also find and attack a private cloud. Companies have complete data sovereignty in a private cloud but are responsible for the security of their cloud environment. Monitoring the private cloud, applying security patches, and fending off attacks requires a great deal of effort and expertise. If a company protects the private cloud insufficiently or lacks the necessary security know-how, it is vulnerable to attacks.

In terms of data protection, the public cloud offers a high level of security that can compete with a private cloud in many areas. Many public cloud providers give their customers the option of choosing the cloud location for service delivery. In addition, there is the option of comprehensive data encryption. Strict data protection and compliance requirements can be implemented. Certifications play a major role here, which is standard for the public cloud, whereas in the private cloud they relate only to the data center and not to the infrastructure brought by the customer.

Public Cloud: Typical use cases for companies

After so much theory, let’s look at some use cases. Below are three examples of typical use cases of a public cloud:

E-Commerce applications with dynamic resource requirements

Suppose your company is in the e-commerce business and runs an online shop with sales that are highly seasonal. Of course, you always want to offer your customers the same user and shopping experience. During the Christmas business, for example, your e-commerce systems should not have longer response times. If you operate the servers for your applications yourself, you must dimension them so that they are designed for peak loads. This means that the servers are only moderately loaded for most of the year. They waste resources and work inefficiently. When you use a public cloud, you can scale performance as needed. The services are elastic and can be easily expanded temporarily for the Christmas season. You only pay for the capacities actually booked and, compared with an oversized in-house IT infrastructure, significantly reduce your costs.

As a startup being immediately available worldwide 

For the success of a start-up, it is essential how quickly the company with its innovative business idea is available on the market (short time-to-market). However, a start-up in particular lacks the resources and an existing IT environment. There is simply no time and money to invest in hardware and software and to build up their own IT infrastructure. The public cloud offers a way out. The services of the public cloud are available worldwide immediately after booking. Globally distributed data centers ensure almost the same response times and performance in every corner of the world. The start-up company’s employees can take care of the further development of the business model without having to concern themselves with the operation or maintenance of the IT systems. This concentration on the core business and the demand-oriented provision of the required IT services by the public cloud provider increases the startup’s chances of success.

Provide redundancies for critical services

Another use case is the availability of redundancies for critical services. A company’s business processes often depend on a few applications or IT systems. A failure of a single server can quickly bring the entire company to shut down and cause immense loss of revenue. Providing redundant systems costs a lot of money and causes effort. In a public cloud, a second infrastructure can be provided, which can be activated in an emergency until the disaster recovery is complete and the original systems can be taken over again.

The advantages of the Public Cloud

  • no investments in own IT infrastructure necessary
  • transparent, usage-dependent costs
  • Minimum effort to operate and manage certain services – the provider installs, operates, maintains and monitors the hardware and software to deliver most services
  • Easy scaling and configuration of services via web-based user interfaces or APIs
  • fast availability of the booked services
  • Providers ensure high availability and security of applications, data, and services
  • Providers of a public cloud have a great deal of know-how for the secure operation of their IT – the most modern security concepts are implemented with corresponding certifications
  • access to the cloud services is possible everywhere via the public Internet

The Limits of the Public Cloud

A public cloud reaches its (local) limits when data requiring special protection, such as medical data, financial data, or legal data, are to be stored and processed. The public cloud is usually operated in certain regions, usually limited by national borders. This means that the public cloud can only be used within a certain area to which certain local laws and legal judgments apply. As a customer, it is important here to check with the cloud provider to ensure that they comply with local laws and other regulations (financial, medical, etc.).

Since several customers share the same cloud resources, it cannot always be 100% ruled out that performance or availability will influence each other. It is possible that not all the services you need are available. However, this should be seen in relation to the location and the possibilities of the respective public cloud: Since the public cloud generally has a larger scope and more technical resources, the availability of resources can be regarded as at least as good as in the private cloud.

The nine cloud navigators support you on your way to the public cloud

It is not always easy to select the right cloud for the individual requirements of a company. Private and public clouds offer specific advantages and disadvantages that need to be considered. In addition, with the Hybrid Cloud and the Multi Cloud, there are other cloud models that can represent suitable solutions depending on the applications to be implemented. 

In many cases, however, there is no way around the public cloud. It is a must for companies that need professional IT services but want to concentrate on their core business and do not want to waste resources on operating their own IT infrastructures. 

The nine cloud navigators help you on your way to the cloud. They are there to help you choose the right cloud environment – whether private cloud, hybrid cloud, public cloud, or the respective managed version. Together with you, we will find the optimal solution. 

Our cloud experts will be happy to answer your questions or introduce you to our managed public cloud solution based on the Google Kubernetes Engine.

The Road to the Cloud – What is Private Cloud?

Clouds are servers, or networks of servers, on which corporate applications or services are provided over the internet. Private cloud companies usually take care of infrastructure, server space, security, and application management themselves.

In a public cloud, companies are provided with a predefined selection of services via their data center and are not responsible for any of the management of their cloud hosting solution. The data is stored in the provider’s data center and the provider is responsible for the management and maintenance of the data center.

This relieves many companies enormously: They don’t have to operate cloud services in their own data center and save hardware and software resources as well as associated maintenance work.

Many companies rely on the private cloud to operate their own applications and hope to achieve better data protection standards than in the public cloud. But did you know that the private cloud is not automatically more secure than other cloud variants?

What are the features of the private cloud?

A private cloud promises exclusivity, i.e. only companies and their employees can access their applications themselves. Most companies operate not only standard solutions but in particular individual applications via a private cloud. They can also determine the server location when using a private cloud: As a rule, they operate the server either on their own premises or with a cloud service provider.

Control over the server location tends to make a private cloud more secure. Access paths provide additional security. Authorized users access the cloud services either directly via the company’s own network or via VPN connection. 

In many cases, companies are responsible for managing their private cloud themselves. They then take care of security aspects, updates, and ongoing server operation etc.. 

What advantages does the private cloud offer?

A private cloud not only provides exclusivity but also brings a number of other advantages:

  • Individuality: Companies retain control over their applications. The IT infrastructure of a private cloud is tailored to individual business processes. 
  • Flexibility: Customers can and usually must operate their private cloud with their own IT infrastructure. Here they can decide for themselves whether they want to update, expand, or scale it, for example. With a public cloud, the cloud provider specifies the services and their configuration options. 
  • Security: With a private cloud, companies retain control over their data, and also full control over the choice of security mechanisms. Private clouds cannot be accessed via public websites. Access is either via the company’s own intranet or with a VPN connection. Hackers, therefore, find it much more difficult to locate a private cloud.

One cloud – four variants

Depending on how much server space, IT skills or time resources companies have, there are various private cloud variants available. 

  1. Internal Private Cloud
    The name says it all: this form of private cloud is operated internally by companies. This means that companies operate a cloud system via their own IT infrastructure and servers in their own building.
  2. Hosted Private Cloud
    Companies do not operate this form of private cloud in their own data center. The provider takes care of this. The responsibility for updates, maintenance work, and security aspects remains with the customer
  3. Managed Private Cloud
    By operating  the cloud on their own IT infrastructure cloud providers relieve their customers of maintenance work and updates. Like nine, some providers also guarantee high-security standards and round-the-clock support.
  4. Community Private Cloud
    This variant is a special form of a private cloud where several companies access the cloud services. Typically, many companies opt for a community private cloud when they work on joint projects and use the same data and services.

Misconceptions about the private cloud

A private cloud does offer advantages. However, it also often causes misunderstandings. A private cloud is not automatically more secure than other cloud variants.

It does have the advantage that companies retain data sovereignty and the cloud is harder for hackers to find. But that doesn’t automatically mean greater data protection, because companies are responsible for security standards in the private cloud themselves. If they do not protect the cloud sufficiently, they are correspondingly vulnerable to attacks.

These and other challenges should be kept in mind:

  • The private cloud is also on the Internet. Even if it is harder to find – it is to be found.
  • There are only a few service providers that offer good support for a private cloud. Companies may face a long search in this regard. 
  • If the data center’s servers go down, the private cloud services also come to a standstill. You can avoid this by spreading them across multiple data centers. However, this will incur higher costs.
  • A private cloud is not something that companies can provide globally to all employees. They first need the right IT infrastructure. 

For whom is private cloud suitable?

Many companies operate extensive and complex applications, e-shops, or customer and information portals. 

The private cloud is particularly suitable for handling sensitive data. Companies for whom this is of interest are, for example, companies from the healthcare industry. These companies work with health data and are required by law to strictly protect all data. Companies in this sector are themselves responsible for protecting their own data and that of their patients and often operate a private cloud in order to meet this obligation.

Home office and web solutions designed for communication between different locations can also be provided with individual cloud services. With a private cloud, companies can ensure high-security standards and simple but protected access for employees to applications and data. Even outside of their local workplace. 

Companies with particularly critical data often have their own solutions in the form of the internal private cloud. They have their own servers, their own IT infrastructure, and corresponding know-how. Therefore, the complete control and individual design of the cloud solution, but also the risk of failure and the need for external protection lies directly with them.

Companies that secure their data well, but do not (yet) have servers or IT infrastructure, often consider a public cloud solution in addition to the private cloud. The latter is usually associated with lower costs and also offers the advantage of being able to benefit from infrastructure improvements and updates without having to develop them themselves. Another solution is to outsource the applications to the private cloud of an external hoster and have them partly managed by the cloud service provider. Here, hardware management and cloud management are outsourced or the expertise of a cloud service provider is purchased.

Tip: It is important here to agree exactly which services the hoster is responsible for and for which the company itself must provide solutions. Updates are a particularly relevant topic here. It is best to clarify these questions right at the beginning.  

A private cloud is suitable for many scenarios.specially for companies that already have their own know-how and IT structures and want to benefit from customizable cloud services.

Private cloud or not? – The nine cloud navigators help with the decision

Which cloud solution is best for a company is not always obvious at first glance. On the way to the cloud, the situation of the company must always be considered: Costs, resources, know-how, existing structures, and of course the intended applications and data to be stored must be taken into account in finding the best cloud solution.

As your cloud navigators, we at nine are happy to accompany you on your way to the cloud: We advise you from the start and work with you to find the right solution.

If you have any further questions about the private cloud or alternative cloud solutions, please contact the Nine cloud navigators.

Talk to one of our experts

Do you have any questions about our products? Either contact Sales or go directly to your cockpit to see all the possibilities at Nine.