Kubernetes学习之安装Minikube环境

3888

简介

minikube是什么?

minikube is local Kubernetes, focusing on making it easy to learn and develop for Kubernetes.

All you need is Docker (or similarly compatible) container or a Virtual Machine environment, and Kubernetes is a single command away: minikube start

What you’ll need(重点)

  • 2 CPUs or more
  • 2GB of free memory
  • 20GB of free disk space
  • Internet connection
  • Container or virtual machine manager, such as: Docker, Hyperkit, Hyper-V, KVM, Parallels, Podman, VirtualBox, or VMWare

引用自minikube官网

当然不安装minikube也可以方便的学习Kubernetes,Kubernetes官网提供了交互式的学习教程并提供了minikube的控制台,点击Hello Minikube查看。建议使用代理以获得良好的体验

先决条件

安装 kubectl

$ curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/darwin/amd64/kubectl
$ chmod +x ./kubectl
$ sudo mv ./kubectl /usr/local/bin/kubectl
$ kubectl version --client

Minikube在不同操作系统上支持不同的驱动

安装MiniKube

该安装方式针对于Linux用户,其他平台差不多具体参考MiniKube官网安装文档,这里只解决服务器没有代理无法访问到google镜像仓库的问题。

提示

  • 官方推荐使用--driver=docker即缺省参数,此时不支持使用root用户,否则无法安装
  • 使用docker作为运行时环境,如果没有则需要提前安装,centos7/8可以使用daocloud提供的自动安装脚本
curl -sSL https://get.daocloud.io/docker | sh

Mac OSX

curl -Lo minikube https://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/releases/v1.16.0/minikube-darwin-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/

Linux

curl -Lo minikube https://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/releases/v1.16.0/minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/

Windows
下载 minikube-windows-amd64.exe 文件,并重命名为 minikube.exe

启动

minikube start

为了访问海外的资源,使用阿里云提供的镜像,可按照如下参数进行配置。其中常见参数:

  • --driver=xxx 从1.5.0版本开始,Minikube缺省使用本地最好的驱动来创建Kubernetes本地环境,测试过的版本 docker, kvm
  • --image-mirror-country=cn 将缺省利用 registry.cn-hangzhou.aliyuncs.com/google_containers 作为安装Kubernetes的容器镜像仓库 (阿里云版本可选)
  • --iso-url=xxx 利用阿里云的镜像地址下载相应的 .iso 文件 (阿里云版本可选)
  • --registry-mirror=xxx 为了拉取Docker Hub镜像,需要为 Docker daemon 配置镜像加速,参考阿里云镜像服务
  • --cpus=2: 为minikube虚拟机分配CPU核数
  • --memory=2048mb: 为minikube虚拟机分配内存数
  • --kubernetes-version=xxx: minikube 虚拟机将使用的 kubernetes 版本

启动示例推荐

minikube start --driver=docker --image-mirror-country=cn --registry-mirror=https://kaakiyao.mirror.aliyuncs.com

结果

😄  Centos 8.3.2011 上的 minikube v1.16.0
✨  根据用户配置使用 docker 驱动程序
✅  正在使用镜像存储库 registry.cn-hangzhou.aliyuncs.com/google_containers
👍  Starting control plane node minikube in cluster minikube
🔥  Creating docker container (CPUs=2, Memory=2200MB) ...
    > kubectl.sha256: 64 B / 64 B [--------------------------] 100.00% ? p/s 0s
    > kubeadm.sha256: 64 B / 64 B [--------------------------] 100.00% ? p/s 0s
    > kubelet.sha256: 64 B / 64 B [--------------------------] 100.00% ? p/s 0s
    > kubeadm: 37.40 MiB / 37.40 MiB [---------------] 100.00% 14.54 MiB p/s 3s
    > kubectl: 38.37 MiB / 38.37 MiB [----------------] 100.00% 4.21 MiB p/s 9s
    > kubelet: 108.69 MiB / 108.69 MiB [------------] 100.00% 11.48 MiB p/s 10s

    ▪ Generating certificates and keys ...
    ▪ Booting up control plane ...
    ▪ Configuring RBAC rules ...
🔎  Verifying Kubernetes components...
🌟  Enabled addons: default-storageclass, storage-provisioner
🏄  Done! kubectl is now configured to use "minikube" cluster and "default" namespace by default