官术网_书友最值得收藏!

About Minikube

One of the things you may have been thinking to yourself when reading the previous chapter is that Kubernetes seems complex. There are a lot of moving parts, which not only need to be configured but also monitored and managed.

I remember when I originally looked at Kubernetes when it was first released before the stable version, and the installation instructions were very long and also things were a little delicate.

Misread a step at the beginning of the installation process and you could find yourself in a lot of trouble later in the installation—it reminded me of when magazines used to contain type in listings for games. If you made a typo anywhere then things would either flat-out not work or crash unexpectedly.

As Kubernetes matured, so did the installation process. Quite quickly a number of helper scripts were developed to aid in launching Kubernetes across various platforms; Minikube is one of these tools.

It has one job, to create a local Kubernetes node. Considering the breadth of features supported by Kubernetes, it has a surprising number of features, such as:

  • DNS, NodePorts, and Ingress
  • ConfigMaps and Secrets
  • A choice of container runtimes; you can use either Docker or rkt
  • Persistent Volumes via hostPath
  • Dashboards

Kubernetes features that would typically require a public cloud provider, such as AWS, Microsoft Azure, or Google Cloud, or multiple hosts, are not supported. Some of these features are:

  • LoadBalancers
  • Advanced scheduling policies

This is because Minikube only launches a single node on a virtual machine on your local PC. This shouldn't limit you though; remember that you would only ever want to use Minikube for development and you should never build production services using it. There are a lot more tools, which will be covered in Chapter 6, Installing Kubernetes in the Cloud, more suited to launching production-ready Kubernetes clusters in public clouds or other vendors.

Minikube is made up of two core components:

  • libmachine: This library from Docker is used to provision virtual machines on your host machine. It is a core component of Docker Machine as well as Docker for macOS and Docker for Windows.
  • localkube: This library, developed and donated to the Minikube project by Redspread (which is now a part of CoreOS), is responsible for deploying and maintaining the Kubernetes node once the virtual machine has been launched.

Rather than talking about what Minikube can do any more, we should look at installing it and then discuss how we can interact with it.

主站蜘蛛池模板: 绥阳县| 巴彦淖尔市| 丰顺县| 新密市| 金堂县| 长阳| 赤城县| 基隆市| 金沙县| 西峡县| 沁阳市| 宜丰县| 张家口市| 长治市| 乌鲁木齐县| 收藏| 安化县| 宝山区| 兴隆县| 马尔康县| 岑巩县| 上饶市| 望都县| 连平县| 唐海县| 平南县| 闻喜县| 台前县| 黄梅县| 台中县| 肇东市| 绥宁县| 巴中市| 平凉市| 泽州县| 海宁市| 京山县| 柞水县| 万荣县| 扎鲁特旗| 泰顺县|