在已有CDH6.3集群的某边缘节点上进行以下操作,服务器环境为centos7.6.
可预先按如下方法在某公网centos7.6上打用于离线的包:
1、先安装制作离线源依赖的软件:
yum install -y yum-utils
yum -y install createrepo
2、下载依赖包并指定路径(以cifs-utils为例):
yumdownloader --resolve --destdir=/data/ cifs-utils
3、创建包含依赖的yum库:
createrepo -v /data/
4、创建压缩包,则软件的离线源包做好了
tar -zcvf cifs-utils.tar.gz /data/
以下是离线安装过程:
1、neo4j的安装
1.1)解压 tar -zxvf neo4j-community-3.5.30-unix.tar.gz
移动到/usr/下:mv neo4j-community-3.5.30 /usr/neo4j (或其他合适路径)
1.2)开启允许远程访问:
vi /usr/neo4j/conf/neo4j.conf
将以下行注释打开:# dbms.connectors.default_listen_address=0.0.0.0
如果需要修改默认内存,以下两项也可打开并配置适当大小:
dbms.memory.heap.initial_size=512m
dbms.memory.heap.max_size=512m
1.3)启动与停止:
/usr/neo4j/bin/neo4j start
/usr/neo4j/bin/neo4j stop
1.4)浏览器访问 http://ip:7474
初始化账户为 neo4j 密码neo4j,进去后设置密码
2、Python3.7.5安装
需先配好之前准备的离线源,用于安装python3所需的依赖。
tar -zxvf python3_depends.tar.gz
假设解压后的所有源包还在/data/python3_depends/下
创建repo文件,并指定源的位置:
vi /etc/yum.repos.d/python3_depends.repo
写入内容:
[cifs-utils]
name=CentOS-$releasever - Plus
baseurl=file:///data/python3_depends/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
接下来yum安装所需依赖:
yum -y groupinstall "Development tools"
yum -y install gcc zlib* bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel zlib-devel
接下来安装python3.7.5
tar -xvJf Python-3.7.5.tar.xz
cd Python-3.7.5/
./configure --prefix=/usr/local/python-3.7.5
make
make install
将python默认的python2替换为python3
mv /usr/bin/python /usr/bin/python2.7.bak
ln -s /usr/local/python-3.7.5/bin/python3 /usr/bin/python
然后python -V看版本已变成3.7.5
修改yum相关指定为python2
vi /usr/bin/yum
#! /usr/bin/python修改为#! /usr/bin/python2
vi /usr/libexec/urlgrabber-ext-down
#! /usr/bin/python 也要修改为#! /usr/bin/python2
3、离线安装pip(pip3)
先把pip_packages.tar.gz装成离线源,过程与python3_depends一样。
yum install -y epel-release
yum install -y python3-pip
4、离线安装py2neo
将py2neo_packages文件夹放到/data/下,
进入/data/py2neo_packages/
pip3 install --no-index --find-links=/data/py2neo_packages/ py2neo
5、默认python替换回python2
mv /usr/bin/python /usr/bin/python3.7.5.bak
mv /usr/bin/python2.7.bak /usr/bin/python
查看python -V 确认已经是python2了
6、指定pyspark路径到新装的python3
Ps:不让改全局环境变量的话,改当前用户的~/.profile
vi /etc/profile
添加:
export PYSPARK_PYTHON=/usr/local/python-3.7.5/bin/python3
export PYSPARK_DRIVER_PYTHON=/usr/local/python-3.7.5/bin/python3
source /etc/profile
7、验证下py2neo是否可用
Vi py_neo4j.py
添加如下:
from py2neo import Graph, Node, Relationship
g = Graph('http://localhost:7474', auth = ('neo4j', 'hello1234')) # 写实际的ip用户名和密码
执行python3 py_neo4j.py
Spark-submit py_neo4j.py
不报错即可