Kubernetes 1.4 MongoDB部署

《Kubernetes 1.4 MongoDB部署》要点:
本文介绍了Kubernetes 1.4 MongoDB部署,希望对您有用。如果有疑问,可以联系我们。

有人说:“如果你觉得国庆7天短的话,那么接下来上班的7天你就知道有多长了【二哈】”,本日周一,照列来一波干货来袭,喜欢来收.

2016年9月26日发布Kubernetes 1.4版本,其中包含几项新的功能.一个有趣的是使用扩展的状态的应用支持 Helm Charts.在这篇文章中,我们将使用Kubernetes 1.4的这个新功能部署MongoDB实例来Kubernetes.

他们的博客公告:

策划和预测试Helm Charts普通状态的应用,如MariaDB的,MySQL和詹金斯将可使用头盔担保理器的版本2单命令启动.

请记住,即使Helm只是官方Kubernetes的一部分,但是不要它的话法,将无法正常工作.如果你发现有任何问题,可以在GitHub上创建一个问题来需求办理.

什么是 Helm?

Helm,是Kubernetes的软件担保理器.Charts表示可以安装并组成的预配置Kubernetes资源包.

配置 Helm

Helm采用客户端机服务器模式.服务器部分被称为tiller,同时包含你运行Kubernetes集群.客户端部分被称为helm,安装在本地的开发系统上.

安装客户端Helm

首先我们安装必要的客户端,以便我们能在Kubernetes群集上安装helm.在helm的每个版本中大多数OS是二进制文件.去他们的GitHub库kubernetes 或者Helm,并找到最新版本.在这篇文章撰写时最新的版本是V2.0.0,alpha.4,所以我们将使用该版本.

注意:安装helm的同时请确保你已经把kubectl安装在相同环境下.这将使我们能够从开发环境的群集上安装helm.

运行下面的命令下载并解压二进制文件:

Kubernetes 1.4 MongoDB部署

将二进制放到有用的处所:

Kubernetes 1.4 MongoDB部署

验证是否安装正确:

Kubernetes 1.4 MongoDB部署

安装 Helm server

现在,我们已经安装了客户端helm,我们可以用它在我们的Kubernetes群集上安装helm.要安装简单helm运行以下命令:

Kubernetes 1.4 MongoDB部署

该命令完成后,您可以通过列出所有kube-system验证它安装helm:

Kubernetes 1.4 MongoDB部署

现在,我们可以验证客户端和服务器部门被重新运行.我们应该看到这两个部门中列出的版本:(实际上,它指出在这个从GitHub的helm note,但在实践中使用命令,我只看到它显示了客户端版)

Kubernetes 1.4 MongoDB部署

准备 GCE

为了让我们的Chart正常运行,我们必要得到一些底层架构.该图表将创建3 个MongoDB的实例,每个都必要有一个持久Kubernetes Persistent Volume.由于我们这篇文章使用GCE的云服务提供商,我们必要使用gcloud SDK第一设置3个 GCE永久磁盘.确保你在同一区域作为你kubernetes集群创建的磁盘.

Kubernetes 1.4 MongoDB部署

不要担心警告,新的磁盘格式化,MongoDB会提醒我们.现在,我们有GCE PD的创建,我们必要创建相应的Kubernetes Persistent Volumes.创建一个名为GCE-pv.yaml的文件,内容如下:

Kubernetes 1.4 MongoDB部署

保留文件,然后使用kubectl来创建它们

Kubernetes 1.4 MongoDB部署

现在我们可以来安装Chart!

Charts

Charts是描述软件包的Kubernetes方式.chart基本上与描述了如何部署应用法式文件的目录.这与Puppet Modules非常相似,因为它们是描述应用法式代码的目录.

文件布局

顶层目录的名称是应用法式的名称.structore概述如下:

Kubernetes 1.4 MongoDB部署

该Chart.yaml和values.yaml文件是唯一需要的文件,包含有关chart信息.

Chart.yaml

我不会把Chart.yaml文件的详细信息弄的那么繁杂.这种东西应该是赞助我们理解抽象的部署应用程序,就像MongoDB的那么容易,因为用apt或yum的安装.如果你真的想知道更多有关如何将文件的组织知识,你可以自行阅读相关知识.

MongoDB Chart

Incubator 状态

Chart被认为是“_incubator status_',这意味着它不符合下列条件之一是:

  • 提供了数据持久性的办法(如适用)

  • 支持应用升级

  • 允许应用法式配置的定制

  • 提供一个平安的默认配置

  • 不要利用Kubernetes alpha功能

MongoDB chart使用大量的Kubernetesalpha功能这使得它处于孵化器的状态.

获取Chart

第一步,通过用git clone到当地存储库以获得图表.

Kubernetes 1.4 MongoDB部署

安装 Chart

现在,可以用一个命令来安装我们的chart.

Kubernetes 1.4 MongoDB部署

这将在默认的命名空间内为MongoDB创立Kubernetes服务和petset.从helm来看,先安装命令是PetSet发布的名称.这很重要,因为这是我们以后的一切引用.几分钟后,检查我们的pods的状态.

Kubernetes 1.4 MongoDB部署

现在,我们在Kubernetes集群中有运行的的MongoDB集群.最后,我们将学习如何拜访它,并验证一切工作.

验证 MongoDB 的运行

现在,我们的MongoDB在运行中,我们可以在上面运行一些命令来检查MongoDB是否在真正运行.

Kubernetes 1.4 MongoDB部署

现在运行以下命令来找出哪一个是主要的MongoDB pods.

Kubernetes 1.4 MongoDB部署

Kubernetes 1.4 MongoDB部署

你可以从上面举的例子中看到,第二个pod是主MongoDB实例.

卸载

如果你想MongoDB停止运行,你可以使用“uninstall”命令.

Kubernetes 1.4 MongoDB部署

结论

现在你有一个MongoDB的安装配置好并存储数据.我们用一个简单办法安装了它Kubernetes称为Helm.由于这仍然是相当新的技术,所以这篇文章只有几个chart可用,但我相信在不久的将来会有很多.

原文链接:http://billcloud.me/deploying-mongodb-on-kubernetes-1.4-using-helm-charts/

了解更多干货知识,可存眷微信公众号“godocker”或“精灵云”

欢迎参与《Kubernetes 1.4 MongoDB部署》讨论,分享您的想法,编程之家PHP学院为您提供专业教程。

相关文章

文章浏览阅读552次。com.mongodb.MongoQueryException: Quer...
文章浏览阅读635次,点赞9次,收藏8次。MongoDB 是一种 NoSQ...
文章浏览阅读2.1k次。和。_mongodb 日期类型
文章浏览阅读1.7k次。Scalestack等客户期待使用MongoDB Atla...
文章浏览阅读970次。SpringBoot整合中间件mongodb、ES_sprin...
文章浏览阅读673次。MongoDB 简介_尚医通sql