开发者学堂课程【5分钟玩转阿里云容器服务:容器网络 ALB Ingress】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/1038/detail/15276
容器网络 ALB Ingress
内容介绍:
一、什么是 ACK ALB Ingress Controller
二、ACK ALB Ingress Controller 安装方式
三、创建 ALB 实例
一、什么是 ACK ALB Ingress Controller
应用型负载均衡 ALB 是阿里云推出的专门面向 HTTP、HTTPS 和 QUIC等应用层负载场景的负载均衡服务,具备超强弹性及大规模七层流量处理能力。
阿里云服务器 ALB Ingress Controller 是基于阿里云 ALB 之上提供的全托管、免运维的 Ingress 流量管理方式,兼容 Nginx Ingress,具备处理复杂业务路由和证书自动发现的能力,支持 HTTP、HTTPS和 QUIC 协议,可以完全满足云原生应用场景下对超强弹性和大规模七层流量处理能力的需求。
二、ACK ALB Ingress Controller 安装方式
首先安装 ALB Ingress Controller 组件。现有支持的两种安装方式:
(1)创建集群时选择
(2)在已有的集群中安装;ALB Ingress 支持 ACK 或者 ASK 集群,这里选择ACK集群做示范:在运维管理中选择组件管理,选择 ALB Ingress Controller点击安装。
三、创建 ALB 实例
1. 创建 ALB config
首先需要创建 ALB config,一个 ALB config 对应一个 ALB 实例。其次打开命令终端,先来看 ALB config包括哪些内容:名称,可以指定 ALB 的内容以及网络类型;ALB 的交换机,需要指定两个不同的可用区交换机ID,并且这两个指定的可用区交换机必须在当前 ALB 所支持的可用区范围内。
代码:
config:
name:alb-test
addressType:Internet
zoneMappings:
- vSwitchId: vsw-uf6ltu18shgvoohk5p2pu
- vSwitchId: vsw-uf6fyrxw2j7gcufoylyat
2. 创建 ALB config
接下来直接创建 ALB config ,创建完成后指向它的域名地址接着创建 Ingress class,Ingress class 指定了一个 ALB config,可以理解为 Ingress class 是 ALB 与 Ingress 之间的桥梁。
代码:
name:alb
ec:
controller:ingress.k8s.alibabacloud/alb
parameters:
apiGroup:alibabacloud.com
kind:AlbConfig
name:default
chard@B-N3TEMD6P-1650 fiveminute % kubectl apply -f ingressclass.yam
lgressclass.networking.k8s.io/alb created
chard@B-N3TEMD6P-1650 fiveminute % cat
接着部署 coffee 和 tea 服务,之后创建 Ingress ,Ingress 里面指定了 Ingress class 是 ALB ,配置了相应的 path 指向 tea 和 coffee 。
点击
alb-9wxjxhi66tg3ir7ase.cn-shanghai.alb.aliyuncs.com/tea 和 alb-9wxjxhi66tg3ir7ase.cn-shanghai.alb.aliyuncs.com/coffee 可以访问 path 。
然后使用 https 访问,在 ALB Ingress 中支持证书自动发现,这里可以提前上传证书,在证书中心中能够看到已经上传的证书。
在这个 Ingress 中只需要在 tls 中指定相应的域名,他会自动发现已经上传的证书。创建完成后尝试访问,可以看到当前使用证书的情况下是需要提供证书的,之后尝试非安全模式下访问,也能够访问成功。