当应用程序部署在yarn中时,samza如何生成container.id



有人能告诉我当应用程序部署在yarn中时,samza是如何生成samza.container.id/samza_container_id的吗?我在samza代码库中四处查看,但找不到生成samza.container.id的逻辑

在YARN环境中,Samza使用YARN生成的containerId作为环境变量来设置每个容器进程的Samza.container.id。即,当YARN中的Samza AM进程请求容器时,YARN RM将用一组分配的容器对象进行回复,该对象属于org.apache.hadoop.YARN.api.records.container类。这是唯一标识YARN中容器的资源类,container#getId((。toString((是我们设置为Samza.container.ID的容器ID字符串。

从YARN RM的响应中获取容器Id的代码位于YarnClusterResourceManager#onContainersAllocated((中

最新更新