如何在 Ubuntu 18.04 LTS 上使用 Minikube 安装 Kubernetes
本教程适用于这些操作系统版本
- Ubuntu 20.04(Focal Fossa)
- Ubuntu 18.04(仿生海狸)
在此页
- 要求
- 开始
- 安装 VirtualBox 管理程序
- 安装 Minikube
- 安装 Kubectl
- 启动 Minikube
- 访问 Kubernetes 仪表板
Minikube 是一种免费的开源工具,可让您在 Linux 系统中设置单节点 Kubernetes 集群。 Minikube 可以安装在 Linux、MacOS 和 Windows 操作系统上。 Minikube 还支持各种 Kubernetes 功能,例如 NodePorts、DNS、容器网络接口、Ingress、ConfigMaps、Secrets 等等。
在本教程中,我们将学习如何在 Ubuntu 18.04 LTS 上安装 Kubernetes 单节点集群 Minikube。
要求
- 在您的系统上安装了全新的 Ubuntu 18.04 桌面。
- 在您的系统上设置了根密码。
入门
首先,您需要使用最新版本更新您的系统。您可以通过运行以下命令来执行此操作:
apt-get update -y
apt-get upgrade -y
系统更新后,重新启动系统以应用所有更改。
接下来,使用以下命令安装一些必需的包:
apt-get install curl wget apt-transport-https -y
安装 VirtualBox 管理程序
Minikube 支持 KVM 和 VirtualBox 管理程序。因此,您需要在系统中安装 VirtualBox 或 KVM。
您可以使用以下命令安装 Virtualbox:
apt-get install virtualbox virtualbox-ext-pack
安装完成后,您可以继续下一步。
安装 Minikube
首先,您需要将最新版本的 Minikube 下载到您的系统中。您可以使用以下命令从他们的官方网站下载它:
wget https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
下载完成后,使用以下命令将下载的文件复制到 /usr/local/bin 下:
cp minikube-linux-amd64 /usr/local/bin/minikube
接下来,使用以下命令授予 minikube 执行权限:
chmod 755 /usr/local/bin/minikube
接下来,使用以下命令检查 Minikube 的版本:
minikube version
您应该看到以下输出:
minikube version: v0.34.1
安装 Kubectl
Kubectl 是一个在 Kubernetes 上部署和管理应用程序的工具。默认情况下,Ubuntu 18.04 默认存储库中不提供 Kubectl。因此,您需要将 Kubernetes 存储库添加到您的系统中。
首先,使用以下命令下载并添加 GPG 密钥:
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
接下来,使用以下命令添加 Kubernetes apt 存储库:
echo "deb http://apt.kubernetes.io/ kubernetes-xenial main" | tee /etc/apt/sources.list.d/kubernetes.list
接下来,更新存储库并使用以下命令安装 Kubectl:
apt-get update -y
apt-get install kubectl -y
安装 Kubectl 后,您可以使用以下命令检查版本:
kubectl version -o json
您应该看到以下输出:
{
"clientVersion": {
"major": "1",
"minor": "13",
"gitVersion": "v1.13.4",
"gitCommit": "c27b913fddd1a6c480c229191a087698aa92f0b1",
"gitTreeState": "clean",
"buildDate": "2019-02-28T13:37:52Z",
"goVersion": "go1.11.5",
"compiler": "gc",
"platform": "linux/amd64"
}
}
启动 Minikube
所有必需的软件包都已安装。您现在可以使用以下命令启动 Minikube:
minikube start
这将下载 Virtualbox 图像并配置 Kubernetes 集群,如下所示:
o minikube v0.34.1 on linux (amd64)
> Creating virtualbox VM (CPUs=2, Memory=2048MB, Disk=20000MB) ...
@ Downloading Minikube ISO ...
184.30 MB / 184.30 MB [============================================] 100.00% 0s
- "minikube" IP address is 192.168.99.100
- Configuring Docker as the container runtime ...
- Preparing Kubernetes environment ...
@ Downloading kubeadm v1.13.3
@ Downloading kubelet v1.13.3
- Pulling images required by Kubernetes v1.13.3 ...
- Launching Kubernetes v1.13.3 using kubeadm ...
- Configuring cluster permissions ...
- Verifying component health .....
+ kubectl is now configured to use "minikube"
= Done! Thank you for using minikube!
您现在可以使用以下命令检查集群状态:
kubectl cluster-info
您应该看到以下输出:
Kubernetes master is running at https://192.168.99.100:8443
KubeDNS is running at https://192.168.99.100:8443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy
To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.
您还可以使用以下命令检查 Kubectl 默认配置:
kubectl config view
您应该看到以下输出:
apiVersion: v1
clusters:
- cluster:
certificate-authority: /root/.minikube/ca.crt
server: https://192.168.99.100:8443
name: minikube
contexts:
- context:
cluster: minikube
user: minikube
name: minikube
current-context: minikube
kind: Config
preferences: {}
users:
- name: minikube
user:
client-certificate: /root/.minikube/client.crt
client-key: /root/.minikube/client.key
要检查正在运行的节点,请运行以下命令:
kubectl get nodes
输出:
NAME STATUS ROLES AGE VERSION
minikube Ready master 2m45s v1.13.3
您还可以使用以下命令访问 Minikube Virtualbox:
minikube ssh
你应该看到以下输出:
_ _
_ _ ( ) ( )
___ ___ (_) ___ (_)| |/') _ _ | |_ __
/' _ ` _ `\| |/' _ `\| || , < ( ) ( )| '_`\ /'__`\
| ( ) ( ) || || ( ) || || |\`\ | (_) || |_) )( ___/
(_) (_) (_)(_)(_) (_)(_)(_) (_)`\___/'(_,__/'`\____)
$
现在,退出 Virtualbox shell:
$exit
您还可以随时使用以下命令停止和删除 kubernetes 集群:
minikube stop
minikube delete
您可以使用以下命令检查 Minikube 的状态:
minikube status
你应该看到以下输出:
host: Running
kubelet: Running
apiserver: Running
kubectl: Correctly Configured: pointing to minikube-vm at 192.168.99.100
访问 Kubernetes 仪表板
默认情况下,Kubernetes 带有可用于管理集群的 Web 仪表板。
您可以使用以下命令列出所有 minikube 插件:
minikube addons list
您应该看到以下输出:
- addon-manager: enabled
- dashboard: disabled
- default-storageclass: enabled
- efk: disabled
- freshpod: disabled
- gvisor: disabled
- heapster: disabled
- ingress: disabled
- logviewer: disabled
- metrics-server: disabled
- nvidia-driver-installer: disabled
- nvidia-gpu-device-plugin: disabled
- registry: disabled
- registry-creds: disabled
- storage-provisioner: enabled
- storage-provisioner-gluster: disabled
接下来,使用以下命令列出集群中运行的所有容器镜像:
kubectl get pods --all-namespaces
您应该看到以下输出:
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system coredns-86c58d9df4-76dkf 1/1 Running 0 4m30s
kube-system coredns-86c58d9df4-wdtwb 1/1 Running 0 4m29s
kube-system etcd-minikube 1/1 Running 0 8m17s
kube-system kube-addon-manager-minikube 1/1 Running 0 8m6s
kube-system kube-apiserver-minikube 1/1 Running 1 8m13s
kube-system kube-controller-manager-minikube 1/1 Running 1 8m13s
kube-system kube-proxy-5k8qf 1/1 Running 0 4m33s
kube-system kube-scheduler-minikube 1/1 Running 0 8m2s
kube-system kubernetes-dashboard-ccc79bfc9-z827s 1/1 Running 0 4m17s
kube-system storage-provisioner 1/1 Running 0 4m13s
现在,运行以下命令获取 kubernate 仪表板的 URL:
minikube dashboard --url
您应该看到以下输出:
- Enabling dashboard ...
- Verifying dashboard health ...
- Launching proxy ...
- Verifying proxy health ...
http://127.0.0.1:56508/api/v1/namespaces/kube-system/services/http:kubernetes-dashboard:/proxy/
您的 Minikube 网址现已生成。接下来,打开 Web 浏览器并输入 URL http://127.0.0.1:56508/api/v1/namespaces/kube-system/services/http:kubernetes-dashboard:/proxy/。您将被重定向到 Kubernate 仪表板,如下页所示:

恭喜!您已经在 Ubuntu 18.04 上成功安装了 Minikube。您现在可以通过 Web 浏览器轻松管理 Kubernetes 集群。