TKE上部署treafik2

腾讯云上有默认的提供的ingress服务,如果你不想用提供的,想用最新的treafik来暴露服务通过域名访问也是可以的,下面我们来部署操作下。

创建LB负载到集群中

upload-image
upload-image
upload-image

网络类型选择公网,域名需要解析到公网ip

网络选择私有网络,集群所在的vpc

upload-image

在你购买的域名中解析到该VIP上,我这边是解析了*.tx.niewx.ciub

upload-image

添加监听器

upload-image
upload-image
upload-image
upload-image
upload-image

绑定后端服务器,我们这里绑定的端口为30183,这个端口是k8s集群暴露treafik2的服务端口

创建treafik命名空间来部署服务

upload-image
upload-image

部署treafik服务

以下部署,如果在TKE的控制台无法部署yaml,可以通过kubectl来部署对应的yaml文件

首先自定义资源类型

配置rbac权限

部署treafik

配置域名规则

这里我们暴露我们之前已经部署好的服务。

添加treafik服务端口

因为之前的svc只暴露了8080,我们需要暴露treafik的80和443端口,这样lb才能负载到对应的服务上

upload-image

我们直接在treafik的svc上添加2条映射即可,也可以在最开始的yaml中直接设置好。

通过域名访问集群服务

upload-image
upload-image

设置treafik的basic auth认证

有的时候我们的服务自身没有设置鉴权,任何人可以直接登录界面,这样是不安全的,treafik2提供的中间来解决这个问题,我们一般访问treafik界面是不需要密码的,下面我们给treafik来设置一个访问账号密码

采用htpasswd创建文件

创建secret

定义Basic Auth中间件

Ingress中应用中间件

通过域名访问需要登录才行

upload-image
upload-image

最后更新于

这有帮助吗?