Kubernetes–安装 MiniKube,第 1 部分(共 n 部分)






4.91/5 (5投票s)
我将致力于撰写一系列关于 Kubernetes 的博文。在本篇中,我们将重点介绍:Kubernetes 是什么 / 安装 Minikube
目前,我正在做一些事情,比如
- 阅读一本不错的 Scala 书籍
- 阅读另一本关于 Scala 类型级编程的书籍
- 研究 Azure Batch
- 决定是否要学习 GoLang(我可能会)
在所有这些事情中,我还决定撰写一系列关于 Kubernetes 的博文。该系列的粗略计划可能如下所示
- Kubernetes 是什么 / 安装 Minikube(本篇)
- 什么是 Pod/标签,声明你的第一个 Pod
- ConfigMaps/Secrets
- 服务
- 单例(如数据库)
- 部署
所以,这就是我将要做的粗略计划。最后,我最有可能将所有这些内容合并到一篇 CodeProject 文章中,因为我发现文章的受众与博文的受众略有不同。
那么,Kubernetes 是什么?
Kubernetes(**Kubernetes** 这个名字源自**希腊语**,**意思是**舵手或领航员,是“governor”和“cybernetic”的前缀)是一个开源系统,用于自动化容器化应用程序的部署、扩展和管理。
它将构成应用程序的容器分组为逻辑单元,以便于管理和发现。Kubernetes 建立在谷歌运行生产工作负载的 15 年经验之上,并结合了社区的最佳理念和实践。
Kubernetes 建立在谷歌之前的一些项目之上,例如 Borg 和 Omega,但它也使用了当前流行的容器 Docker,并且是一个免费工具。
Kubernetes 可以有多种运行方式,例如
- 托管云服务(AWS 和 Azure 都提供开箱即用的容器服务支持 Kubernetes)
- 裸机,即你有一个虚拟机(VM)集群,你将在上面安装 Kubernetes(这里有一篇非常好的指南)
- Minikube – 在你自己的计算机上运行一个非常简单的单节点集群(我将在本系列中使用它,仅仅因为它简单且节省成本)
所以,话不多说,我们将从一个简单的介绍开始本系列,介绍如何使用 Minikube 在本地安装 Kubernetes。
安装 Minikube
我使用的是 Windows PC,所以这些说明偏向于 Windows 开发,我们将使用 Hyper-V 而不是 VirtualBox。但是,如果你更喜欢使用 VirtualBox,我相信你可以找到如何在 VirtualBox 中完成我下面提到的针对 Hyper-V 的具体操作。
好的,我们开始吧。
安装 Docker
你需要做的第一件事是从这里下载 Docker(我选择了稳定版频道)。然后下载并安装。这应该是一个比较标准的安装过程。最后,你可以通过两种方法检查安装。
检查系统托盘中的 Docker 图标。
并在 PowerShell 中尝试一个简单的命令(如果你使用的是 Windows)
好的,现在 Docker 看起来没问题了,让我们来关注 Hyper-V。如我所说,你可以使用 VirtualBox,但由于我使用的是 Windows,Hyper-V 似乎是更好的、更集成的选择。所以,让我们确保它已开启。
设置 Hyper-V
打开控制面板 -> 程序和功能。
然后,我们要确保 Hyper-V 已开启,通过使用“**开启或关闭 Windows 功能**”,然后找到 Hyper-V 并勾选相应的复选框来完成。
好的,现在你已经启用了 Hyper-V,我们需要启动 **Hyper-V 管理器**并添加一个新的虚拟交换机(我们稍后运行 Minikube 时会使用这个交换机的名称)。我们需要添加一个新的交换机,以便与 Docker 安装时设置的虚拟交换机进行隔离。
因此,一旦 Hyper-V 管理器启动,创建一个新的“外部”虚拟交换机。
你需要像这样配置它
安装 Minikube
好的,现在我们需要从 GitHub 下载 minikube 二进制文件。当前版本发布在此处:https://github.com/kubernetes/minikube/releases
您需要下载名为 `minikube-windows-amd64` 的文件,因为本博客是 Windows 安装指南。下载后,您必须将此文件复制到 *C:\* 的根目录下。这是由于一个已知错误(在此处阅读更多信息:https://github.com/kubernetes/minikube/issues/459)。
为了方便起见,请将文件 *c:\minikube-windows-amd64* 重命名为 *c:\minikube.exe*,以便在运行命令时更简洁。
安装 kubectrl.exe
接下来,您需要下载 *kubectrl.exe*,您可以通过类似这样的链接来下载,您需要将链接替换为您想要的版本。在本系列中,我将使用 v1.9.0,所以我的链接地址是:http://storage.googleapis.com/kubernetes-release/release/v1.9.0/bin/windows/amd64/kubectl.exe。将此 *kubectrl.exe* 文件与您的 *minikube.exe* 一起放在 *C:\* 目录下。
配置集群
现在我们已经有了基本设置和所需文件,我们需要测试我们的安装。但在此之前,最好看一下 *minikube.exe* 命令/参数,这些都通过类似这样的命令进行文档化,您可以在 PowerShell 中运行。
我们将使用的实际命令如下
.\minikube.exe start --kubernetes-version="v1.9.0" --vm-driver="hyperv" --memory=1024 --hyperv-virtual-switch="Minikube Switch" --v=7 --alsologtostderr
您可能想知道这些值中的一些是从哪里来的。嗯,我不得不承认,从上面的命令行 **–help** 文本中看不出来。您需要深入挖掘一下。也许上面最有趣的是
vm-driver
hyperv-virtual-switch
这些指示 minikube 使用 HyperV,并使用我们上面设置的新 HyperV 管理器交换机。
确保您输入的名称正确。它应该与您设置的名称匹配。
您可以在此处阅读更多关于 HyperV 命令参数的信息:https://github.com/kubernetes/minikube/blob/master/docs/drivers.md#hyperV-driver
总之,让我们回到正题,我们运行这个命令行(我正在以管理员模式使用 PowerShell)。我们应该看到类似这样的输出,其中最终会显示一些与突出部分相同的内容。
这会在后台为您做几件事
- 创建 HyperV 中运行的 Docker Vm。
- 主机已配置 *boot2docker.iso* 并已设置好。
- 它将 *kubectrl.exe* 配置为使用本地集群。
检查状态
您可以使用类似以下的命令检查集群的状态
过时的上下文
如果您看到类似这样的内容
您可以像这样修复它
验证其他方面
确保安装成功的最后一个任务是尝试查看集群信息和仪表板,如下所示
这应该会打开一个 Web UI
所以一切看起来都很顺利。
本篇到此结束,我将很快开始撰写后续篇章……敬请期待!