为什么我的Dataproc上的initialization_action脚本无法设置环境变量?

问题描述 投票:0回答:2

我正在尝试设置一个包含Dataproc集群存储桶的环境变量。基本上,我将这些行添加到我的初始化动作脚本中:

BUCKET=$(/usr/share/google/get_metadata_value attributes/dataproc-bucket)

cat << 'EOF' >> ~/.bashrc
export BUCKET=${BUCKET}
EOF

source /root/.bashrc

但是,当我ssh到master中检查这行是否被添加到bashrc文件时,我找不到任何东西。你能告诉我我做错了什么,或者你会怎么解决这个问题?谢谢。

google-cloud-platform environment-variables google-cloud-dataproc
2个回答
1
投票

经过多次试验,我首先注意到,我正在操纵不同的路径,即$HOME/root/。然后.bashrc文件出现在两个路径下,最终的代码片段如下所示:

BUCKET=$(/usr/share/google/get_metadata_value attributes/dataproc-bucket)
echo "export BUCKET=${BUCKET}" | tee -a $HOME/.bashrc

source $HOME/.bashrc

如果您有任何其他评论,请不要犹豫。


0
投票

初始化操作以root运行。你可以更新/etc/profile

MY_VAR="hello"
echo "export MY_VAR=${MY_VAR}" | tee -a /etc/profile
source /etc/profile
© www.soinside.com 2019 - 2024. All rights reserved.