高可靠设计,Etcd 集群,Kubernetes 三主节点,保证集群的高可用性。

基于 GlusterFS /nfs集群,在生产环境和非生产环境下提供存储卷服务。
Flannel+VXLAN,提供可靠的网络服务。
提供分布式监控和统一日志中心,全方位的应用监管能力。
支持 Redis/ZooKeeper 等常用中间件的集群编排方案。
通用组件服务,提供快速构建企业级应用的能力。
在该架构中,我们可以将其分为四层,如下:
 
用户层:即普通用户。
服务访问层:基于gorouter和haproxy服务发现、负载均衡和路由分发等。
应用中间件层:提供基于redis/zk等常见中间件给业务使用。
业务应用层:即基于Kubernetes平台构建和运行企业业务应用,如CI/CD持续集成、微服务项目、监控告警和日志管理、私有镜像仓库等服务。
基础设施层:即laas层支撑的由Kubernetes容器管理平台和GlusterFS数据持久化存储等系统组成的基础平台。
 
 
基础设施层
Kubernetes平台
部署管理:Kubernetes平台都是在阿里云云、和各自私有云之上自己建设维护的。
网络通信:在容器和容器之间、容器和主机网络方面,可以使用Calico或Flannel等方案,我们使用的Flannel。
HA高可用:Kubernetes节点分为Master和Node两种类型节点,前者负责运行集群相关的控制管理服务,而后者负责运行Pod容器。在多Node节点模式下,由于Kubernetes Pod具有天然的容灾冗余HA高可用实现,因此,我们并不需要关心Node节点的HA高可用,而只需关心Master节点的HA即可,Master节点的HA高可用,通过多Master节点+nginx方案实现。从Kubernetes 1.12版本起,kube-proxy服务默认使用ipvs实现,取消了之前的iptables。这有助于提升K8s大规模集群环境下的性能和稳定性。
Docker和操作系统优化:在生产环境中,Docker和操作系统版本应当使用较新的release版本。并且,主机操作系统应当做一定程度的优化配置。
GlusterFS/NFS数据存储
Kubernetes平台的数据持久化存储,可以使用GlusterFS、NFS等存储方案。其中,GlusterFS适用于有其技术背景或大容量存储需求的公司;而NFS适用于存储容量需求相对较小,无专业存储技术背景的公司。
 
业务应用层
镜像管理:使用Harbor私有镜像仓库服务。
日志管理:使用Elasticsearch、Filebeat + 自研界面。
监控告警管理:使用open-falcon +自研、也使用了Prometheus + 自研等技术栈。
微服务架构:使用Service Mesh服务网格中的Istio方案,主要是灰度发布方面。
Devops:自研流水线集成pass平台;
应用类型:无状态类服务使用deployment,有状态类服务则使用Statefulset,pass使用helm。
规划好Namespace:根据项目-环境指定namespace,统一管理诸如监控告警和日志管理方面的pod、service、pvc等资源。这样,可以较为方便的管理和区分K8s上的各种应用。
应用中间件层
对于有状态应用,线上环境只上了redis,zk,mq等等常见中间件,由于数据库需要较强的稳定性和可靠性,暂时未使用。
 
中间件上容器后,在pass上即可进行增删,便于服务管理维护,也避免了应用交付周期变长。
 
服务访问层
中间件上容器便于维护扩容管理。
整个数据流走向如下图,负载均衡和路由规则、域名分发使用gorouter和haproxy实现,gorouter简单说就是一个路由器,haproxy是负载均衡。此外,gorouter和haproxy实现HA高可用,可以想象在K8s集群中,大量的出入口流量都进过gorouter和haproxy,其负载是非常大的,其重要程度不言而喻,因此实现HA就非常重要。我们一般部署至少在2个节点以上。
 

k8s的paas平台的更多相关文章

  1. 移动App开发需要更多的PaaS平台而不是IaaS

    时代的变迁,创业的大潮,越来越多的人关注了有点开发,越来越多的人了解了互联网服务术语:PaaS.IaaS.SaaS.BaaS等.今天大家在开发App的时候这么多复杂的云服务如何来选择呢? IaaS服务 ...

  2. Windows Azure Cloud Service (39) 如何将现有Web应用迁移到Azure PaaS平台

    <Windows Azure Platform 系列文章目录> 本文将简单介绍,如何将企业内现有的ASP.NET应用程序迁移到Azure PaaS平台. 因为在迁移过程中,可能需要对现有的 ...

  3. PAAS平台构建7×24小时高可用应用的方案设计

    本博客迁移到部署在jae上的独立博客系统wordpress,博客地址:点击打开独立博客.欢迎大家一起来讨论IT技术. 现在很多企业都在搭建自己的私有PAAS平台,当然也有很多大型互联网公司搭建共有PA ...

  4. PAAS平台的web应用性能测试与分析

    引言 为什么我会写这一篇博客,因为最近很多京东云擎jae的用户反应一个问题就是他们部署在jae上面的应用访问很慢,有极少数应用甚至经常出现504超时现象,当然大家首先想到的是jae性能太差,这也是人之 ...

  5. 云计算PAAS平台测试设计之镜像管理

    下面是云计算PAAS平台页面概览: 今天我们要讲的是镜像管理页面的测试设计: 可以看到,这个页面主要有增删改查四个功能. 1. 查询镜像 (1)易用性:查看镜像查询界面,界面上各组件设计合理.美观.易 ...

  6. 搜狐云景paas平台实践之路

    前言: 搜狐云景作为搜狐的paas平台,在2014年5月22日的云计算大会上正式发布了公测.初测,注册用户必须先申请邀请码参与公测会赠送用户100元电子券,经过实名认证之后会再赠送100电子券,目测可 ...

  7. PAAS平台7&#215;24小时可用性应用设计

    如今非常多企业都在搭建自己的私有PAAS平台,当然也有非常多大型互联网公司搭建共同拥有PAAS平台(比如SAE/BAE/JAE(jae.jd.com)).那么使用PAAS平台来部署SAAS应用有哪些优 ...

  8. PaaS平台的尴尬与变革

    当今时代只要提到云计算这个词语,一定会提到云计算分为IaaS.PaaS.SaaS 这三个层面,现阶段云环境中IaaS和SaaS都实现了商品化.但是,PaaS作为云计算的服务模式之一,既不像IaaS那样 ...

  9. 企业级分布式应用服务EDAS _Dubbo商业版_微服务PaaS平台 【EDAS Serverless 运维 创业】

    企业级分布式应用服务EDAS _Dubbo商业版_微服务PaaS平台_分布式框架 - 阿里云https://www.aliyun.com/product/edas?source_type=yqzb_e ...

随机推荐

  1. python 爬虫实例(一)

    一个简单的爬虫工程 环境: OS:Window10 python:3.7 安装一些库文件 pip install requests pip install beautifulsoup4 pip ins ...

  2. 100天搞定机器学习|day54 聚类系列:层次聚类原理及案例

    几张GIF理解K-均值聚类原理 k均值聚类数学推导与python实现 前文说了k均值聚类,他是基于中心的聚类方法,通过迭代将样本分到k个类中,使每个样本与其所属类的中心或均值最近. 今天我们看一下无监 ...

  3. Python——成员变量

    一.类变量 在类命名空间内定义的变量就属于类变量,python允许使用类来修改.读取类变量. 例: class a: b = '我是类变量' def c(self): print (a.b) # 通过 ...

  4. PAT(B) 1089 狼人杀-简单版(Java)逻辑推理

    题目链接:1089 狼人杀-简单版 (20 point(s)) 题目描述 以下文字摘自<灵机一动·好玩的数学>:"狼人杀"游戏分为狼人.好人两大阵营.在一局" ...

  5. PB笔记之验证必填(pfc_validation)

    pfc_validation事件中可以在保存时进行提示

  6. X64驱动:内核操作进线程/模块

    注意:下面的所有案例必须使用.C结尾的文件,且必须在链接选项中加入 /INTEGRITYCHECK 选项,否则编译根本无法通过(整合修正,Win10可编译,须在测试模式下进行),内核代码相对固定,如果 ...

  7. 在论坛中出现的比较难的sql问题:22(触发器专题3)

    原文:在论坛中出现的比较难的sql问题:22(触发器专题3) 最近,在论坛中,遇到了不少比较难的sql问题,虽然自己都能解决,但发现过几天后,就记不起来了,也忘记解决的方法了. 所以,觉得有必要记录下 ...

  8. Java内存模型之分析volatile

    前篇博客[死磕Java并发]—–深入分析volatile的实现原理 中已经阐述了volatile的特性了: volatile可见性:对一个volatile的读,总可以看到对这个变量最终的写: vola ...

  9. html+css+javascript网页制作技巧总结1

    (一)div.元素居中中显示方法: 1.宽度要有实际值或百分比值 2.margin:0px auto; 文本内容居中显示的方法: 1.text-align:center; 2.line-height: ...

  10. ABAP-JCO服务端连接问题

    公司网络服务加域,若SAP服务器后端未配置端口号映射,则外部服务器注册JCO服务监听需要调整 # server jco.server.connection_count=5 jco.server.gwh ...