- 4
- 0
- 约2.35千字
- 约 23页
- 2020-06-20 发布于北京
- 举报
最新整理资料
文档精选合集
基于容器的持续集成平台
建设
郭宏泽
背景介绍
创业公司,运维需求变化快,资源相对有 限。以速度为中心,快速服务,快速响应, 运维可控,降低成本,稳定安全的运维要 求。
为满足公司要求,简化流程,提高效率, 建设以k8s docker,jenkins等开源软件为基础的一套可以自动配置、注册、发布、服务、测试的持续集成容器平台。
业务架构
版本选型
组件
版本
说明
Kubernetes
1.5.2
主程序
Docker
1.12.6
容器
Flannel
0.7.0
网络组件
Etcd
3.1.0
数据库
Kubernetes-Dashboard
1.6.0
界面
Kubedns
1.9
DNS组件
Harbor
0.5.0
私有镜像库
Heapster
1.2.0
监控
使用心得
每三个月发布一个版本
K8s每个版本将会发布三种功能:
① Aplpha功能,预览功能,不稳定。
② Beta功能,测试中的功能,不保证稳定。
③ 正式功能,已经经过测试的稳定功能,不保证
无BUG。
尽可能减少对功能的使用,保持简单。
不要轻易升级你的生产系统。
K8S的设计是面向基础平台,而非用户应用。
平台架构
控制程序
RC管理
class ReplicationController(object):
def init (self):
self.client = HTTPClient(kubeconfig)
def create_replication_controller(self, name, replicas, images):
volume_gfs_name = vol-{}.format(name) host_path_mount = /mnt/{}.format(name)
volumemount = {name: volume_gfs_name, mountPath: /apps} volumemounts = [volumemount]
container_atom = {name: name,
image: images,
ports: [{containerPort: 22}], imagePullPolicy: Always, volumeMounts: volumemounts, dnsPolicy: ClusterFirst, resources: {limits: {cpu: 500m,
memory: 2000Mi}, requests: {cpu: 10m,
memory: ‘100Mi}}}
管理ETCD
class Etcd(object):
def init (self):
space = default
self.etcd_client = etcd.Client(host=, port=4001)
def add_web_app(self, name, namespace, http_port, https_port,
host_ip):
domain = {}.
{}..format(
name, name)
app = devnginx/{}/{}.format(namespace, name)
app_info = {name: name,
http_port: http_port, https_port: https_port, domain: domain, host_ip: host_ip}
self.etcd_client.set(app, json.dumps(app_info))
Gluster
class GFS(object):
def
__init__(self): self.volume =
gfapi.Volume(, gv0)
self.volume.mount()
def create_dir(self, name): self.volume.mkdir(name, 0755) self.volume.umount()
解决DNS问题
K8s的service IP将被kubedns解析为内部负载均衡地址
的解析将由自定义域名服务器
00解析
其它域名将由公网DNS解析(最多设置三个)
域名发现
在etcd中注册了一个新的键devnginx,在控制程序第一次创
建容器时会向etcd发送容器的相关信息,如:
主机的物理IP地址(NodePort),SSH端口,HTTP端口,所用域
名等。这些信息将提供给confd使用。
Confd
从etcd的devnginx/default/ 中读取所有信息,然后通过nginx模
板生成 nginx配置文件,生成新的配置文件后重启nginx。
Nginx
内部DNS将泛域名解析到nginx,然后n
您可能关注的文档
- 行业政策 红利正循序渐进.docx
- 行业政策 红利正循序渐进.pdf
- 行政事业 性国有资产月报.docx
- 河南大学 2019年超星读秀等19个中外.docx
- 湖北中医 药大学教学设计比赛.docx
- 汇智栖岸 名居项目4栋购房登记规则.docx
- 或代其行 事的任何人士可.docx
- 基于深度 学习的关系抽取.docx
- 挤牙膏式 的定向宽松.pdf
- 家用及类 似用途插头插座质量认证规则.docx
- 初中九年级英语Unit 13环境保护主题听说整合教学设计.docx
- 85分式方程及其解法课件人教版数学八年级上册.pptx
- 基于核心素养的博物馆主题说明文写作教学设计与实施——以九年级英语为例.docx
- 53一次函数的意义第课时课件浙教版八年级数学上册.pptx
- 大单元视角下“人民民主政权的巩固”与历史关键能力进阶教学设计——以初中历史中考复习课为例.docx
- 五年级数学下册典型例题解析人教版期末重点攻克.pptx
- 小学四年级信息技术《智启信息时代:查找网上信息的基石》教学设计及反思.docx
- 大疆域·大人口·大战略:中国国家空间认知的初步建构.docx
- 人教版(一年级起点)小学英语四年级上册Revision 1 Lesson 2教学设计.docx
- 大单元结构化复习:旧民主主义革命时期(18401919)的内忧外患与救亡图存.docx
最近下载
- 党员2025年度组织生活会“(对照贯彻党的创新理论方面,对照加强党性锤炼方面,对照联系服务群众方面,对照发挥先锋模范作用方面,对照改作风树新风方面)五个对照”对照检查材料.docx VIP
- 2025年湖南省永州市中考部编人教语文试题及参考答案解析及答案.pdf VIP
- 设备安全危险预知培训课件.pptx VIP
- 2025CWIS指南:肋骨骨折手术稳定PPT课件.pptx VIP
- 神经病学第九版-第二章 神经系统的解剖、生理及病损的定位诊断.pptx VIP
- 广州市五年级上学期语文期末考试试卷.doc VIP
- VTE的预防和护理课件(完整版).pptx VIP
- 陕西省2025年初中学业水平考试物理试卷真题(含答案详解).docx
- 数据中心浸没式液冷系统功能规范.docx VIP
- 测控电路(第5版)李醒飞课后习题答案(含一到五章).pdf
原创力文档

文档评论(0)