ZEPPELIN部署接入华为云MRS

ZEPPELIN部署接入华为云MRS

    • 安装zeppelin
    • 配置Spark连接
    • 常见问题
      • 连接pg报错 Py4JJavaError: An error occurred while calling o779.load. : org.postgresql.util.PSQLException: The authentication type 5 is not supported. Check that you have configured the pg_hba.conf file to include the client's IP address or subnet, and that it is using an authentication scheme supported by the driver.
      • Zeppelin 无法正常运行本地Python环境

安装zeppelin

在网址https://zeppelin.apache.org/download.html下载安装包,
ZEPPELIN部署接入华为云MRS_第1张图片
解压后,设置安装新的安装目录/opt/zeppelin

tar -zxvf zeppelin-0.10.1-bin-all.tgz
mv zeppelin-0.10.1-bin-all /opt/zeppelin

配置zeppelin环境变量,在profile文件中加入环境变量

vi /etc/profile
export ZEPPELIN_HOME=/opt/zeppelin
export PATH=$ZEPPELIN_HOME/bin:$PATH

source /etc/profile

编辑zeppelin-env.sh文件,加入JAVA_HOME,位置/opt/zeppelin/conf

cd /opt/zeppelin/conf/
cp zeppelin-env.sh.template zeppelin-env.sh
source /opt/client/bigdata_env
echo $JAVA_HOME
echo "export JAVA_HOME=/opt/client/JDK/jdk1.8.0_302">>zeppelin-env.sh

编辑zeppelin-site.xml文件,修改以下配置

cd /opt/zeppelin/conf
cp zeppelin-site.xml.template  zeppelin-site.xml
vi zeppelin-site.xml


  zeppelin.server.addr
  192.168.22.157
  Server binding address



  zeppelin.server.port
  8081
  Server port.



  zeppelin.ssl
  true
  Should SSL be used by the servers?

在conf目录下生成keystore文件

keytool -keystore keystore -alias zeppelin -genkey -keyalg RSA -sigalg SHA256withRSA -validity 365

编辑shiro.ini文件,位置/opt/zeppelin/conf/shiro.ini,增加用户developuser

cp shiro.ini.template shiro.ini
vi shiro.ini

[users]下增加用户developuser,密码Huawei@123,权限admin

developuser = Huawei@123, admin

运行zeppelin(并检查启动参数)

zeppelin-daemon.sh start
ps -elf | grep zeppelin

关闭防火墙,允许端口8443(此为测试环境,生产环境建议采取更安全措施) systtemctl stop firewalld
在浏览器中输入地址https://zeppelin_ip:8443,用developuser登陆。zeppelin_ip为安装zeppelin的HD客户端IP

配置Spark连接

对接Spark前,确认客户端工具spark-beeline能连接Spark

source /opt/client/bigdata_env
kinit -kt admin
spark-beeline

将/opt/client/Spark2x/spark/jars路径下所有的jar包拷贝至/opt/zeppelin/interpreter/spark

cp /opt/client/Spark2x/spark/jars/*.jar /opt/zeppelin/interpreter/spark/

编辑zeppelin-env.sh文件,位置/opt/zeppelin/conf,加入以下内容

export JAVA_HOME=/opt/client/JDK/jdk-8u201
export MASTER=yarn-client
export SPARK_HOME=/opt/client/Spark2x/spark
export HADOOP_CONF_DIR=/opt/client/HDFS/hadoop/etc/hadoop

关闭防火墙(提交spark任务时,能方便访问Spark Driver所在节点的端口)

  systemctl stop firewalld

登陆Zeppelin,选择右上角菜单中的 Interpreter
ZEPPELIN部署接入华为云MRS_第2张图片
选择Spark,点击 edit 编辑,将 master 参数改为 yarn-client,并且检查zeppelin.spark.useHiveContext项,使其值为false,点击 save 保存

使用yarn-client模式,还需要将客户端的主机名与IP的映射关系添加到Yarn ResourceManager节点(本文即HD的3台主机节点)的hosts文件中。(另一种方式是在ZEPPELIN_INTP_JAVA_OPTS中添加-Dspark.driver.host=172.168.X.X)

echo "172.168.X.X 172-168-X-X">>/etc/hosts
  • 重启zeppelin。
source /opt/client/bigdata_env
kinit –kt developuser
zeppelin-daemon.sh restart

常见问题

连接pg报错 Py4JJavaError: An error occurred while calling o779.load. : org.postgresql.util.PSQLException: The authentication type 5 is not supported. Check that you have configured the pg_hba.conf file to include the client’s IP address or subnet, and that it is using an authentication scheme supported by the driver.

1、移除Spark中的“gsjdbc4-VXXXRXXXCXXSPCXXX.jar”,由于Spark运行不依赖该jar包,因此将该jar包移动到其他目录(例如,移动到“/tmp”目录,不建议直接删除)不会影响Spark正常运行。

  • 登录Spark服务端主机,移除“${BIGDATA_HOME}/FusionInsight_Spark2x_8.1.0.1/install/FusionInsight-Spark2x-*/spark/jars”路径下的“gsjdbc4-VXXXRXXXCXXSPCXXX.jar”。
  • 登录Spark客户端主机,移除“/opt/client/Spark2x/spark/jars”路径下的“gsjdbc4-VXXXRXXXCXXSPCXXX.jar”。

2、更新存储在HDFS中的“/user/spark2x/jars/8.1.0.1/spark-archive-2x.zip”压缩包。

说明:
此处版本号8.1.0.1为示例,具体以实际环境的版本号为准。
  • 使用客户端安装用户登录客户端所在节点。执行命令切换到客户端安装目录,例如“/opt/client”。
  • 执行以下命令配置环境变量。
source bigdata_env
  • 如果集群为安全模式,执行以下命令获得认证。
kinit 组件业务用户
  • 新建临时文件./tmp,并从HDFS获取“spark-archive-2x.zip”并解压到tmp目录,命令如下:
mkdir tmp

hdfs dfs -get /user/spark2x/jars/8.1.0.1/spark-archive-2x.zip ./

unzip spark-archive-2x.zip -d ./tmp
  • 切换到tmp目录,删除“gsjdbc4-VXXXRXXXCXXSPCXXX.jar”文件,并将MPPDB Driver文件“gsjdbc4.jar”上传到tmp目录中,然后执行以下命令重新打包。
zip -r spark-archive-2x.zip *.jar
  • 删除HDFS上的“spark-archive-2x.zip”,将步骤3.e中新生成的压缩包“spark-archive-2x.zip”更新至HDFS的“/user/spark2x/jars/8.1.0.1/”路径下。
hdfs dfs -rm /user/spark2x/jars/8.1.0.1/spark-archive-2x.zip

hdfs dfs -put ./spark-archive-2x.zip /user/spark2x/jars/8.1.0.1

Zeppelin 无法正常运行本地Python环境

在华为云客户端的目录下找到spark-defaults.conf加入指向运行主机IP的配置

vim /opt/client/Spark2x/spark/conf/spark-defaults.conf
spark.driver.host = 192.168.x.x    #客户端IP

你可能感兴趣的:(华为云,linux)