阿里云Kubernetes实战2--搭建基础服务

前言:

在系列的第一篇文章中,我已经介绍过如何在阿里云基于kubeasz搭建K8S集群,通过在K8S上部署gitlab并暴露至集群外来演示服务部署与发现的流程。文章写于4月,忙碌了小半年后,我才有时间把后续部分补齐。系列会分为三篇,本篇将继续部署基础设施,如jenkins、harbor、efk等,以便为第三篇项目实战做好准备。

需要说明的是,阿里云迭代的实在是太快了,2018年4月的时候,由于SLB不支持HTTP跳转HTTPS,迫不得已使用了Ingress-Nginx来做跳转控制。但在4月底的时候,SLB已经在部分地区如华北、国外节点支持HTTP跳转HTTPS。到了5月更是全节点支持。这样以来,又简化了Ingress-Nginx的配置。

1

一、Jenkins


Docker 入门教程

该教程仅对docker常用操作进行了总结归纳

一、 什么是Docker

Docker是2013年,dotCloud用Golang开发的基于LXC的高级容器引擎

1.1 什么是LXC

Linux Container的简写。可以提供轻量级的虚拟化,以便隔离进程和资源,而且不需要提供指令解释机制以及全虚拟化的其他复杂性。相当于C++中的NameSpace


我的三十岁

孔老夫子说:“吾十有五,而志于学。三十而立,四十而不惑,五十而知天命,六十而耳顺,七十而从心所欲,不逾矩” 。然而我的而立之年,却是感受了两次“死亡”……

1. 失落的2017

2017,疾病先后夺去了我父亲和祖父的生命,整个家庭乃至整个家族都被巨大的阴霾所笼罩。我不清楚我和我的家人究竟是如何熬过这一年的,但在2018新年钟声敲响的那一刻,所有人都满怀希望,祈祷新的生活,美好的生活。

2. 万蛊蚀心

2018.02


阿里云Kubernetes实战1--集群搭建与服务暴露

前言:

考虑到公司持续集成与docker容器技术实施已有一段时间,取得了不错的效果,但对于设备运维、系统隔离、设备利用率和扩展性还有待提升,综合目前比较成熟的微服务技术,打算把现有业务迁移到K8S集群。

由于公司所有业务均部署在阿里云上,最开始就调研了阿里云自己提供的Kubernetes集群,但后来还是放弃了,主要考虑几方面:

  • 阿里云K8S集群尚不成熟,使用的版本也相对较老,不能及时更新版本
  • 阿里云K8S集群目前只支持多主多从结构,同时限定Master节点只能是3个,不能增减,这对于小型业务或者巨型业务均不适用
  • 自建原生K8S集群更有利于拓展和理解整体结构

接下来会详细介绍在阿里云搭建原生Kubernetes集群的过程。


RabbitMQ 基础介绍

一、什么是RabbitMQ

RabbitMQ是一个消息代理。

RabbitMQ基于AMQP协议用Erlang编写。

什么是AMQP?

  • AMQP(高级消息队列协议)是一个网络协议。它支持符合要求的客户端应用(application)和消息中间件代理(messaging middleware broker)之间进行通信。

持续集成CI实施指南三--jenkins集成测试

前面几篇文章主要讲了jenkins搭建和项目构建相关内容,已经能满足自动编译,自动部署等功能,但还差一项很重要的工作:自动化测试!

作为敏捷开发必不可少的工作,我们需要每次构建后都要跑一遍自动化测试,做全量回归,如果有需要还有冒烟测试。那么下面就来介绍如何实现每次构建项目后自动执行一个自动化测试任务。

一、节点管理

一般来说,测试都基于windows操作系统,比如用selenium编写web项目的自动化测试,用teststack.white编写client项目自动化测试。而我们的jenkins是通过docker容器安装部署的,实际是linux环境,这里就会遇到操作系统不兼容的问题。

事实上,不仅仅是需要测试才会遇到这种情况,如果我们要通过jenkins for docker部署一个.net framework 项目,也是同样的问题。