AI控制台包括运维控制台和开发控制台,均支持公网和私网两种访问方式。本文以运维控制台为例说明如何配置访问方式。
前提条件
已创建ACK Pro版集群,且在组件配置页面选中监控插件和日志服务。具体操作,请参见创建ACK Pro版集群。
ACK Pro托管版集群的Kubernetes版本不低于1.18。
方式一:通过私网访问
AI运维控制台支持通过私网域名和私网IP进行访问。使用私网访问时,请确保集群网络和办公网络之间可以互通。
私网域名
安装云原生AI套件时,选择运维控制台访问方式为私网域名,并填写需要绑定的私网域名。
当您成功创建一个ACK集群后,默认情况下,集群内部已经部署了一套拥有2个Pod副本的Nginx Ingress Controller服务,其前端挂载在一个公网SLB实例上。
如果需要再部署一套完全独立的Nginx Ingress Controller,请参见部署多个Ingress Controller。
安装完成后,即可使用该域名访问运维控制台。
私网IP
安装云原生AI套件时,选择运维控制台访问方式为私网IP。
安装完成后,您可以通过SSL VPN或Sshuttle访问运维控制台。
使用SSL VPN访问运维控制台
SSL VPN支持将客户端远程接入专有网络VPC(Virtual Private Cloud),使客户端可以安全地访问VPC中部署的应用或服务。使用VPN网关的SSL-VPN功能,从客户端远程访问AI运维控制台的具体操作,请参见客户端远程连接VPC。
使用Sshuttle访问运维控制台
使用Sshuttle访问运维控制台。Sshuttle是最低成本的VPN方案,基于SSH搭建。
准备一台Python版本最低为3.6、公网可访问的跳板机。
(推荐)在集群安全组中开启IP白名单的安全规则,限制可以访问的IP范围。具体操作,请参见ECS安全组配置操作指南。
安装Sshuttle。代码示例以Mac系统为例,安装1.0.5版本的Sshuttle。其他系统的安装步骤,请参见Sshuttle。
brew install sshuttle@1.0.5
启动Sshuttle代理功能。指定需要访问的SSH跳板机,以及待访问集群节点的IP地址。代码示例以跳板机的公网IP访问地址为
39.96.XX.XX
、集群节点IP地址为192.168.100.0
为例。sudo sshuttle -r jack@39.96.XX.XX 192.168.100.0/24 -vv
执行以下命令,获取
kube-ai
空间下的所有服务。kubectl get service -n kube-ai
预期输出:
ack-ai-dashboard-admin-ui
后的IP地址对应运维控制台ack-ai-dev-console
后的IP地址对应开发控制台。
在浏览器访问AI运维控制台的IP地址。
方式二:通过公网访问(不推荐应用于生产)
该方式无TLS,如需通过公网访问该服务,建议使用自己的域名,且配置安全证书。如果您使用的是ACK的测试公网域名,需为您的SLB设置访问白名单。具体操作,请参见访问控制。
安装云原生AI套件时,如果选择运维控制台访问方式为公网域名,则可以通过公网访问AI运维控制台。公网域名访问服务时,请确保集群已安装Nginx Ingress。
当您成功创建一个ACK集群后,默认情况下,集群内部已经部署了一套拥有2个Pod副本的Nginx Ingress Controller服务,其前端挂载在一个公网SLB实例上。
如果需要再部署一套完全独立的Nginx Ingress Controller,请参见部署多个Ingress Controller。
安装完云原生AI套件后,集群将为运维控制台创建一个Ingress域名。
登录容器服务管理控制台,在左侧导航栏选择集群。
在集群列表单击目标集群的名称/ID。
在左侧导航栏,选择应用>云原生AI套件。
查看运维控制台和开发控制台的入口及状态。当运维控制台的状态显示为就绪时,您可以直接单击运维控制台进行访问。