Kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications.
It groups containers that make up an application into logical units for easy management and discovery. Kubernetes builds upon 15 years of experience of running production workloads at Google, combined with best-of-breed ideas and practices from the community.
Weave Net - Weaving Containers into Applications
Weave Net creates a virtual network that connects Docker containers across multiple hosts and enables their automatic discovery. With Weave Net, portable microservices-based applications consisting of multiple containers can run anywhere: on one host, multiple hosts or even across cloud providers and data centers. Applications use the network just as if the containers were all plugged into the same network switch, without having to configure port mappings, ambassadors or links.
Services provided by application containers on the weave network can be exposed to the outside world, regardless of where they are running. Similarly, existing internal systems can be opened to accept connections from application containers irrespective of their location.
A minimalistic and focused guide with common use cases, patterns, principles and practises for developing Cloud Native applications on Kubernetes.
“Cloud native” is a term used to describe applications designed specifically to run on a cloud-
based infrastructure. Typically, cloud-native applications are developed as loosely coupled
microservices running in containers managed by platforms. These applications anticipate
failure, and they run and scale reliably even when their underlying infrastructure is experiencing outages.
To offer such capabilities, cloud-native platforms impose a set of contracts and
constraints on the applications running on them. These contracts ensure that the applications
conform to certain constraints and allow the platforms to automate the management of the
containerized applications. Many organizations understand the necessity and importance of
becoming cloud native, but do not know where to start. Ensuring that cloud-native platforms
and the containerized applications that run on them work seamlessly together provides the
ability to anticipate failure and the reliability to run and scale even when the underlying
infrastructure experiences outages. This whitepaper describes a number of principles that
containerized applications must comply with in order to become good cloud-native citizens.
Adhering to these principles will help ensure that your applications are suitable for
automation in cloud-native platforms such as Kubernetes.