NDB 操作器发行说明
在 Kubernetes 集群外部运行的 NDB 管理和 SQL 应用程序可以使用前面描述的管理服务器和 SQL 节点服务访问在内部运行的 NDB 集群;这些服务的类型为 LoadBalancer
。Kubernetes 集群提供程序(如 minikube
)会为这些服务预配负载均衡器。如果您正在运行 minikube
,请执行此处所示的命令以在 Kubernetes 集群外部公开服务
> minikube tunnel
使用 kubectl get service
并传递服务名称或标签,您可以检索应用程序连接到 NDB 集群所需的 IP 地址。对于示例管理节点服务,可以使用此处所示的任一命令完成此操作
# Retrieve management load balancer service IP address using service name
> kubectl get service "example-ndb-mgmd-ext" \
-o jsonpath={.status.loadBalancer.ingress[0].ip}
# Retrieve management load balancer service IP address using service label
> kubectl get service \
-l "mysql.oracle.com/resource-type=mgmd-service-ext" \
-o jsonpath={.items[0].status.loadBalancer.ingress[0].ip}
使用刚刚提取的服务 IP 地址,NDB 管理客户端(如 ndb_mgm)可以通过管理节点服务连接到 NDB 集群管理服务器,并执行管理任务。
同样,您可以使用以下任一 kubectl get service
命令获取示例 SQL 节点负载均衡器服务的 IP 地址
# Retrieve SQL node load balancer service IP address using service name
> kubectl get service "example-ndb-mysqld-ext" \
-o jsonpath={.status.loadBalancer.ingress[0].ip}
# Retrieve SQL node load balancer service IP address using service name
> kubectl get service \
-l "mysql.oracle.com/resource-type=mysqld-service-ext" \
-o jsonpath={.items[0].status.loadBalancer.ingress[0].ip}
使用通过这两个命令中的任何一个获得的 IP 地址,MySQL 客户端(如 mysql)可以连接到 NDB 集群 SQL 节点并执行 SQL 语句。