17年到现在,团队在阿里云和腾讯云之间切换了几回(各种原因),现对于使用过的产品做下梳理;
阿里云
网络与CDN - 负载均衡
文档
TIPS
- 计费 | 可用区(单|多)
云服务器 - ECS
文档
Basic
- Elastic Compute Service
- 基于虚拟化资源池
- 多线BGP
- border gateway protocol 边界网关协议 - 配置在路由上
- 三网(跨运营商)
- 解决不同网络之间的差异
- 动态|静态BGP - https://developer.aliyun.com/article/179417
- 专线
创建
- 地域 - 可用区
- “不同地域的实例之间内网互不相通;选择靠近您客户的地域,可降低网络时延、提高您客户的访问速度”
- 用户所在地
- 相关别的产品也买在相同可用区
- 数据备份,冗余,异地多活
控制台Tips
- APP|Web
- Web全功能,也在不断改进体验 - console域下
- 善用站点提供的搜索功能
- 公司账号 - 费用和工单 - 按量计费|包年包月
- 腾讯云我们是比较大的用户,会有专门的客服QQ群,回复还是非常及时的(不同支持时效收费也不一样,和每年消费的额度到达某个额度也相关,各部分服务的折扣也和消费额度相关)
ECS节点选择
- 目标用户所在地
- 购买的各种服务之间注意关系
- 数据冗余
选型
- 公网带宽(注意根据需求计算)
- 会本身有类型分类,根据指引选择 - 个人
- 企业有定制的
VPC
- 经典网络 - 所有ECS直接建立在传统网络层之上
- VPC - 加入逻辑隔离私有网络 - 安全性提升
- VPC - natGateway|Router|Switch - 自定义
- 企业网络 - 需要接入专线到XX云机房 - VPC提供了可能
EIP
- eth0 内网IP eth1 公网IP
- 弹性公网IP | ECS公网IP - 和实例绑定在一起的
- 弹性公网IP - 支持在ECS上面弹性绑定和解绑
- ECS | EIP - 关系
- 弹性公网IP支持的协议 - TCP|UDP|ICMP
ECS弹性网卡
- 随时可以实现分离的虚拟网卡
- vCPU >= 4
- 适合搭建高可用集群
- 低成本故障转移
- 精细化网络管理
- 不同配置支持的可增加的弹性网卡的数量不一样
NAT网关
- 公司采用的就是这种
- 具体可见腾讯云文档
- 不用每一个服务器,绑定一个vpc公网;通过统一得公网地址做限制策略,便于管理,也比每一个公网地址绑定省钱
ECS配置
- 密钥对 | 密码
- 密钥对生成 - ssh-keygen - 公钥配置到服务器
- 登录 ssh -i ~/.ssh/id_rsa root@xxx.xxx.xxx.xxx
- 如果ssh登录有问题,可以通过远程连接
ECS快照
- 手动 | 自动
- 增量快照机制(第一次快照全量,后续增量)
- 快照会影响磁盘I/O - 所以处理场景和时机要把握好
- 自动快照执行前清理不必要数据 - 定时任务清理日志等
- 快照OSS资源包 - 容量选择 - 看下Used大小
- 备份周期
ECS镜像
- 镜像源快速生成ECS实例
- 创建自定义镜像
- 快照可以生成自定义镜像
腾讯云
NAT
Tengine
- 配置nginx的时候走这个
- http://tengine.taobao.org/
SLB
- 负载均衡
- 访问流量-转发策略-后台服务器
- 承载高并发,提高性能,高可靠性,后端服务冗灾
- 内网的负载均衡一般没啥费用
- 多可用区|单可用区
LB - 轮询协议
- 前端协议[端口] + 后端协议[端口]
- 轮询|加权轮询|加权+最小连接数
- 会话保持-基于ip (按照源ip,分配给对应服务器) | 用户登录等场景
- TCP协议 - 会话保持 - 基于ip
- HTTP协议 - 会话保持 - 基于Cookie
配置
- 基本配置
- 健康检查配置
1
2
3
4
5
6
7
8
9健康检查
- 基于TCP
- 基于HTTP
仅七层监听器(HTTP/HTTPS)支持配置访问日志(Access Log),四层监听器(TCP/UDP/TCP SSL)不支持
腾讯云监听器(https://cloud.tencent.com/document/product/214/1255)
监听器的配置规则如下:
在同一个负载均衡中,一个负载均衡端口只能对应一种协议,
支持 HTTP、UDP、TCP、HTTPS 协议,内网型只支持 UDP、TCP 协议,
当创建 HTTPS 协议监听器时,不支持批量创建。
主备服务器组
虚拟服务器组
弹性伸缩
- 自动调整弹性计算资源的大小,满足业务需求的变化
- LB + 云监控(自动控制资源数)
feature
- 自动化资源配置
- 性能问题还是要先看性能瓶颈在哪儿
- 模式 - 定时模式|动态模式-基于云监控性能指标 | 固定数量模式 | 自定义模式 | 健康模式 | 多模并行模式
- 自定义模式 - 自己监控平台
- 开通服务 - 创建伸缩组 - 设置触发任务
伸缩组
- 配置 - 最大,最小实例数
任务管理
- 定时任务|
GRE隧道
Basic
- Generic Routing Encapsulation 通用路由封装
- 把两个不同的VPC网络通过建立一条虚拟隧道的方式连接到一起
- 本质上还是通过公网连接的
1
2https://www.sdnlab.com/gre-tunnel-experiment/
GRE(通用路由协议封装)是由Cisco和Net-smiths等公司于1994年提交给IETF的,标号为RFC1701和RFC1702。GRE规定了如何用一种网络协议去封装另一种网络协议的方法。GRE的隧道由两端的源IP地址和目的IP地址来定义,允许用户使用IP包封装IP、IPX、AppleTalk包,并支持全部的路由协议(如RIP2、OSPF等)。通过GRE,用户可以利用公共IP网络连接IPX网络、AppleTalk网络,还可以使用保留地址进行网络互连,或者对公网隐藏企业网的IP地址。 ip r
查看本机路由表ip route add|del
ip tunnel add
- 新建隧道ip link set xxx up
- GRE报文封装 - GRE报文解开
- 网段配置规划
1
2
310.0.0.0/8
172.16.0.0/12
192.168.0.0/161
2lsmod | grep ip_gre
modprobe ip_gre
云架构
- ECS + RDS + Memcached 基础架构
- ECS + 云盘 -> 云存储storage(oss)
- 入口 -> (不同节点分流(DNS -> 根据不同地区的用户打到不同节点)+ CDN)
- 高并发 - 冗灾 && 负载均衡 + 数据库-读写分离 + memcached集群
- 多VPC - 不同地域之间 - 阿里云VPC专线
- 混合云 - 安全性|可控性|可弹性 - IDC托管 + 公有云服务的优势