我需要找到Yarn上的Samza放置其KV國家商店的地方。我懷疑它是在YARN本地應用程序目錄中的所有YARN應用程序,但我相信它是可配置的,因爲我在幾個月前(在不同的環境中映射文件夾到內存)執行此操作,但現在不記得。YARN的Samza在哪裏放置KV國家商店?
爲了可能,我需要能夠將samza KV存儲與其他應用程序的其他YARN應用程序數據分開。
我需要找到Yarn上的Samza放置其KV國家商店的地方。我懷疑它是在YARN本地應用程序目錄中的所有YARN應用程序,但我相信它是可配置的,因爲我在幾個月前(在不同的環境中映射文件夾到內存)執行此操作,但現在不記得。YARN的Samza在哪裏放置KV國家商店?
爲了可能,我需要能夠將samza KV存儲與其他應用程序的其他YARN應用程序數據分開。
以下是解決方案。它在Samza作業日誌輸出中打印:
[警告]未記錄存儲庫基礎目錄的覆蓋。此 在應用程序重新啓動時禁用本地狀態重用。如果你想 啓用此功能,在運行Samza容器
LOGGED_STORE_BASE_DIR
可以被設置爲節點管理器啓動的一部分的所有計算機設置LOGGED_STORE_BASE_DIR作爲環境 變量。例如:
# 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
如果商店啓用了更新日誌,則商店路徑僅可配置。
商店位置由環境變量LOGGED_STORE_BASE_DIR
的更多細節來控制:http://samza.apache.org/learn/documentation/0.11/yarn/yarn-host-affinity.html