优化内存
当管理具有多个并发用户和/或大型工作负载的大型部署时,需要考虑资源分配,以避免日常操作中断。
本页列出了如何微调RapidMiner平台部署中各个组件所使用的资源,以及需要这样做乐鱼体育安装时的典型场景。
为避免资源短缺,请仔细检查平台配置/需要的内存总量不超过主机的物理内存限制。
调优单机部署
调整RapidMiner Server内存设置
默认情况下,RapidMiner Server配置为最大使用2gb内存。如果你正在运行大量的作业,特别是如果你运行大量的web服务和web应用程序,你可能需要提高这个限制。
控件控制内存限制SERVER_MAX_MEMORY
的环境变量RapidMiner Server容器.
要更改它,您可以使用Docker部署管理器,或使用终端连接到运行部署的主机。然后编辑.env
文件,最后发布Docker-compose up -d
应用您的更改。
此操作将重新启动RapidMiner Server组件,因此请确保它不会影响任何关键操作。
调整作业代理的内存设置
默认情况下,RapidMiner作业代理配置为生成2个作业容器,每个作业容器最多使用2 gb内存。
如果您希望增加并行RapidMiner进程执行的数量,您应该扩大作业代理的数量,或者在作业代理中配置更多数量的作业容器。
如果正在运行需要大量内存量的进程,则需要增加分配给作业容器的内存量。
作业容器的数量由JOBAGENT_CONTAINER_COUNT
Job Agent容器的环境变量。作业容器可以使用的内存量由JOBAGENT_CONTAINER_MEMORYLIMIT
Job Agent容器的环境变量。
要更改这些,您可以使用Docker部署管理器,或者使用终端连接到运行部署的主机。然后编辑.env
文件,最后发布Docker-compose up -d
应用您的更改。
此操作将重新启动RapidMiner Job Agent组件,因此请确保它不会影响任何关键操作。
提供不同形状和大小的作业代理
默认情况下,所有作业代理都连接到同一个,默认的
队列中。有一个用于大型作业的单独队列是典型的用例,在该队列中,具有较大作业容器内存限制的作业代理正在侦听要运行的作业。
为此,需要在平台定义文件中“克隆”Job Agent服务的定义。取rm-server-job-agent-svc
定义并复制它,然后更改JOBAGENT_CONTAINER_COUNT
,JOB_QUEUE
,JOBAGENT_CONTAINER_MEMORYLIMIT
根据需要设置环境变量。
您可以使用Docker部署管理器,也可以使用终端连接到运行部署的主机。然后编辑.env
文件和docker-compose.yml
文件,最后发布Docker-compose up -d
应用您的更改。
之后,您可以根据需要分别缩放这个新的Job Agent“风味”,与其他风味分开。
限制JupyterHub用户的CPU和内存
当使用RapidMiner平台中提供的JupyterHub时,每个用户都被配置为限制在单个笔记本容器中,在那里他们可以运行他们的笔记本内核。为了确保合理的资源分配,我们实现了每个笔记本容器可以利用的已使用CPU内核和已使用内存的默认最大值。
要更改笔记本容器的资源限制,需要更改相关Docker环境变量或者手动在你的docker-compose.yml
或者使用Docker部署管理器.一定要重新启动JupyterHub后端容器。
设置的内存限制将应用于所有用户的笔记本的容器中。