11.4. 流程
创建网络负载平衡器
在每个红帽构建的 Keycloak 集群中执行以下操作:
- 登录到 ROSA 集群
创建 Kubernetes 负载均衡器服务
命令:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 记录 DNS 主机名,因为稍后需要:
命令:
oc -n $NAMESPACE get svc accelerator-loadbalancer --template="{{range .status.loadBalancer.ingress}}{{.hostname}}{{end}}"
oc -n $NAMESPACE get svc accelerator-loadbalancer --template="{{range .status.loadBalancer.ingress}}{{.hostname}}{{end}}"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出:
abab80a363ce8479ea9c4349d116bce2-6b65e8b4272fa4b5.elb.eu-west-1.amazonaws.com
abab80a363ce8479ea9c4349d116bce2-6b65e8b4272fa4b5.elb.eu-west-1.amazonaws.com
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
创建全局加速器实例
命令:
aws globalaccelerator create-accelerator \ --name example-accelerator \ --ip-address-type DUAL_STACK \ --region us-west-2
aws globalaccelerator create-accelerator \ --name example-accelerator \
1 --ip-address-type DUAL_STACK \
2 --region us-west-2
3 Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 为加速器创建一个 Listener
命令:
aws globalaccelerator create-listener \ --accelerator-arn 'arn:aws:globalaccelerator::606671647913:accelerator/e35a94dd-391f-4e3e-9a3d-d5ad22a78c71' \ --port-ranges '[{"FromPort":443,"ToPort":443}]' \ --protocol TCP \ --region us-west-2
aws globalaccelerator create-listener \ --accelerator-arn 'arn:aws:globalaccelerator::606671647913:accelerator/e35a94dd-391f-4e3e-9a3d-d5ad22a78c71' \ --port-ranges '[{"FromPort":443,"ToPort":443}]' \ --protocol TCP \ --region us-west-2
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 为 Listener 创建端点组
命令:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 可选:配置自定义域
如果您使用自定义域,请通过在自定义域中配置 Alias 或 CNAME 将自定义域指向 AWS Global Load Balancer。
创建或更新红帽构建的 Keycloak 部署
在每个红帽构建的 Keycloak 集群中执行以下操作:
- 登录到 ROSA 集群
确保 Keycloak CR 具有以下配置
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 为确保请求转发按预期工作,Keycloak CR 需要指定要通过其访问红帽构建的 Keycloak 实例的主机名。这可以是与全局加速器关联的
DualStack
或 DnsName 主机名。如果您使用自定义域,请将您的自定义域指向 AWS Globa 加速器,并在这里使用您的自定义域。DnsName