Kubernetes持续交付-Jenkins X的Helm部署
- 本文翻译根据 https://github.com/jenkins-x/jenkins-x-platform
-
在Kubernetes上创建CI/CD流水线,https://my.oschina.net/u/2306127/blog/1819650。
Jenkins X 是一个集成化的 CI / CD 平台,可用于部署在Kubernetes集群或云计算中心。支持在云计算环境下简单地开发和部署应用。本项目是在Kubernetes上的安装支持工具集。
本工具集中包含:
Jenkins - 定制好的流水线和运行环境,完全整合CI/CD解决方案。 | |
Nexus 用于Maven支持的组件仓库 (pluggable so we can switch with Artifactory) | |
Chartmuseum Helm Chart 仓库 (Helm是 Kubernetes 上的包管理器,用于Kubernetes上的应用安装和更新(Kubernetes应用往往包含多个Docker运行实例的部署)。 | |
Monocular 搜索和发现Helm Charts的Web UI。 |
通过Helm可以快速安装Jenkins X套件。
安装
我们使用CLI tool- jx 与 Jenkins X 进行交付。为了安装, jx
委托任务给 Helm (Kubernetes Package manager) 用于安装、升级和卸载操作。
抓取 jx 选取需要创建的集群。
远程集群安装
最快的方式是使用 Google Kubernetes Engine (GKE),其它的云计算支持很快也会发布。
预先要求 需要有一个Google Cloud Account,支持 Google Project setup,从下面的链接获得评估账号 ($300 credit, https://console.cloud.google.com/freetrial )。然后,运行:
jx create cluster gke
然后根据CLI的提示操作。
本地开发
本地开发可以在minikube上安装 Jenkins X。
需要首先安装Hyperkit driver:
git clone https://github.com/jenkins-x/cloud-environments && cd cloud-environments jx create cluster minikube --local-cloud-environment=true
存取applications
在kubernetes cluster上运行下面的命令,列出外部URL来存取applications:
jx open
缺省授权账号
该仓库用于测试目的设置了缺省的 admin username 和 passwords,如下:
Application | Username | Password |
---|---|---|
K8S Dashboard | admin | admin |
Chartmuseum | admin | admin |
Jenkins | admin | admin |
Nexus | admin | admin123 |
Grafana | admin | admin |
本文转自开源中国-Kubernetes持续交付-Jenkins X的Helm部署
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
管理Kubernetes集群时需要关注的关键指标
历经重重考验,系统在生产环境中成功落地之后,可能依然面临系统无法适用大规模应用的挑战,因此我们需要对K8s集群的关键指标进行追踪。Rancher 资深解决方案架构师将在本文中介绍需要追踪的内容及其原因,让您在面对问题时有所准备。 有时我们在面对分布式系统工程时常感到痛苦。构建分布式系统真的很难,无论是哪个行业的企业,都希望我们在解决他们的业务问题的同时,还能考虑潜在的大规模业务问题。与大规模部署随之而来的一大挑战,是用户还要考虑创建新特性和避免回档。就算能够非常出色地实现这些目标,用户仍然会担忧很多其他问题,例如信息是否安全、是否遵从法规,以及企业的这一投资是否真的有足够价值。 如果上述描述和你的团队现在的境况很像,而且你们的系统已经在生产环境中运行了,那么恭喜你,你已经通过了第一轮考验。 无论你多么努力建立了一个出色的系统,有时意想不到的事还是会发生。有很多这样的先例。一个杰出的产品,或者是病毒式应用,可能会带来前所未有的成功,而成功之后你就会发现,原先你以为的、你的系统面对大规模应用时的处理方式,好像不适用了。 Pokemon Go云数据存储的每秒处理数(预期vs实际) 这一情况是...
- 下一篇
kubernetes如何解决服务依赖呢?
在微服务的世界里,任何应用都需要注意,其所依赖的服务是会中断的。所以当应用发现某服务(如数据库)出现了故障,应该每隔一端时间去重试。而上层框架(如k8s)会检测到服务故障,并尝试恢复这个服务。 但在现实世界里,有些旧应用并没有处理这种情况,但我们还是希望能将他们也跑在微服务框架里,以期得到微服务的红利(例如应用故障重启),所以,需要定义服务依赖关系,从而保障旧应用启动时,它所依赖的服务已经ready。 解决方法是,微服务框架替应用等待其所依赖的服务(api, database, etc),当服务准备好时,框架才启动该应用。 如何知道Pod已经Ready kubernetes提供了Readiness Probe功能,用来探测Pod是否Ready。 Pod在Readiness Probe成功之前,不会接受任何流量;具体以Service来说,在Pod的Readiness Probe成功之前,Kubernetes不会将该Pod作为Serivce的Endpoint(注意,这是下面initContainer的基础)。Probe是kubernet API提供的功能,服务不需要做任何改变就可以支持。下...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- Mario游戏-低调大师作品
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Red5直播服务器,属于Java语言的直播服务器
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS6,CentOS7官方镜像安装Oracle11G
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装