未加星标

使用Helm charts在Kubernetes 1.4 MongoDB上部署

字体大小 | |
[数据库(综合) 所属分类 数据库(综合) | 发布者 店小二05 | 时间 2016 | 作者 红领巾 ] 0人收藏点击收藏

有人说:“如果你觉得国庆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。

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


使用Helm charts在Kubernetes 1.4 MongoDB上部署

将二进制放到有用的地方:


使用Helm charts在Kubernetes 1.4 MongoDB上部署

验证是否安装正确:


使用Helm charts在Kubernetes 1.4 MongoDB上部署

安装 Helm server

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


使用Helm charts在Kubernetes 1.4 MongoDB上部署

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


使用Helm charts在Kubernetes 1.4 MongoDB上部署

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


使用Helm charts在Kubernetes 1.4 MongoDB上部署

准备 GCE

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


使用Helm charts在Kubernetes 1.4 MongoDB上部署

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


使用Helm charts在Kubernetes 1.4 MongoDB上部署

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


使用Helm charts在Kubernetes 1.4 MongoDB上部署

现在我们可以来安装Chart!

Charts

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

文件结构

顶层目录的名称是应用程序的名称。structore概述如下:


使用Helm charts在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到本地存储库以获得图表。


使用Helm charts在Kubernetes 1.4 MongoDB上部署

安装 Chart

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


使用Helm charts在Kubernetes 1.4 MongoDB上部署

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


使用Helm charts在Kubernetes 1.4 MongoDB上部署

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

验证 MongoDB 的运行

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


使用Helm charts在Kubernetes 1.4 MongoDB上部署

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


使用Helm charts在Kubernetes 1.4 MongoDB上部署
使用Helm charts在Kubernetes 1.4 MongoDB上部署

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

卸载

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


使用Helm charts在Kubernetes 1.4 MongoDB上部署

结论

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


使用Helm charts在Kubernetes 1.4 MongoDB上部署

本文数据库(综合)相关术语:系统安全软件

分页:12
转载请注明
本文标题:使用Helm charts在Kubernetes 1.4 MongoDB上部署
本站链接:http://www.codesec.net/view/481788.html
分享请点击:


1.凡CodeSecTeam转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
登录后可拥有收藏文章、关注作者等权限...
技术大类 技术大类 | 数据库(综合) | 评论(0) | 阅读(32)