项目十三 运维工具--工单系统
宝企通IT服务作为智能化工单系统龙头,拥有多年优化SLA经验,能够有效提高员工对IT的服务满意度。是一款支持SAAS、本地化部署、源码交付的运维工单系统(SAAS免费试用,企业微信--工作台--添加应用,搜索“IT服务”,排名第一的就是,或添加顾问:添加我为微信好友)。目前是全网众多企业选择的工单类产品,支持手机验证码或账号验证,员工自助修改域账号密码,具备智能化派单模式工程师响应快减少员工等待时间。自定义知识库可提升工程师专业技能水平,帮助工程师迅速判断员工问题,极大提升员工报单体验。系统还能够大幅提升职能部门可以服务的用户数,有效降低专业人力成本开支,提高业务执行效率,展现工作成果。产品服务好能为用户免费开发个性化需求,连续多年被魔力象0评为leaders位置,市场占有率爆发式增长,特别是最近在搞活动,性价比非常高。
项目十四: docker swarm 集群
微服务项目 docker swarm 集群的部署与应用
需求分析:
公司项目转为微服务架构开发,项目各功能点都拆分为微服务,因此
众多项目微服务的部署与通信采用单机 docker 容器管理,测试环境
下微服务可在同一台测试机部署,但对于线上则需要考虑到服务的稳
定高效及请求数量的支撑与处理,因为急需要一套可用的微服务编排
调度管理方案,考虑到运维成本及目前项目不多的特性,选用
docker-swarm 作为项目初期容器编排调度方案。
解决方案:
1、部署支撑项目初期的 docker-swarm 集群,采用 5 台服务器,一
台作为 swarm-manager,其余 4 台作为
swarm-worker 节点。
2、部署设计集群网络采用 flannel+etcd 作为集群跨主机网络。
3、编写项目所需的编排调度文件,采用 docker-stack 将相关的微服
务根据依赖性编排 service 进行批量部署
4 、为项目诸多微服务的部署上线设计 CICD 架 构
(gitlab+dockerharbor+jenkins+swarm-manager)完成代码在
测试集群及线上集群的自动化及半自动化集成交付及部署。
5、日常的集群维护及集群应用项目的维护。项目十五:k8s 集群
需求分析:
随着 devops 的发展及完善,过去应用开发及部署应用的方式,是将
应用在一个使用操作系统软件包管理器的主机上。这样做的缺点是应
用程序的可执行文件、配置、库和生命周期互相影响,也会和操作系
统纠缠不清。为了支撑敏捷开发、精益开发的理念,公司采用微服务
架构开发项目,因此需要将诸多传统方式的项目转换为微服务架构,
需要一套强大的容器编排调度系统,故公司采用当下最青睐的
kubernetes 编排调度系统。
解决方案:
1、测试环境及生产环境都采用 k8s 集群作为应用编排调度部署系统。
2、测试环境采用 6 台云服务器搭建 k8s 测试集群(双 master、单
台 etcd、其余 node 节点)
3、设计部署集群的网络环境,采用 flannel 作为集群的跨主机网络。
4、生产环境采用 20 台云服务器搭建 k8s 生产集群(双 master、3
台台 etcd、其余 node 节点)
5、负责各项目相关微服务编排调度部署的不同资源文件编写和测试
使用。
6、负责梳理集群不同项目的配置管理、端口、持久化存储、负载均
衡域名等配置的标准化管理及资源文件编辑、管理。
7、负责集群日常的节点增减、各应用容器副本数量的管理及维护。
8、负责集群日志收集 ELK、集群监控 prometheus 的维护和管理。项目十六:NFS 集群升级
NFS 集群升级改造
需求分析:
1、 原共享存储服务器 NFS 的方式、存在性能瓶颈和单点故障的问
题
2、 主 NFS 存储系统宕机后,报警管理员来人为手工根据同步的日志
记录选择最快的 NFS 存储系统改为主,方案简单可行,但是需要人工
处理.难免操作失误或者时间过长。
解决方案:
1、 使用分布式文件存储管理系统 MFS 替换 NFS
2、 目前 MFS 元数据服务器存在单点问题,因此我们通过 DRBD 提
供磁盘及时同步,通过 HeartBeat 提供 Failover,来达到高可用
3、采用 MFS+DRBD+Heartbeat 高可用服务解决方案,这个解决方
案可以有效解决主 MFS 存储系统单点的问题,当主 MFS 存储宕机
后,可以实现把主 MFS 存储系统从一个主节点切换到另外一个备节
点,而新的主 MFS 存储系统还会自动和所有其他的从 MFS 存储系
统进行同步,且新主 MFS 存储系统的数据和宕机瞬间的主 MFS 存
储系统几乎完全一致,这个切换过程完全是自动进行的,从而实现了
MFS 存储系统的热备方案. 快速故障恢复,提高业务可靠性. 职责 本
人在此项目中主要负责,项目现场协调,所有服务器服务平台的搭建,
编写了 shell 脚本,使得服务器部署更加标准化项目十七:mysql 高可用
MySQL 集群读写分离及高可用方案
需求分析:
1、 新方案保证服务性能和 I/O 满足企业多台终端的快速响应需求。
2、 保证系统长期不间断的稳定运行。保证成本合理性。
3、 满足数据库系统的高可用性和可靠性。
解决方案:
1、 底层 5 台 MySQL 数据库,一主四从. 开启半同步复制.提高数
据安全
2、 使用中间件 Atlas 实现读写分离与读负载均衡,提高与程序端解
耦。
3、 在使用两台服务器搭建 LVS+Keepalived 对 Atlas 服务器做负
载均衡与高可用
4、 搭建一台主 MHA 服务器管理数据库主库热备问题.
5、 该方案极大减少服务器资源浪费,实现故障 30 秒切换,极大保
证数据库一致性 责任描述: 主要负责所有服务器服务平台的搭建,
方案设计,编写脚本。
项目十八:NFS+DRBD 高可用
NFS+DRBD+heartbeat 高可用解决方案
软件环境:Centos6.8
硬件环境:DELL R710项目描述:
刚进公司不久,后端的 NFS 服务器在网络请求的高峰期,偶尔会宕
机,使WEB服务器的挂载请求无法自动切换到备份服务器,导致 web
服务器无法正常使用,造成网络服务中止。公司领导为了避免以后出
现类似的情况要求我做一个解决方案。通过对 NFS 服务器 CPU 和内
存的负载情况进行观察,以及对 NFS 服务器之前的主要硬件的负载
数 据 进 行 查 询 , 并 进 行 仔 细 分 析 , 我 提 交 了 一 份 以
DRBD+heartbeat+NFS 的方案来解决现有问题,得到领导的批准由
我来实施这个方案。
职责:
1、负责项目的整体规划和部署;
2、负责 heartbeat 自动切换脚本的编写;
3、负责 NFS 服务搭架的主要框架的搭架;
4、通过对故障的模拟,和对元数据服务器、数据存储服务器运行数
据的观察,和之前的情况进行数据比较,形成报告;
5、项目实施报告的撰写。 后期改善: 通过配置多条独立的物理连
接,以避免 Heartbeat 通信线路本身存在的单点故障,尽量地减少
“脑裂”的发生机会。通过对 ha.cf 配置文件中,keepalive 等选项
的设置,来缩短主从服务器的切换时间。在 DRBD 中,对 replication
进程进行调整。处理 Master 端的坏块问题。项目十九:移动端与 PC 分离部署
移动端部署调优及上线
运行环境:CentOS-6.6、DELL R730
主要功能:分离移动端与 PC 业务
运用技术:Nginx 七层负载、tomcat8+jdk1.8、MHA 实现 mysql
高可用(mysql–5.6.17)、 php-5.6.30、shell 脚本发送数据检测信息
技术要点:
利用 Nginx 七层调度实现 PC 端与移动端业务分离、动静分离 七层
调度+Keepalived 高可用方案 Nginx 整合淘宝健康检测模块 代码
读写分离+数据库 mha 成熟高可用方案 定时+脚本 mysql 数据备份
及检测、发送检测结果信息到管理员手机、web 服务优化,php 优
化,tomcat 优化