ModelArts Standard推理服务访问公网方案
本章节提供了推理服务访问公网的方法。
应用场景
推理服务访问公网地址的场景,如:
- 输入图片,先进行公网OCR服务调用,然后进行NLP处理;
- 进行公网文件下载,然后进行分析;
- 分析结果回调给公网服务终端。
方案设计
从推理服务的算法实例内部,访问公网服务地址的方案。如下图所示:
操作事项
- ModelArts:设置资源池的网络
专属资源池的创建作业类型包含推理服务,选择的网络需打通VPC网络,如下图所示:图2 创建专属资源池
图3 打通VPC
打通VPC可实现ModelArts资源池和用户VPC的网络打通。打通VPC前需要提前创建好VPC和子网,具体步骤请参考创建虚拟私有云和子网。
- 用户VPC:安装和配置正向代理
在安装正向代理前,需要先购买一台弹性云服务器ECS(镜像可选择Ubuntu最新版本),并配置好弹性EIP,然后登录ECS进行正向代理Squid的安装和配置,步骤如下:
- 如果没有安装Docker,执行以下命令进行Docker安装
curl -sSL https://get.daocloud.io/docker | sh
- 拉取Squid镜像
docker pull ubuntu/squid
- 创建主机目录,配置whitelist.conf和squid.conf
mkdir –p /etc/squid/
添加whitelist.conf配置文件,内容为安全控制可访问的地址,支持配置通配符,如:
.apig.cn-east-3.huaweicloudapis.com
如果地址访问不通,请在浏览器配置访问域名。
添加squid.conf配置文件,内容如下:
# An ACL named 'whitelist' acl whitelist dstdomain '/etc/squid/whitelist.conf' # Allow whitelisted URLs through http_access allow whitelist # Block the rest http_access deny all # Default port http_port 3128
然后设置主机目录和配置文件权限如下:
chmod 640 -R /etc/squid
- 启动Squid实例
docker run -d --name squid -e TZ=UTC -v /etc/squid:/etc/squid -p 3128:3128 ubuntu/squid:latest
- 如果whitelist.conf或squid.conf有更新,则进入容器刷新Squid
docker exec –it squid bash root@{container_id}:/# squid -k reconfigure
- 如果没有安装Docker,执行以下命令进行Docker安装
- 算法镜像:设置DNS代理和公网地址调用