如何利用Helm在Kubernetes上快速部署Cloud Foundry?
来源:互联网 发布:吓人软件 编辑:程序博客网 时间:2024/05/16 11:51
Cloud Foundry是业界领先的PaaS云平台,可以为应用提供高可用的运行平台,现在很多运行商都在使用Cloud Foundry为用户提供应用服务,如IBM、AWS等。自Cloud Foundry面世以来便一直使用BOSH来创建和更新生产服务。BOSH是一条开源工具链,用于对大规模分布式服务进行发行版工程处理、部署和生命周期管理。它包含一个云提供商接口(CPI),如VMWare,通过调用CPI完成整个Cloud Foundry的创建、部署和升级。
Kubernetes经过几年的发展越来越成熟,遍布全球的数百位开发者纷纷投身到Kubernetes的快速迭代中。越来越多的企业开始采用Kubernetes支撑生产业务,实现了高可用的容器化微服务。
BOSH现在主要适用于IaaS
需要开发新的Kubernetes CPI
部署时间过长
需要手工执行许多配置,如网络和资源等
现在业界有很多厂商都在研究如何更好更快地将Cloud Foundry部署在Kubernetes上,如SUSE的SCF和Cisco的Container CF等。虽然现在还没有发布用于生产环境的版本,但思路相比BOSH更贴近Kubernetes的使用方式,也更融合Kubernetes。主要的方式就是通过制作相对应的Cloud Foundry组件的Docker Image,部署的时候直接部署对应的Docker Image,然后在运行容器之前,通过配置信息和环境变量,设置容器参数使整个Cloud Foundry组件之间可以相互通信。即使哪个Cloud Foundry组件坏了或者被重启了,组件使用已创建的Docker Image可以快速启动,只是在启动时需要重新配置一下参数。它相对之前BOSH的部署方式,好处显而易见:
首先我们需要将BOSH的工程通过SUSE的转换工具fissile将其编译并制作成Docker Image。
之后我们需要通过Helm将预设的参数转换成Helm或者Kubernetes的配置资源文件。
最后通过Helm将整个CF部署到Kubernetes上。
下图是和传统的BOSH CPI的部署方式的比较,绿色部分为新的Fissile + Helm 方式改变的步骤。但这些绿色步骤只需要管理员执行一次来创建Docker Image,之后就可以重复使用了。最终用户只需要执行橙色步骤,修改自己配置文件,下载相应的Docker Image,部署整个Cloud Foundry。整个部署Cloud Foundry的时间大概在15-20分钟,这和之前BOSH部署4-6个小时相比,快了很多:
首先我们需要一个性能较好的机器并且可以连接外网并安装Vagrant。
克隆整个SCF的Git项目 https://github.com/SUSE/scf
执行相应的Vagrant命令启动构建环境。
进入Vagrant创建的虚拟机,执行 make vagrant-prep 命令创建工程、编译并制作Docker Image,这个过程大概需要2-3个小时,但只需要执行一次。
上一步正确完成后,执行make kube,根据预设配置,创建Helm或Kubernetes配置资源文件。
最后执行make run将整个Cloud Foundry部署到Vagrant自带的Kubernetes上。
你也可以通过它自带的pod-status来观察整个Cloud Foundry的状态。大概15-20分钟之后,所有的Pod都启动了,Cloud Foundry就可以使用了。
所有相关信息都可以在SCF的Git中找到:https://github.com/SUSE/scf。
下图为部署成功后SCF显示的环境信息:
本次培训内容包含:Kubernetes架构、Kubernetes安装、Kubernetes功能导览、监控解决方案、Kubernetes高阶——设计和实现、Kubernetes落地实践等,点击识别下方二维码加微信好友了解具体培训内容。
- 如何利用Helm在Kubernetes上快速部署Cloud Foundry?
- 使用Helm charts在Kubernetes 1.4 MongoDB上部署
- 利用Helm简化Kubernetes应用部署
- 在vSphere上通过BOSH工具大规模部署Cloud Foundry(3) -- 部署Cloud Foundry
- cloud foundry上部署mysql
- Cloud Foundry samples学习笔记5:在Cloud Foundry上部署Grails应用程序 petclinic
- 如何在Ubuntu上搭建Cloud Foundry网站运行环境
- 如何在Cloud Foundry上强制使用https
- Cloud Foundry安装部署指南(上)
- 如何在 Azure 上部署 Kubernetes 集群
- 在vSphere上通过BOSH工具大规模部署Cloud Foundry (1) - IaaS准备
- 在vSphere上通过BOSH工具大规模部署Cloud Foundry(2) - 安装BOSH
- 简化Kubernetes应用部署工具-Helm简介
- 简化Kubernetes应用部署工具-Helm简介
- 简化Kubernetes应用部署工具-Helm安装
- 简化Kubernetes应用部署工具-Helm安装
- Cloud Foundry service broker开发部署实例解析(上)
- Kubo更名为CFCR,成为Cloud Foundry部署Kubernetes的默认方案
- IOS11 适配遇到的坑
- 运维之红帽管理员篇-----4. NTP时间同步 、 tar备份与恢复 、 管理用户和组 、 cron计划任务
- 2017成都第六届国际宠物博览会会刊(参展商名录)
- 文件系统读写--读过程返回
- 第九届Mockplus ▪ UXPA用户体验成都赛区决赛成功举行
- 如何利用Helm在Kubernetes上快速部署Cloud Foundry?
- 第七周 项目1
- RegDeleteKey函数删除子项并包含其所有值 及递归删除子项例子。请注意,key名称不区分大小写。
- 如何无痛降低 if else 面条代码复杂度
- web页面缓存之Cache-Control问题
- php ajax 仿百度查询下拉内容
- 大飞哥讲<spark学习笔记>
- 饼干包装加工常见材料类型
- ASP.NET播放视频有声音没画面