1、redis
1.1 选型
搜索redis:
然后创建,设置好可用区、专有网路、交换机。架构类型:标准版
密码可以稍后设置,设置好实例名:aliyun_redis_5.0
购买成功如下:
点击实例名称,进入:
1.2 设置白名单
点击白名单设置,默认如下:
点击添加白名单分组进行设置:
确定即可。
设置好白名单后,点击实例信息,就会显示专网连接地址:
1.3 连接redis
redis的vpc要与ecs的一样,否则,可能会连接不上。
连接redis
#1、ecs安装redis客户端命令
yum install -y redis
#2、连接redis格式如下:
redis-cli -p 6379 -a 密码 -h redis的实例id
1.5 删除实例
实例列表中找到需要删除的实例–>操作–>释放即可
2、负载均衡-clb
阿里云中的负载均衡有3种:
clb:之前成为slb,传统负载均衡
alb:应用性负载均衡
nlb:网络型负载均衡
2.1 clb-alb概述
slb(clb)+alb
类型 | 传统型负载均衡CLB(SLB) | 应用型负载均衡ALB |
---|---|---|
产品定位 | 强大的四层处理能力,面向TCP、UDP、HTTP和HTTPS等协议,主要面向网络交付(4层+7层) | 强大的七层处理能力与丰富的高级路由功能聚集HTPP、HTTPS和QUIC应用层协议,面向应用交付 |
性能 | 基于物理机架构,单实例5万QPS | 基于NFV虚拟化平台,单实例支持100万QPS弹性能力更强 |
功能特性 | 七层基础能力仅支持基于域名或URL转发 | 基于内容的路由HTTP报文改写、重定向、重写、限速等 |
运维能力 | 按规格售卖,需要预估业务峰值,需要用户主动升级规格 | 自动弹性处理能力,随着业务峰值自动伸缩 |
云原生集成 | 支持较弱 | 云原生ingress网关流量拆分、镜像、灰度发布、蓝绿测试 |
应用场景 | 网站、系统四层流量分发高可靠场景,大并发高性能网站分流场景,同城双活、跨地域容灾场景 | 互联网应用七层高性能自动弹性场景、音视频应用大流量低延时场景、云原生应用、金丝雀、蓝绿发布场景 |
2.1 clb(slb)
1)环境准备
准备2台ecs:aliyun-web01、aliyun-web02
2)web01部署
1、安装nginx,并设置启动、开机启动
[root@aliyun-web01 ~]# yum install -y nginx
[root@aliyun-web01 ~]# systemctl enable nginx
[root@aliyun-web01 ~]# systemctl start nginx
2、创建测试页面
[root@aliyun-web01 ~]# echo "`hostname` `hostname -I` www.test.com" >/usr/share/nginx/html/index.html
3)web02部署
1 克隆web01创建实例
登录阿里云后台,克隆web01
点击左边的”镜像”—>创建自定义镜像
选择实例,填写相关信息,确定即可:
注意:
计费提示创建镜像的同时系统默认会创建相关快照,当前阿里云快照已经商业化,保有镜像会产生一定的快照费用,具体请参见快照计费。
请您在使用linux系统创建自定义镜像时,注意不要在/etc/fstab文件中加载数据盘的信息,否则使用该镜像创建的实例无法启动。
您可以对当前ECS实例做个完整的镜像模板,包含该实例下的所有云盘。该实例的每块云盘会新增一个快照,可以在快照列表中查询。需要等待每块云盘的快照创建完成,镜像才能可以使用,期间不要更改实例状态,如停止或重启实例,请耐心等待。
运行中的实例由于存在缓存数据未落盘的情况,制作出来的镜像数据可能和实例数据不完全一致,推荐关机后制作镜像。
镜像创建完成后,创建实例.
由于web01是在杭州,所以,也要选择杭州。可用区随机即可,或者也可以跟web01一样,选择可用区B。
镜像:自定义镜像
选择分配公网ip、登录使用密钥对
由于web01只设置了秘钥对(当时设置秘钥的名称为:阿里云-杭州)登录,没有设置密码登录,所以也要选择密钥对。
抢占模式设置:无确定时长、自动出价
最后确定,下单即可。购买成功后如下:
名称修改为:aliyun-web02
2 修改主机名
远程连接web02:
修改主机名:
[root@iZbp1iprqym2qqcwz2fw5gZ ~]#hostnamectl set-hostname aliyun-web02
重新登录即可。
由于是通过克隆web01创建的web02,所以web02的nginx服务已启动
[root@aliyun-web02 ~]# systemctl is-active nginx
active
[root@aliyun-web02 ~]#
通过镜像创建实例的问题:
如果web01没有设置好,则必须在web01再配置好之后,再创建web01镜像,再通过镜像创建实例。
因此,在创建镜像之前,要确保模板机所有配置成功。
3 创建测试页
[root@aliyun-web02 ~]# echo "`hostname` `hostname -I` www.test.com" >/usr/share/nginx/html/index.html
4)创建clb(slb)负载均衡
搜索slb:
点击实例管理—->创建传统型负载均衡:
按量付费、可用区:杭州
配置实例名:clb_hangzhou_01,按量付费、实例类型:公网:
下单成功如下:
点击实例管理,如下:
点击:点我开始配置:
进入开始配置页面:
协议:http,端口:80,其他的保持默认
点击下一步:
选择默认服务器组,点击继续添加:
添加web01、web02两台机器,点击下一步:
保持默认,直接点击添加,即可,进入如下界面:
端口:80,点击下一步:
点击健康检查探测,然后进行探测:
提示,没有安装nc。因此,web01、web02安装nc即可
yum install -y nc
安装完成后,再探测,没问题就行。
高级配置保持默认即可
点击下一步
确定信息无误后,点击提交。
配置成功如下:
浏览器打开:负载均衡的ip
OK,负载均衡配置成功。
2.3 配置http跳转https
之前通过nginx的rewrite或return实现跳转。
在clb中如何实现80–>443
第1步:添加443端口
第2步:添加80端口—>443(注意:要重新添加,不能修改已有的)
点击负载均衡实例:
点击监听,进入监听设置页面:
-把原有的80删除。然后:添加监听:
选择https,端口:443
点击下一步:
选择相关证书。注意要提前申请好证书。
此外,还要申请域名。此外,域名还有备案,否则无法解析到公网ip。
由于没有备案的域名,所以无法演示以下操作:
配置好证书后,点击下一步。最后确定即可。
配置好443后,要把已有的80删除,重新配置80跳转443。
目的监听:443
由于没有ssl证书,无法演示完整流程。
2.4 根据url转发案例
在负载均配置后端服务的时候有:虚拟服务器组、默认服务器组、主备服务器组
默认服务器组与虚拟服务器组:
负载均衡服务器组说明 | 默认服务器组 | 虚拟服务器组 |
---|---|---|
共同点 | nginx的upstream分组 | nginx的upstream分组 |
区别1 | 只能有1个 | 可以有多个 |
区别2 | 用户请求来到负载均衡后,没有匹配到任何规则,就会访问默认localtion / {} | 不同的localtion规则与跳转 |
根据用户的域名或uri进行转发(nginx location功能)。
案例需求:
ip访问默认站点
ip/admin/ 访问网站后台
默认组:
admin后台组
要求的效果:
通过ip访问,访问默认组
通过ip/admin/访问,访问管理组
1、环境准备:
web01作为默认组
web02作为admin组,需要创建admin目录与首页文件:
[root@aliyun-web02 ~]# mkdir /usr/share/nginx/html/admin
[root@aliyun-web02 ~]# echo admin test page > /usr/share/nginx/html/admin/index.html
2、创建组:
默认组:只保留web01,把web02移除
虚拟组:
添加虚拟组:添加web02
下一步:端口80
然后创建即可:
3、监听
添加监听
添加80端口,下一步:
先选择默认组:端口80:
然后,下一步:
下一步,提交。
完成如下:
点击,配置转发策略:
URL填写:admin,虚拟服务器组选择admin组,然后,点击添加转发策略即可。如下:
测试:
浏览器打开:47.96.121.161
浏览器打开:47.96.121.161/admin
小结:
规划虚拟组、默认组
创建虚拟组、默认组
添加或配置监听,配置转发规则
测试调试
3、负载均衡-alb
alb:Application Load Balancer,应用型负载均衡
cls:Classic Load Balancer,传统型负载均衡(slb)
用户应用alb后访问流程:
3.1 创建alb
先把之前创建的clb删除(释放),再创建alb
点击释放设置:
再选择立即释放。
alb使用流程:
1、创建alb实例
2、创建服务器组并添加服务器(upstream 添加server)
3、创建alb监听
4、配置转发规则(配置nginx location 实现proxy_pass)
5、测试与检查
6、cname配置
1)创建alb实例
选择alb—>实例—->创建应用型负载均衡:
地域:杭州,网络类型:公网,vpc:使用默认的,可用区:g、j:
ip模式:固定,协议版本:ipv4,功能版本:标准版,计费:按流量计费,实例名:aliyun_alb_01,
然后点击购买、开通即可。
2)创建服务器组
点击实例名称:
进入详细页面,点击创建后端服务器:
如下:
点击创建:
点击添加后端服务器:
点击添加后端服务器:
点击下一步:
端口:80,然后点击确定:
3)创建alb监听
点击实例—>创建监听:
协议:http,端口:80,其他默认,如下:
点击下一步:
选择默认组,点击下一步:
点击提交即可,结果如下:
回到实例详细页面:
有个dns:alb-fywqrgbjj456ogq1yj.cn-hangzhou.alb.aliyuncs.com
浏览器打开:alb-fywqrgbjj456ogq1yj.cn-hangzhou.alb.aliyuncs.com
效果如下:
4)配置转发规则
根据客户端类型进行转发
创建2个分组:默认组、移动端组
在前面中,已经创建了默认组。
环境准备:
假设web02为移动端:首页文件:
[root@aliyun-web02 ~]# echo mobile.test.com > /usr/share/nginx/html/index.html
1)创建分组:
把web02从默认组中移除,再创建移动组把web02添加进入。
默认组:移除web02:
创建移动组:点击服务器组—创建服务器组
如下:
点击创建:然后添加后端服务器:
把web02添加进入,端口:80,如下:
然后,确定即可。
2)配置转发规则
在alb监听部分配置转发规则,点击实例—->实例名称:
进入详细页面,点击监听—>编辑转发规则:
点击请求方向转发规则—->插入新规则
插入新规则:
名称:匹配移动端请求
条件:HTTP标头
键:User-Agent
值:如图所示
转发至移动组
点击确定即可。最终如下:
5)测试
谷歌浏览器打开:alb-fywqrgbjj456ogq1yj.cn-hangzhou.alb.aliyuncs.com
如下:
不管怎么刷新都不会转到web02
按键盘F12键:选择苹果手机,刷新,则跳转到web02(即移动端)
至此,根据客户端浏览器类型进行转发配置成功。
5)alb小结
应用场景:
流量镜像
根据域名/uri/请求/响应报头进行转发(客户端浏览器、语言等)
一个转发规则必须包含一条转发、重定向或返回固定响应类型的转发动作
· 请求方向的条件包括:域名、路径、http标头、http请求方法、cookie和source ip
·请求方向的动作包括:转发至、重定向至、返回固定响应、重写、写入Header、删除Header、限速和流量镜像至
·响应方向的条件包括:响应中的状态码和响应中的标头
·响应方向的动作包括:写入Header、删除Header
6)cname配置
即域名解析。如果没有购买域名,则直接ip访问。
3.2 自建负载均衡
准备2个ecs+tenine/nginx+keepalived
难点在于怎么弄到vip,要申请havip
查看阿里云的帮助文档:
4、域名及DNS
4.1域名使用流程
一般流程有:
1、购买域名(阿里云、腾讯云、godaddy等平台购买)
2、实名认证(个人、企业)
3、搭建网站-ecs云服务器
4、域名备案:域名与ecs绑定,在国家记录在案
网站基本备案
网站ICP备案:经营性备案
5、配置cdn加速
4.2 DNS解析(云解析DNS)
目标:域名解析到ip/域名
DNS记录类型 | 说明 |
---|---|
A记录 | ipv4域名—>ipv4 ip地址 |
AAAA记录 | ipv6解析 |
CNAME | 别名记录。如:www.test.com –> www.cdn.test.com (DNS常用,ALB) |
MX记录 | 配置邮箱,企业邮箱 |
TXT记录 | 文本(用于验证域名所有者是否是你) |
ttl:Time To Live,生存时间,DNS缓存时间
企业邮箱可以在腾讯申请注册。
查看CNAME:dig 域名
例如:
[root@aliyun-web02 ~]# dig www.baidu.com
;; QUESTION SECTION:
;www.baidu.com. IN A
;; ANSWER SECTION:
www.baidu.com. 877 IN CNAME www.a.shifen.com.
www.a.shifen.com. 259 IN A 180.101.50.188
www.a.shifen.com. 259 IN A 180.101.50.242
[root@aliyun-web02 ~]#
查看txt记录:dig txt 域名
5、https
https:http over tls
ssl证书:给每个域名申请证书、通配符域名证书(一般收费)