这里可以看出来重新使用密钥对连接进行加密,但是不知道为何 mode 依然是 http,而不是 https 。
2.6 设置和修改 route 配置
route 配置主要有以下几个比较重要的:
(1)SSL 终结方式 。共三种:
- edge:TLS 在 router 上被终结,然后非SSL网络包被转发给后端 pod 。因此需要在 router 上安装 TLS 证书 。不安装的话,会使用 router 的默认证书 。
- passthrough:加密网络包直接被发给 pod,router 上不做TLS 终结,因为不需要在 router 上配置证书或密钥 。
- Re-encryption:是 edge 的一种变种 。首先 router 上会使用一个证书做 TSL 终结,然后使用另外的证书再进行加密,然后发给后端 pod 。因此,整个网络路径都是加密的 。
- 可以在创建 route 时设置,也可以通过修改 route 的 termination 配置项来修改其 SSL 终结方式 。
- 具体请参考官方文档 https://docs.okd.io/latest/architecture/networking/routes.html#edge-termination
(2)负载均衡策略 。
有三种策略:
- roundrobin:根据权重轮流使用所有后端 。
- leastconn:选择最少连接的后端接收请求 。
- source:将源IP进行哈希,确保来自同一个源IP的请求发给同一个后端 。
- 要修改整个 router 的负载均衡策略,可使用 ROUTER_TCP_BALANCE_SCHEME 环境变量,为该 router 的所有 passthrough 类型的 route设置负载均衡策略,使用 ROUTER_LOAD_BALANCE_ALGORITHM 为其它类型的 route 设置策略 。
- 可以使用 haproxy.router.openshift.io/balance 为某个 route 设置负载均衡策略 。
- 设置整个 router 的环境变量:oc set env dc/router ROUTER_TCP_BALANCE_SCHEME=roundrobin
- 改完以后,该 router 实例会重新部署,所有 passthrough 的 route 都是 roundrobin 类型的了 。默认为 source 类型 。
- 修改某个 route 的负载均衡的策略:oc edit route aaaa.svc.cluster.local
修改完成后,HAProxy 中对应该 route 的 backend 中的 balance 值会被修改为 leastconn 。
三、OpenShift router 服务如何实现高可用?
OpenShift router 服务支持两种高可用模式 。
3.1 单 router 服务多副本,并利用和DNS/LB 实现高可用
这种模式只部署一个 router 服务,它支持集群的所有对外暴露的服务 。要实现HA,需要设置副本数(replicas)大于1,使得会在超过一台服务器上创建pod,然后再通过DNS轮询或者四层负载均衡 。
因为 router/pod 中的 HAProxy 要实现本地配置文件,因此实际上它们是有状态容器 。OpenShift 采用 etcd 作为配置的统一存储,openshift-router 进程应该是采取某种机制(被通知或定时拉取)从 etcd 中获取 router 和 route 的配置,然后再修改本地的配置文件,再重启 HAPorxy 进程来应用新修改了的配置文件 。要深入了解这里面的工作原理,可以去看源代码 。
3.2 多 router 服务通过分片(sharding)实现高可用
这种模式下,管理员需要创建和部署多个 router 服务,每个router 服务支持一个或几个 project/namespace 。router 和 project/namespace 之间的映射使用标签(label)来实现 。
具体的配置请参考官网 https://docs.openshift.com/container-platform/3.11/install_config/router/default_haproxy_router.html 。
推荐阅读
- 卤味配方详解:手把手教你制作美味的卤味料理
- 惠普打印机加墨粉步骤详解 惠普打印机怎么换墨盒
- vivoz1i隐藏照片步骤详解 私密照片从哪里打开VIVO
- OPPO Reno7 测评详解 oppo reno7怎么样值得买吗
- 电脑蓝牙打开图文详解 电脑蓝牙在哪里打开win7
- iPhone 12 Pro系列详解 苹果12pro参数配置详细处理器
- 手机投屏到电视上教程详解 投屏怎么投到电视上没有声音
- 华为P50 Pro测评详解 华为p50pro骁龙888值得买吗
- 怎么使用刷脸支付 刷脸支付流程图详解
- tomcat安装配置详解 将电脑localhost设置为127.0.0.1