基础

环境变量

师成师成· 更新于 2026-09-28· 阅读 5 分钟· 0 次阅读

登录后可跨设备保存划线和私人笔记登录

ozone-env.sh 脚本位于 $OZONE_HOME/etc/hadoop,用于定义 Ozone 进程所使用的环境变量。

注意:以下列表并不完整,仅包含最常用的环境变量。

常用环境变量

这些环境变量适用于所有 Ozone 进程。

变量默认值描述
JAVA_HOME(无)Java 安装路径。在大多数平台上必须设置,但在 macOS 上会自动检测。
OZONE_HOME根据脚本位置自动检测Ozone 安装目录的路径。
OZONE_CONF_DIR$OZONE_HOME/etc/hadoop存放 Ozone 配置文件的目录。
OZONE_LOG_DIR$OZONE_HOME/logs存放 Ozone 日志文件的目录。
OZONE_PID_DIR/tmp存放守护进程 PID 文件的目录。
OZONE_OPTS-Djava.net.preferIPv4Stack=true应用于所有 Ozone 进程的通用 Java 选项。
OZONE_HEAPSIZE_MAX(JVM 默认值)JVM 最大堆大小(-Xmx)。如果未设置,JVM 将自动调整。
OZONE_HEAPSIZE_MIN(JVM 默认值)JVM 最小堆大小(-Xms)。如果未设置,JVM 将自动调整。

角色专用环境变量

这些环境变量仅适用于特定的 Ozone 服务或角色。

变量默认值说明
OZONE_SERVER_OPTS(无)用于所有 Ozone 服务器守护进程的选项(追加到 OZONE_OPTS)。
OZONE_CLIENT_OPTS(空)为 Ozone 命令和客户端指定 Java 属性。
OZONE_OM_OPTS(空)为 Ozone Manager(OM)指定 Java 属性。
OZONE_SCM_OPTS(空)为 Storage Container Manager(SCM)指定 Java 属性。
OZONE_DATANODE_OPTS(空)为 Datanode 指定 Java 属性。
OZONE_S3G_OPTS(空)为 S3 Gateway 指定 Java 属性。
OZONE_RECON_OPTS(空)为 Recon 服务器指定 Java 属性。

HttpFS Gateway 配置

HttpFS Gateway 不使用 OZONE_HTTPFS_OPTS 变量。其特定的 JVM 属性必须添加到全局变量 OZONE_OPTS 中。

配置方法

设置这些环境变量有多种方式,具体取决于您的需求。

系统级配置

在多用户环境中,创建系统级配置文件可确保为所有用户设置这些变量。常见做法是在 /etc/profile.d/ 目录下创建一个文件,该目录会在大多数 Shell 登录时被加载。

/etc/profile.d/ozone.sh 示例:

export JAVA_HOME="$(/usr/libexec/java_home)"
export OZONE_HOME=/opt/ozone
export OZONE_CONF_DIR=/etc/ozone

创建此文件后,用户必须注销并重新登录,更改才会生效。

用户特定配置

如果你只需为单个用户设置变量,可以将它们添加到该用户的个人 shell 配置文件中。

  • 对于 Bash 用户,添加到 ~/.bashrc 或 ~/.bash_profile。
  • 对于 Zsh 用户,添加到 ~/.zshrc。
  • 对于其他 shell,请查阅其官方文档。

~/.bashrc 示例:

export OZONE_HOME=~/ozone
export OZONE_CONF_DIR=$OZONE_HOME/etc/hadoop

编辑完成后,你必须重新加载配置文件(例如 source ~/.bashrc),或打开一个新的 shell 会话。

单条命令配置

对于快速测试或一次性命令,你可以仅为某一条命令的执行设置环境变量。

OZONE_HEAPSIZE_MAX=16G ozone sh volume create /vol1

评论

登录后参与评论

正在加载评论…