Day02-公有云使用指南

Day02-公有云使用指南

七. 负载均衡

  • 公有云中的负载均衡一般都是现成的产品,一般不需要我们关注产品的底层实现。

7.1 clb-alb概述

  • slb(clb)+alb
  • ecs*2 keepalived 需要vip (原来havip)
  • CLB -VS - ALB
类型 传统型负载均衡CLB 应用型负载均衡ALB
产品定位 强大的四层处理和七层能力面向TCP、UDP、HTTP和HTTPS等协议主要面向网络交付 强大的七层处理能力与丰富的高级路由功能聚焦HTTP、HTTPS和QUIC应用层协议面向应用交付
产品性能 基于物理机架构单实例5万 QPS 基于NFV虚拟化平台单实例支持100万 QPS弹性能力更强
功能特性 七层基础能力仅支持基于域名或URL转发 基于内容的路由HTTP报头改写、重定向、重写、限速
运维能力 按规格售卖需要预估业务峰值需要用户主动升级规格 自动弹性处理能力随着业务峰值自动伸缩
云原生集成 支持较弱 云原生Ingress网关流量拆分、镜像、灰度发布、蓝绿测试
典型应用场景 网站、系统四层流量分发高可靠场景大并发高性能网络分流场景同城双活、跨地域容灾场景 互联网应用七层高性能自动弹性场景音视频应用大流量低时延场景云原生应用金丝雀蓝绿发布场景

7.2 CLB(SLB)

主机名 ngx 1.20
ecs01 ip/lidao.html oldboyedu.com ecs01
ecs02 ip/lidao.html oldboyedu.com ecs02

案例08:slb负载均衡基本使用

  • 部署ngx,并修改首页文件内容(用于区分2台web)

  • 环境准备

bash 复制代码
[root@ecs001 ~]# yum install nginx -y
[root@ecs001 ~]# systemctl enable --now nginx
[root@ecs001 ~]# echo aliyun.oldboylinux.cn `hostname` >/usr/share/nginx/html/index.html 
[root@ecs001 ~]# curl localhost
aliyun.oldboylinux.cn ecs001
[root@ecs002 ~]# curl localhost
aliyun.oldboylinux.cn ecs002
  • 阿里云控制台搜索负载均衡slb,使用clb创建
  • 创建完成,监听配置向导
  • 打开浏览器测试(公网访问会有缓存,建议使用curl命令)

案例09:实现动静分离 (根据uri进行转发)

访问的资源 访问案例 哪个节点处理
静态 /static/ ecs01
动态(默认) 其他所有 ecs02
  • 环境准备
bash 复制代码
#ecs01
mkdir -p /usr/share/nginx/html/static/
cd /usr/share/nginx/html/static/
echo oldboy css static |tee css{01..10}.css
echo oldboy js static |tee js{01..10}.js

#ecs 02 
cd /usr/share/nginx/html/
echo oldboy html default |tee oldboy{01..10}.html
  • 配置clb规则
  • 配置转发规则
  • 公有云架构-slb案例-根据url进行转发

clb小结

  • clb(原slb),7层和4层
  • 7层功能只限对于域名转发和uri转发(location规则)
  • 如果是更加复杂的转发规律,需要自建负载均衡或使用alb

7.3 ALB

  • alb应用负载均衡,对传统负载均衡的7层功能的扩展与加强
  • alb只能用于7层.
  • alb (Application Load Balancer) 应用型负载均衡 7层
  • clb( Classic Load Balancer) 传统负载均衡(slb )

案例10:根据客户端进行转发

客户端类型 转发 节点
谷歌浏览器Chrome 转发到pc端,默认 ecs01
Android 转发到移动端 ecs02
bash 复制代码
if ( $http_user_agent ~* "Chrome" ) {
    proxy_pass http://pc;
    }
if ( $http_user_agent ~* "Android" ) {
    proxy_pass http://mobile;
    }
    
    
#ecs01
echo pc_default >/usr/share/nginx/html/index.html
#ecs02
echo mobile >/usr/share/nginx/html/index.html
  • 应用场景:

    • clb无法满足你(uri或域名转发)

    • 获取报头内容的时候:

    • 请求报头:

      • 根据用户(请求报头)浏览器类型http_user_agent或语言进行转发

      • 流量镜像: 使用用户真实数据压力测试网站(服务器) 二次过滤处理.

  • 实现灰度发布:代码上线,根据uri让用户访问新旧的应用
  • 响应报文头部: 根据特有字段进行判断与转发

  • alb 使用流程

    • 创建alb实例
    • 创建服务器组并添加服务器 (upstream 添加server )
    • 创建alb监听
    • 配置转发规则(配置nginx location 实现proxy_pass )
    • 测试与检查
    • cname配置
  • 第一次使用会提示 进行授权
  • 创建完成
  • 创建服务器组
  • 编辑
  • 添加后端服务器
  • 修改端口
  • 创建监听
  • 配置端口
  • 配置转发规则
bash 复制代码
[root@ecs001 nginx]# curl alb-4pmzmdpp1wwksyeulr.cn-hangzhou.alb.aliyuncs.com
pc_default
[root@ecs001 nginx]# curl -H User-Agent:Android alb-4pmzmdpp1wwksyeulr.cn-hangzhou.alb.aliyuncs.com
mobile
[root@ecs001 nginx]# curl -A Android alb-4pmzmdpp1wwksyeulr.cn-hangzhou.alb.aliyuncs.com
mobile
[root@ecs001 nginx]# curl -A "www web broswer/Android" alb-4pmzmdpp1wwksyeulr.cn-hangzhou.alb.aliyuncs.com
mobile
[root@ecs001 nginx]# curl -A "www web broswer/android" alb-4pmzmdpp1wwksyeulr.cn-hangzhou.alb.aliyuncs.com
mobile

alb小结

  • 应用场景:

    • 流量镜像
    • 根据域名/uri/ 请求/响应报头进行转发 (客户端浏览器,语言)
    • 其他...
  • 一个转发规则必须包含有一条转发、重定向或返回固定响应类型的转发动作。

    • 请求方向的条件包括:域名、路径、HTTP标头、查询字符串、HTTP请求方法、cookie和Sourcelp,
    • 请求方向的动作包括:转发至、重定向至、返回固定响应、重写、写入Header、删除Header、限速和流量镜像至。
    • 响应方向的条件包括:响应中的状态码和响应中的标头。
    • 响应方向的动作包括:写入Header和删除Header。

八. 域名及DNS

8.1 域名使用流程

  • 购买 (阿里云(万网),腾讯云,godaddy)
  • 实名认证
  • 搭建网站-ecs
  • 域名备案:域名与ecs绑定,在国家记录在案
  • 配置cdn加速...
  • ICP备案:网站上面有金钱交易

8.2 DNS(云解析DNS)

  • 注意:配置DNS解析,在哪里买的域名就在哪里配置

  • 域名解析到ip/域名

  • DNS如何对应ip或其他内容:DNS记录类型

DNS记录类型 说明
A记录 ipv4 域名--->ip www.oldboylinux.com ---> 8.8.8.8
AAAA记录 ipv6 解析
CNAME 别名记录,www.oldboylinux.com ----> www.cdn.oldboylinux.com (CDN常用,ALB)
MX记录 配置邮箱企业邮箱 @qq.com @163.com @oldboyedu.com @baidu.com
TXT记录 文本,用于验证域名所有者是否是你的

curl test.oldboylinux.com ---> zhegewangzhanshinide-lidao996

bash 复制代码
[root@ecs001 ~]# yum install bind-utils

#测试A记录
[root@oldboy-ecs002 ~]# dig www.oldboylinux.cn 
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.13 <<>> www.oldboylinux.cn
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 23519
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;www.oldboylinux.cn. IN A

;; ANSWER SECTION:
www.oldboylinux.cn. 503 IN A 47.96.139.14

;; Query time: 0 msec
;; SERVER: 100.100.2.136#53(100.100.2.136)
;; WHEN: Mon Mar 13 15:52:21 CST 2023
;; MSG SIZE rcvd: 52

#测试cname记录
[root@oldboy-ecs002 ~]# dig jd.oldboylinux.cn
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.13 <<>> jd.oldboylinux.cn
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 47655
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;jd.oldboylinux.cn. IN A

;; AUTHORITY SECTION:
oldboylinux.cn. 80 IN SOA dns15.hichina.com. hostmaster.hichina.com. 2022052002 3600 1200 86400 600

;; Query time: 0 msec
;; SERVER: 100.100.2.136#53(100.100.2.136)
;; WHEN: Mon Mar 13 15:52:27 CST 2023
;; MSG SIZE rcvd: 99

#测试txt记录
[root@oldboy-ecs002 ~]# dig txt check.oldboylinux.cn 
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.13 <<>> txt check.oldboylinux.cn
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 38608
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;check.oldboylinux.cn. IN TXT

;; ANSWER SECTION:
check.oldboylinux.cn. 333 IN TXT "oldboylinuxlidao996"

;; Query time: 5 msec
;; SERVER: 100.100.2.136#53(100.100.2.136)
;; WHEN: Mon Mar 13 15:52:57 CST 2023
;; MSG SIZE rcvd: 70

8.3 小结

  • 域名使用流程

  • 最常用的DNS记录类型:

    • A记录,最常用的记录之一,域名-->ip
    • CNAME记录,别名记录,一般用于CDN
    • TXT记录,域名-->字符串,一般用于域名验证
    • MX记录,一般用于配置企业邮箱,跟随配置要求进行设置即可
  • DNS术语:记录类型,主机记录,ttl(Time To Live 缓存,生效)

  • 测试与检查:dig a/cname/txt 域名

  • 如果只是想替代/etc/hosts做局域网解析,使用内网dns服务器

bash 复制代码
dig
host
nslookup

九. https

  • SSL证书

案例11 负载均衡绑定证书

案例12-配置 http -->https

  • 小结:
    • 免费证书,创建,申请
    • 部署,clb/alb,cdn 部署web(下载 )

今日总结

  • clb核心掌握基础配置,基于url转发
  • alb掌握:alb vs clb区别
  • DNS解析:DNS记录类型与配置使用
  • https 负载均衡80-->443
相关推荐
为什么每天的风都这么大1 小时前
Vscode/Code-server无网环境安装通义灵码
ide·vscode·阿里云·编辑器·ai编程·code-server
007php0074 小时前
GoZero 上传文件File到阿里云 OSS 报错及优化方案
服务器·开发语言·数据库·python·阿里云·架构·golang
hotlinhao1 天前
阿里云IIS虚拟主机部署ssl证书
阿里云·云计算·ssl
daizikui1 天前
docker使用阿里云容器镜像服务下载公共镜像
阿里云·docker·容器
天草二十六_简村人1 天前
Java语言编程,通过阿里云mongo数据库监控实现数据库的连接池优化
java·jvm·数据库·mongodb·阿里云·微服务·云计算
tundra381 天前
DTH11传感器温度湿度+esp8266+阿里云+小程序
阿里云·小程序·云计算
联蔚盘云2 天前
阿里云 DevOps 资源安全扫描实践
安全·阿里云·devops
广东航连科技2 天前
RFID手持终端的国内外参数标准
大数据·网络·人工智能·物联网·安全·阿里云·交通物流
天草二十六_简村人2 天前
kubepi管理k8s集群,演示如何连接阿里云k8s容器
运维·阿里云·云原生·容器·kubernetes·云计算
九河云2 天前
阿里云轻量应用服务器可以用在哪些场景呢
服务器·阿里云·云计算