前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【玩转腾讯云】如何构建云端高可用架构

【玩转腾讯云】如何构建云端高可用架构

原创
作者头像
Vicwan
修改于 2020-04-16 09:36:31
修改于 2020-04-16 09:36:31
4.1K0
举报

一、高可用的挑战

1、高可用挑战-要求

2、高可用挑战-各种不稳定的来源

常见事故及问题归类如下:

二、互联网通用架构和分层

典型互联网架构分层设计如下:

系统正交分解如下:

服务治理目标

技术架构

监控层

外层

客户端SLA 攻防/扫描/审计 CDN合理/稳定 DNS合理/稳定 流量峰值

CDN DNSPOD/Ip直连 高防

客户端监控 CDN监控 DNSPOD监控 安全监控

接入层

异地多活 服务SLA 负载均衡 流量调度 机房切换 限流/降级

F5自动化 GW nginx(etcd+confd)

机房整体监控 服务监控 (响应延时链接 故障)

服务层

分布式架构 定时调度管理 灰度发布  自动化灾备恢复 机房双活 大数据处理 一体化数据研发

应用架构

服务状态(服务响应) 性能监控(DB监控) 后端资源监控 语义监控 调用链分析

数据层

服务监控和性能调节 高并发 水平扩容 快速自动灾备恢复 定期归档备份

分布式数据库 分布式事务 消息组件

服务&业务级监控

资源层 硬件层

满足率 扩容 灾备恢复 资源回收 日志归档 备份 满足率 套餐 烧机 部署 初始化

SDN 无人值守自动安装 硬件生命周期平台

硬件监控 网络监控

三、构建外层高可用

1、外层-DNS高可用方案

•通过Dnspod D监控,线路/机房失效快速失效

•腾讯Httpdns方案,就近接入+多点容灾

•埋入客户端的IP直连方案

2、外层-CDN高可用

  • 腾讯CDN 本身具有高可用监控,节点快速剔除故障节点。
  • HttpDns:客户通过嵌入SDK, 不经过传统 DNS 解析方式来使用 CDN 资源,比如HttpDns。
  • 自建CDN 质量监控,调度系统,自动切换。

3、外层-高防高可用

  • 自动为业务创建防护域名
  • 用户可以用CNAME方式使用防护域名接入高防
  • 防护域名可配置BGP优先解析,在攻击封堵后根据来源IP智能解析到归属线路

四、构建接入层高可用

1、接入层-构建多可用区多活

2、接入层-LB高可用

腾讯云CLB底层是基于TGW,本身具有高可用,具体如下:

  • 多级容灾

跨园区容灾 ->交换机容灾

机架容灾-> TGW集群容灾

  • 防攻击

流量攻击:过载保护

DDOS攻击:syn代理和LRU淘汰

  • 安全性

黑名单、域名封禁

五、构建服务端高可用

1、服务层框架-高可用

2、服务层-高可用思路

  • 服务的整体概览
  • 服务无状态
  • 拆分子服务
  • 通信协议和交互接口
  • 同步/异步
  • 超时管理,自动熔断,
  • 快速切换,慢服务隔离
  • 独立扩展,快速扩容
  • 服务单元条带化

六、数据层高可用

1、CDB-高可用

  • 故障一:数据库节点异常

只读从库、灾备实例数据正常

后台隐藏实例可快速恢复业务

后续动作需要后台新建隐藏从库实例

  • 故障二:可用区异常

主库及只读从库无法访问

手动切换灾备实例为主实例

后续动作需要通过追加故障时间后灾备实例binlog

  • 故障三:异常操作导致数据库受损

主库、只读从库及灾备库数据连续性会导致全部数据受损

存在RTO,短时间无法快速恢复业务

通过备份数据+binlog恢复数据

2、DB Proxy-高可用

通过DB Proxy实现:

  • 单机房快速HA切换
  • 跨机房容灾切换

3、对象存储-高可用

腾讯云对象存储COS提供异地备份功能,可以实现数据的异地备份和恢复。

七、移动端高可用

  • 移动端 HttpDns/IP直连/长链接push推送优化
  • 移动端监控 响应时间/奔溃卡顿/启动时间/功耗/网络质量/CDN监控
  • 移动端报警平台
  • 移动端热修复
  • 故障演练

八、高可用演练验收

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
[Gitlab][docker]自托管代码平台Gitlab | 搭建/使用教程
GIT(必装):Git – Downloading Package (git-scm.com)。装完以后在目标文件夹右键会有Git Bash Here和Git GUI Here两个选项
夜梦星尘
2024/08/20
7960
[Gitlab][docker]自托管代码平台Gitlab | 搭建/使用教程
CI/CD Pipeline之Gitlab部署
GitLab是一个开源版本管理系统,是集代码托管,测试,部署于一体的开源git仓库管理软件,可通过web界面来进行访问公开的或私人项目。与Github类似,GitLab能够浏览代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本,并提供一个文件历史库。是目前非常流行好用的研发版本控制系统。
Power
2025/03/03
1130
ubuntu 安装和配置 GitLab
GitLab 是一个基于 Web 的开源 Git 软件仓库管理器,用 Ruby 编写,包括 wiki,问题管理,代码审查,监控以及持续集成和部署。它使开发人员能够创建,审查和部署他们的项目。
py3study
2020/03/03
12.8K1
Linux运维架构师-企业应用持续集成CICD-09
3、配置 Gitlab 1、查看Gitlab版本 [root@localhost ~]# head -1 /opt/gitlab/version-manifest.txt gitlab-ce 10.1.1 2、Gitlab 配置文登录链接 #设置登录链接 [root@localhost ~]# vim /etc/gitlab/gitlab.rb *** ## GitLab URL ##! URL on which GitLab will be reachable. ##! For more details
用户8639654
2021/07/07
4760
Gitlab安装使用及汉化配置
一、GitLab简介 GitHub是2008年由Ruby on Rails编写而成,与业界闻名的Github类似;但要将代码上传到GitHub上面,而且将项目设为私有还要收费。GitLab 是一个用于
shaonbean
2018/01/02
6.5K0
GitLab的安装部
以centos7为例,准备一台至少内存为4G的机器。 系统版本:CentOS Linux release 7.3.1611 (Core) 软件版本:Gitlab-ce-11.10.1 硬件要求:最低2核4GB,建议4核8GB
没有故事的陈师傅
2020/06/17
1.3K0
gitlab部署
GitLab 是一个用于仓库管理系统的开源项目。使用Git作为代码管理工具,并在此基础上搭建起来的web服务。可通过Web界面进行访问公开的或者私人项目。它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序(Wall)进行交流。它还提供一个代码片段收集功能可以轻松实现代码复用。
星哥玩云
2022/09/15
6680
gitlab部署
gitlab版本升级
day2,从12.10.6升级到12.10.14,然后从12.10.14升级到13.0.14【操作前备份一次】
保持热爱奔赴山海
2022/01/11
2K0
gitlab版本升级
Gitlab安装部署及基础操作
环境说明 系统版本 CentOS 7.2 x86_64(较新版本的gitlab集成了更多功能,顺利运行起来的硬件要求较高,这里给了3G内存) 软件版本 gitlab-ce-10.8.4
仙人技术
2020/04/29
5.5K0
Gitlab环境搭建小计
Gitlab 开源仓库软件包官方地址: https://about.gitlab.com/
owent
2018/08/01
1.2K0
docker gitlab构建镜像
最近在研究流水线,对于我来说,自动构建并上传镜像是非常有必要的,一方面每次都需要执行代码,一方面每次都需要找到版本号,非常的麻烦。 在此,我顺便编写文章,记录gitlab快速搭建以及ci/cd部署。
诺依阁
2025/03/16
1071
docker gitlab构建镜像
如何在 Alma Linux 8 上安装 GitLab?
GitLab 是一款免费的开源 DevOps 软件,它附带多种工具,可在单个应用程序中开发、保护和操作软件。它提供免费的无限存储库和无限的协作者。它主要用于托管 Git 存储库,并具有其他与开发相关的功能,例如问题跟踪。它与 Github 和 Bitbucket 非常相似,允许个人和团队与他人远程共享代码。
网络技术联盟站
2022/04/07
1.5K0
如何在 Alma Linux 8 上安装 GitLab?
私有仓库Gitlab的安装与汉化
清华大学源(gitlab-ce社区版 centos7下载):https://mirror.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/
非著名运维
2022/06/22
8310
私有仓库Gitlab的安装与汉化
试用 GitLab 14 以及中国发行版:极狐
时值 GitLab 14 大版本更新,官方对于这个版本给出了非常高的评价,让我非常好奇,所以为了探究新版本到底有哪些变化,我对 GitLab 社区版、极狐版做了试用对比。
soulteary
2021/07/08
1.5K1
试用 GitLab 14 以及中国发行版:极狐
Docker Compose部署Gitlab
一、配置 gitlab gitlab-ce 开启https # 参考: https://docs.gitlab.com/omnibus/settings/nginx.html#manually-configuring-https external_url 'https://gitlab.example.com' nginx['enable'] = true nginx['redirect_http_to_https'] = true # http重定向到https nginx['redirect_h
YP小站
2020/06/04
1.8K0
用GitLab搭建自己的私有GitHub
Gitlab是一个用Ruby on Rails开发的开源项目管理程序,可以通过WEB界面进行访问公开的或者私人项目。它和Github有类似的功能,能够浏览源代码,管理缺陷和注释。
知忆
2021/06/08
1.3K0
自建代码托管平台-GitLab
GitLab 是由 GitLabInc.开发,使用 MIT 许可证的基于网络的 Git 仓库管理工具,且具有wiki 和 issue 跟踪功能。使用 Git 作为代码管理工具,并在此基础上搭建起来的 web 服务。GitLab 由乌克兰程序员 DmitriyZaporozhets 和 ValerySizov 开发,它使用 Ruby 语言写成。后来,一些部分用 Go 语言重写。截止 2018 年 5 月,该公司约有 290 名团队成员,以及 2000 多名开源贡献者。GitLab 被 IBM,Sony,JülichResearchCenter,NASA,Alibaba,Invincea,O’ReillyMedia,Leibniz-Rechenzentrum(LRZ),CERN,SpaceX 等组织使用。
用户9615083
2022/12/25
1.7K0
Gitlab备份和恢复操作记录
前面已经介绍了Gitlab环境部署记录,这里简单说下Gitlab的备份和恢复操作记录: 1)Gitlab的备份目录路径设置 [root@code-server ~]# vim /etc/gitlab/gitlab.rb gitlab_rails['manage_backup_path'] = true gitlab_rails['backup_path'] = "/data/gitlab/backups" //gitlab备份目录 gitlab_rails['backup_archive_permis
洗尽了浮华
2018/01/23
1.8K0
在Rocky Linux 8.3 RC1上安装GitLab实现代码仓库同步容灾
生产环境:Rocky Linux release 8.3, gitlab-ce-13.9.4-ce
欧巴云
2021/05/17
1.1K0
在Rocky Linux 8.3 RC1上安装GitLab实现代码仓库同步容灾
GitLab安装及使用
GitLab是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。
踏歌行
2020/10/15
7090
GitLab安装及使用
相关推荐
[Gitlab][docker]自托管代码平台Gitlab | 搭建/使用教程
更多 >
LV.0
移动端开发工程师
目录
  • 一、高可用的挑战
    • 1、高可用挑战-要求
    • 2、高可用挑战-各种不稳定的来源
  • 二、互联网通用架构和分层
  • 三、构建外层高可用
    • 1、外层-DNS高可用方案
    • 2、外层-CDN高可用
    • 3、外层-高防高可用
  • 四、构建接入层高可用
    • 1、接入层-构建多可用区多活
    • 2、接入层-LB高可用
  • 五、构建服务端高可用
    • 1、服务层框架-高可用
    • 2、服务层-高可用思路
  • 六、数据层高可用
    • 1、CDB-高可用
    • 2、DB Proxy-高可用
    • 3、对象存储-高可用
  • 七、移动端高可用
  • 八、高可用演练验收
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档