Whether you realize it or not, container technologies like Docker and Kubernetes have quietly evolved into a common technology over the past few years. Looking abroad, Internet giants like Google, Microsoft and IBM are still fighting in the technology market for container open source infrastructure. Back in China, major companies including BAT, Didi, JD.com and Toutiao are also vying to take container and Kubernetes projects as their technological focus, trying to “play the long game”.

As the media say, software is eating the world, and containers are eating the software world. It’s a bit of an exaggeration, but it speaks volumes about the role of containers in software development today. Along the way, whether to master container technology has become an important option in the recruitment of many enterprises.

Container technology itself is a basic technology favoring operation and maintenance engineers. Concepts such as namespace resource isolation and Cgroups resource limitation have an insurmountable gap of understanding for developers. Over the years, I have been working with containers and discussing the landing process with container engineers. From these exchanges, I found that there were many similar questions repeatedly mentioned, such as:

  1. Why can only “one process” run in a container?
  2. Why does one of the JVM arguments I’ve been using stop working in the container?
  3. Why can’t Kubernetes fix IP addresses? How can I Debug the container network connection?
  4. What is the difference between StatefulSet and Operator in Kubernetes? How should PV and PVC be used?

These questions seem at first glance to be very contradictory to our common perception, but their answers and principles are not complicated. These are difficult for beginners to explain in one or two sentences.

Container technology involves the comprehensive knowledge of operating system, network, storage, scheduling, distributed principle and so on, which leads to many beginners facing container technology, or lack of knowledge reserve, or disorderly, do not know how to start.

In fact, the seemingly chaotic and complex container technology system, but there are many main lines that can “affect the whole body”. For example, the importance of Linux’s process model to the container itself; Or the role of the “controller” model in framing the entire Kubernetes project.

These basics are not detailed in the official documentation of Docker or Kubernetes. But they are also the essence of mastering the container technology system, and are the “internal skills” that every technical practitioner needs to carefully cultivate.

Learning path

How exactly should we learn from Kubernetes? Many students heard of Kubernetes after the word would like to use directly, and then was Kubernetes complex environment built intercept at the door, from then on feel frustrated, here I summed up some ways to learn Kubernetes, especially for beginners is very useful:

  1. Learn Docker technology, at least the basic command of Docker to be very skilled
  2. Katacoda provides an environment for us to learn Kubernetes, this step is very important, we need to have a can use the environment, first to use Kubernetes, feel, understand some basic concepts in Kubernetes
  3. Rancher, after understanding some basic concepts of Kubernetes, we can use Rancher to build a Kubernetes test environment very quickly
  4. If you can solve the wall problem, you can use the Kubernetes environment that Docker for MAC/Windows comes with
  5. The purpose of this step is to be familiar with Kubectl tools, understand the concept of Kubernetes each resource object, this time we can use Kubeadm to build a real test environment, this environment and the production environment is not too much, but it is not recommended to use Kubeadm production environment
  6. This time you must be on Kubernetes various operations and concepts have been very familiar with, now you can use the binary way to build a set of production available cluster environment, manual set up after you will be on Kubernetes various components of the relationship is very understand, for the later troubleshooting cluster failure is very helpful, It is recommended that every Kubernetes student build a cluster manually
  7. Then we look at our own needs, such as Kubernetes daily operation and maintenance, log collection, monitoring alarm, CI/CD, micro services, ServiceMesh, secondary development and so on can be well developed.
  8. If you still want to go further you can go to Kubernetes source code.

Learning methods

If you through the steps above step by step, I believe you must can have a good command of Kubernetes, but to be honest, if you don’t have some of information and tutorials, step by step a person go down or is very demanding, is bound to step on a lot of the pit, to this end, our community conscience of two courses were recommended for everybody, Can help you to learn Kubernetes quickly.

Practice course

“From Docker to Kubernetes advanced” video course is a set of advantages of knowledge launched from Docker entry step by step to migrate to Kubernetes advanced video course.

Video introduction

By the end of this course, you will have a better understanding of Docker and Kubernetes.

  1. We’ll talk about some common methods of Docker, but of course we’ll focus on Kubernetes
  2. Will use Kubeadm to build a set of Kubernetes cluster
  3. Understand how Kubernetes cluster works
  4. Some common controller usage methods
  5. There are also some scheduling strategies of Kubernetes
  6. Kubernetes operations
  7. Use of the package management tool Helm
  8. Finally we will implement CI/CD based on Kubernetes

Subscribe to the welfare

Bonus 1: The new price is ¥399, the original price is ¥499, the original price will be restored after the completion of the course

Welfare 2: every invite a friend to buy, you can get 40 yuan cash back, more invite more, no cap, cash withdrawal at any time (cash withdrawal process: advantages knowledge small program – my – my income)

How do I subscribe?

Scan the qr code below to try or buy the course.

Theory course

“In-depth analysis of Kubernetes” column is geek time based on years of experience, with a simple way to help you from the seemingly messy and complex Kubernetes project combed out a main line, to help you understand the container and Kubernetes behind the design ideas and logic, so as to solve the problems encountered in the real work.

Column profile

Through this column, I hope to explain to you the technical essence and design ideas behind containers, and deepen your understanding of container technology with the analysis and practice of core features. To that end, I’ve divided my column into four major modules:

  1. “Vernacular” container technology foundation: with interesting explanations, we will sort out the development of container technology ecology for you, and describe the implementation of container underlying technology in the most easy-to-understand language, so that you can know how it is and why.

  2. Kubernetes cluster construction and practice: Kubernetes cluster known as “very complex”, but if you understand the architecture and principle, choose the right tools and methods, it can be built but also “one key installation”, its application deployment can also be easy to understand.

  3. Container Choreography and Kubernetes core features: This is the main content of this column. Choreography will always be the soul of container Cloud projects and the source of the Kubernetes community’s enduring vitality. In this module, I will start from the perspective of distributed system design, abstract and summarize the general methods reflected in these features, and then take these guiding ideas to elaborate the core features of Kubernetes project on arrangement, scheduling and job management one by one.

  4. Kubernetes Open Source Community and Ecology: “Open source ecology” will always be the key to the success of container technology and the Kubernetes project. In this module, I will discuss with you the evolution of the container community under the guidance of modern open source software engineering. I will show you how to balance internal and external needs with your team and become an indispensable member of the community.

At the beginning of this column, I prepared four preview articles for you, which summarized the development process of container technology from its emergence to the present in detail. At the same time, I also answered the important question “why Kubernetes wins”, which is an extra gift for you.

Opportunities are always for those who are prepared, now let’s start this challenging container journey together!

By now, you and I may have missed out on the technology explosion and the early digital currency mania. But at this very moment, in the field of cloud computing and infrastructure, which has been silent for many years, a historical change in the name of “container” is looming. This time, why sit on the sidelines?

Subscribe to the welfare

The new price is ¥68, the original price is ¥99. the original price will be restored on September 8

Bonus 2: Every time you invite a friend to buy, you can get 24 yuan cash back. If you invite more and get more, there is no cap on the top, and cash out at any time (cash withdrawal process: Geek Time App – my – Share reward)

How do I subscribe?

Scan the QR code below to try it out or subscribe.

Favourable activity

Before this week (September 2nd), users who purchased the “From Docker to Kubernetes” course will be randomly selected to send in the “In-depth Analysis of Kubernetes” column exchange codes.

Scan the QR code below (or wechat search)K8s technology circle) Follow our wechat public account and reply to our wechat public accountAdd groupJoin our Kubernetes discussion group to learn more.