我需要找到YARN上的Samza放置其KV国家商店的地方。我怀疑它在YARN本地应用程序目录中作为所有YARN应用程序,但我相信它是可配置的,因为我在几个月前(在不同环境中映射文件夹到内存)这样做但现在不记得。
为此,我需要能够将samza KV商店与其他应用程序的其他YARN应用程序数据分开。
答案 0 :(得分:3)
这是解决方案。它打印在Samza作业日志输出中:
[WARN]没有为已记录的商店基本目录提供覆盖。这个 在应用程序重新启动时禁用本地状态重用。如果你想 启用此功能,将LOGGED_STORE_BASE_DIR设置为环境 运行Samza容器的所有机器中的变量
LOGGED_STORE_BASE_DIR
可以设置为NodeManager启动的一部分。例如:
# Typical environment setup.
export JAVA_HOME=...
export YARN_CONF_DIR=...
export YARN_LOG_DIR=...
export HADOOP_LOG_DIR=...
export YARN_MASTER=...
export YARN_PID_DIR=...
export YARN_IDENT_STRING=...
export YARN_NICENESS=...
export YARN_OPTS="-XX:+UseG1GC -XX:ErrorFile=logs/hs_err.log -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -XX:ErrorFile=logs/hs_err.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -Xloggc:logs/gc.log"
# Location of samza-kv stores for host affinity (should be on an SSD).
export LOGGED_STORE_BASE_DIR="/mnt/myssd/samza/logged-stores"
# Startup the Yarn NodeManager
./yarn-daemon.sh" --config "$YARN_CONF_DIR" nodemanager
答案 1 :(得分:1)
如果商店启用了更改日志,则只能配置商店路径。
商店位置由环境变量LOGGED_STORE_BASE_DIR
此处提供了更多详细信息:http://samza.apache.org/learn/documentation/0.11/yarn/yarn-host-affinity.html