类别

版本

您正在查看版本9.7的RapidMiner评分代理文档点击这里查看最新版本

RapidMiner实时计分Docker部署

下面的文档描述了以下Docker映像:

  • RapidMiner实时评分(rapidminer / rapidminer-execution-scoring:最新
  • RapidMiner实时计分rapidminer / rapidminer-real-time-scoring-cron:最新
  • RapidMiner实时计分代理(rapidminer / rapidminer-real-time-scoring-proxy:最新
  • RapidMiner实时计分Web UI (rapidminer / rapidminer-real-time-scoring-webui:最新

有关可用的Docker镜像,请参见码头工人中心

使用Docker映像,RapidMiner实时评分可以部署在现场或任何云提供商的Docker或Kubernetes平台上。

在docs.www.turtlecreekpls.com上,我们维护每个docker映像版本的文档,不像码头工人中心,其中只有最新版本的RapidMiner实时评分被记录。

部署页面基于Docker的部署可以通过启动单独的容器或多容器设置docker-compose

数据持久性

RapidMiner实时评分堆栈使用以下卷:

  • rts-deployments用于存储部署
  • rts-licenses用于存储部署
  • 上传用于存储上传的文件
  • cron-log用于存储堆栈的后台进程的日志文件

要使此数据持久,请使用docker-compose.ymlFile定义这些卷,并将它们挂载到相关服务。

使用单个容器只部署rts-deploymentsrts-licenses卷被装载到容器中。

关于数据持久性的注意事项

  • 如果卷包含任何先前执行的数据,则堆栈将以该数据(例如许可证、部署等)启动。
  • 必要的文件可以使用内置的上传Web UI
  • 除了使用卷,绑定挂载目录还可以直接从主机访问存储的文件。
  • 默认情况下,在使用评分服务时,既不记录请求,也不记录响应的敏感数据,在代理访问日志中只记录请求URL和一些额外的请求信息,POST请求的参数(例如评分服务的输入)不记录:
nginx-proxy_1_33dd1a206bd6 | 123.123.123.123 - admin [22/Aug/2019:08:36:20 +0000] "POST /services/my-first-deployment/score-titanic HTTP/1.1" 200 282 "-" curl/7.58.0" "-"
  • 有关HA部署的详细信息,请与我们联系。
  • 在web UI上,我们不显示敏感信息(例如许可证密钥,证书,证书密钥),要查看这些文件,最方便的方法是进入cron容器并使用cat获取文件内容:
CD /path/to/compose/file/ docker-compose exec cron bash cat /rapidminer/rts_home/licenses/rapidminer-scoring。目录cat /rapidminer/upload /certs/validated_cert. confCRT cat /rapidminer/upload /certs/validated_cert.key . CRT

很高兴知道

  • RapidMiner实时评分需要至少2GB的内存。在Windows主机上,请确保配置Docker引擎以在足够的内存下运行。
  • 如果license卷中不包含license文件,则RapidMiner实时计分容器将等待license文件。您可以在提供有效的license和部署后开始计分。
  • 要在Windows系统上挂载卷,您应该注意Windows特定的Docker卷挂载设置:
    • 确保驱动器在Docker设置中是共享的
    • 如果使用docker-compose,考虑设置环境变量“COMPOSE_CONVERT_WINDOWS_PATHS=1”。
    • 确保Docker可以读写挂载的文件和文件夹

基于单个容器的部署

我们建议仅在代理将在可信网络中运行或用于测试时才使用这种类型的部署。

  • 在主机上为部署创建一个文件夹,并将所有部署文件复制到那里。
  • 在主机上为您的许可证创建一个文件夹,并将您的许可证以.lic扩展名保存在那里。

使用绑定挂载启动RapidMiner Real-Time Scoring Agent容器以实现数据持久化,运行以下命令:

\ -v :/rapidminer-scoring-agent/ HOME /resources/ LICENSES/ rapidminer-scoring-agent/ \ -p 8090:8090 \ rapidminer/rapidminer-execution-scoring:latest 乐鱼体育安装. docker run \ -e WAIT_FOR_LICENSES=1 \ -v :/rapidminer-scoring-agent/ HOME /

为许可证和部署提供与在主机上创建文件夹时相同的路径。

在这种情况下,容器将在端口8090上侦听,您可以使用该端口进行评分(例如:http://localhost:8090或任何其他网络接口)。如果端口8090已经被绑定,您可以根据需要更改上面的命令(例如,-p 8091:8090将绑定主机上端口8091上的服务)。

WAIT_FOR_LICENSES环境变量在没有提供许可证的情况下改变容器的行为。有效值为:

  • 0容器将退出并重新启动;
  • 1容器会定期检查是否有license文件

环境变量MANAGEMENT_API_ENDPOINT改变了容器启动时的行为,如果提供了这个变量,容器将尝试从URL blow从web服务器下载许可证:

$ {MANAGEMENT_API_ENDPOINT} /上传/同步/许可证/覆盖

您可以指定任何URL,但请确保容器具有正确的网络访问权限,并且没有其他人可以访问此URL。如果没有定义这个变量,容器将只检查许可证文件夹中的许可证。

有关Docker镜像版本,请参见码头工人中心

单容器部署注意事项:

  • 部署安装部署修改via file需要重新启动容器,请考虑使用REST API进行部署。
  • 请注意数据的持久性。

Multi-container-based部署

这是一个功能齐全的RapidMiner实时评分堆栈,有关可用版本,请参阅图像详细信息页面上的标签码头工人中心

Docker-compose配置

启动使用卷进行数据持久化的RapidMiner实时计分代理、代理、web和cron容器。

version: '3' services: real-time-scoring-agent: image: rapidminer/rapidminer-execution-scoring:latest restart: "always" environment: WAIT_FOR_LICENSES: 1 volumes:—rt -deployment:/rapidminer-scoring-agent/home/deployment /—rt -licenses:/rapidminer-scoring-agent/home/resou乐鱼体育安装rces/licenses/rapidminer-scoring-agent/ networks: rt -internal-network: alias:—real- score -agent nginx-proxy: image: rapidminer/rapidminer-real- scoring-proxy:latest restart: "always" volumes:-上传:/rapidminer/上传/:ro ports: - 80:80 - 443:443网络:rt -internal-network:别名:- nginx-proxy实时评分-web: image: rapidminer/rapidminer-实时评分-web:最新重启:"always"卷:-上传:/var/www/html/上传/网络:rt -internal-network:别名:-实时评分-web cron: image: rapidminer/rapidminer-实时评分-cron:最新重启:"always"卷:—cron-log:/var/log/—rt -licenses:/rapidminer/rts_home/licenses/—上传:/rapidminer/上传/—/var/run/docker.sock:/var/run/docker. sock:/var/run/docker. sock。Sock volumes: rt -deployment: rt -licenses: upload: cron-log: networks: rt -internal-network:

架构:




关于docker-compose部署的注意事项:

  • 出于安全考虑docker-compose.yml文件定义了一个专用docker网络(rts-internal-network)用于RapidMiner实时评分容器,因此它们可以相互通信,但从外部网络只有代理容器在80和443端口上可用。您可以使用这些端口得分,并达到Web UI(例如。http://localhost、http://localhost/rts-admin/ https://localhost、https://localhost/rts-admin/或任何其他IP地址或域名)。
  • cron容器需要挂载docker套接字,以便能够管理(例如重启)其他容器。如果不配置,则上传证书后需要手动重启代理容器,提供或变更license后需要手动重启real-time-scoring-agent容器。
  • 请使用https协议提供合理的信息(许可密钥,证书,证书密钥,部署),内置的自签名证书不够安全,但它提供加密和数据完整性,直到提供有效的证书和密钥文件。
  • 默认的登录凭据是admin / changeit。
  • 在提交证书和密钥文件内容之后,在将它们应用于代理配置之前,每分钟调度的后台进程将执行一些语法和内容检查。如果您遇到新的证书和密钥文件没有应用,请检查后台进程日志:
CD /path/to/compose/file/ docker-compose exec cron bash cat /var/log/_process_uploads.log

下一个: