docker整合hue

因为测试需求,需要将各个开源平台整合到一个大的平台中,所以引入了hue,具体操作步骤如下:
此次引入了有postgre,hive,phoenix,hbase,yarn,hdfs

1.拉取镜像

直接从dockerhub拉取已经编译好的hue:

docker pull gethue/hue

在这里插入图片描述
拉取好镜像后,传入自己的harbor,本地仓库,方便后续集成到k8s管理,具体操作之前也有讲过。

2.开启镜像安装相应的软件并修改hue.ini

开启镜像命令:docker run -d -it -p 8888:8888 --add-host=xxx.com:你的ip gethue/hue:latest
进入镜像,因为要使用root用户操作,所以进入命令如下:

docker exec -ti --user root 容器id bash

我这个版本的hue镜像存在/usr/share/hue/desktop/conf/目录下,因为此版本hue并未提供vim,要自行下载,命令如下:

apt-get update
apt-get install vim

最好再装一个ping:

apt install iputils-ping

最后进行文件的修改:

vim hue.ini

修改配置如下:
修改时区:
在这里插入图片描述

postgre相关项:

在这里插入图片描述
在这里插入图片描述

hive相关项

在这里插入图片描述
在这里插入图片描述

hbase相关项:

在这里插入图片描述

yarn相关项:

在这里插入图片描述

hdfs相关项:

在这里插入图片描述

phoenix配置项:

这段需要自己加官网也有说:
在这里插入图片描述
改完后保存退出容器打包镜像docker commit即可。

3.修改集群中的响应配置文件

首先修改hdfs的相关文件
在这里插入图片描述
在这里插入图片描述

其次修改hbase的相关文件
在这里插入图片描述

4.开启相关代理服务

4.1 java

首先集群上肯定要有java环境并配置好JAVA_HOME环境变量,并且此hue的对应的版本为java8

4.2 queryserver

在集群上下载好phoenix的服务端并开启服务,因为我们的项目使用的是hbase的2版本,所以下载的是apache-phoenix-5.0.0-HBase-2.0-bin.tar,方法如下:
首先确定你的集群上有HBASE_HOME的环境变量,接下来解压后来到bin目录下:在这里插入图片描述
执行./queryserver.py start即可,虽然是python写的,但是内部最终起来是java来起,会开启一个java进程:
在这里插入图片描述
注意hbase-site里面的zookeeper配置项我用的不是hbase自带,使用的是集群模式,而且写得host域名后不要跟2181它会默认去找2181,如果写了会报错,这里应该是hue的一个bug,希望它们后面能改进。

4.3 ThriftServer

开启hbase的ThriftServer服务在9090端口:

HBASE_HOME/bin/hbase-daemon.sh start thrift

在这里插入图片描述
接下来可以看效果了

4.4 开启hive

在这里插入图片描述
hive脚本:

#!/bin/bash
HIVE_LOG_DIR=$HIVE_HOME/logs
if [ ! -d $HIVE_LOG_DIR ]
then
    mkdir -p $HIVE_LOG_DIR
fi
echo "1"
function check_process()
{
   pid=$(ps -ef 2>/dev/null | grep -v grep | grep -i $1 | awk '{print $2}')
   ppid=$(netstat -nltp 2>/dev/null | grep $2 | awk '{print $7}' | cut -d '/' -f 1)
   echo $pid
   [[ "$pid" =~ "$ppid" ]] && [ "$ppid" ] && return 0 || return 1
}
echo "2"
function hive_start()
{
   metapid=$(check_process HiveMetastore 9083)
   cmd="nohup hive --service metastore >$HIVE_LOG_DIR/metastore.log 2>&1 &"
   [ -z "$metapid" ] && eval $cmd || echo "Metastroe start"
   server2pid=$(check_process HiveServer2 10000)
   cmd="nohup hiveserver2 >$HIVE_LOG_DIR/hiveServer2.log 2>&1 &"
   [ -z "$server2pid" ] && eval $cmd || echo "HiveServer2 start"
}
echo "3"
function hive_stop()
{
   metapid=$(check_process HiveMetastore 9083)
   [ "$metapid" ] && kill $metapid || echo "Metastore not start"
   server2pid=$(check_process HiveServer2 10000)
   [ "$server2pid" ] && kill $server2pid || echo "HiveServer2 not start"
}

case $1 in
"start")
    hive_start
    echo "2"
    ;;
"stop")
    hive_stop
    ;;
"restart")
    hive_stop
    sleep 2
    hive_start
    ;;
"status")
    check_process HiveMetastore 9083 >/dev/null && echo "Metastore normalnormal" || echo "Metastore exception"
    check_process HiveServer2 10000 >/dev/null && echo "HiveServer2 normalnormal" || echo "HiveServer2 exception"
    ;;
*)
    echo Invalid Args!
    echo 'Usage: '$(basename $0)' start|stop|restart|status'
    ;;
esac

此脚本一定要是unix格式,可以通过set ff=unix命令来使用

5.成功界面演示

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 11
    评论
好的,下面是一个简单的 Jenkins 和 Docker 整合示例: 1. 安装 Docker 首先需要在 Jenkins 所在的机器上安装 Docker。具体安装步骤可以参考 Docker 官方文档。 2. 安装 Docker 插件 在 Jenkins 中安装 Docker 插件,这样 Jenkins 就可以与 Docker 进行交互了。在 Jenkins 的控制台中选择 Manage Jenkins -> Manage Plugins,然后在 Available 标签页中搜索 Docker 插件,并进行安装。 3. 配置 Docker 环境 在 Jenkins 中配置 Docker 环境变量,这样 Jenkins 就可以使用 Docker 命令来构建和运行容器。在 Jenkins 的控制台中选择 Manage Jenkins -> Global Tool Configuration,然后在 Docker 安装路径处输入 Docker 的安装路径,例如 /usr/bin/docker。 4. 创建 Jenkins 项目 在 Jenkins 中创建一个新的 Freestyle 项目,并在构建步骤中添加 Docker 构建步骤。在 Docker 构建步骤中,可以指定 Dockerfile 的路径、镜像名称、标签等信息。 5. 配置 Jenkins 凭据 如果需要从 Docker Hub 中拉取或推送镜像,则需要在 Jenkins 中配置 Docker 凭据。在 Jenkins 的控制台中选择 Credentials -> System -> Global credentials,然后添加 Docker 凭据。 6. 运行 Jenkins 项目 点击 Jenkins 项目的 Build Now 按钮,Jenkins 就会使用 Docker 构建和运行容器。构建过程中可以在 Jenkins 控制台中查看构建日志,以便排查问题。 以上就是一个简单的 Jenkins 和 Docker 整合示例。在实际应用中,还需要考虑更多的细节和安全性问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

graceful coding

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值