数据工程(二):环境准备

Updated on with 339 views and 0 comments

环境概述

一般再做数据工程时,除了数据流通流程啊,平台啊,剩下的就是做特征工程和分析。数据流通要说的还相对较多,这部分简单讲讲数据工程需要的环境。

环境准备

系统


不管是做特征处理,还是做数据分析,建模还是规则算法,基本都是需要Py的,另外可能很多人习惯用windows,不过我还是比较习惯linux,这里我选用的是centos7.

Python3.7安装


在这里我需要在centos7上安装python3.7.5,步骤如下

安装编译工具

因为我们需要编译的方式安装python,提前安装相关依赖,以下命令逐条执行就可以。

yum -y groupinstall "Development tools"
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
yum install libffi-devel -y

下载安装包

我们选择直接去官网wget安装包,其他版本也是如此,注意选择自己需要的版本就可以。
注意这里安装包的路径不要带中文,很多人在按系统时选择的中文,所以文件夹会变成“下载”啊这类中文,这样会报错

wget https://www.python.org/ftp/python/3.7.5/Python-3.7.5.tar.xz

下载后我们解压到当前位置,解压到别处也行,看你心情了

tar -xvJf Python-3.7.5.tar.xz

解压完成后 Python-3.7.5文件夹在同级目录下了

编译安装

首先创建编译安装目录,这个目录其实没有太大的定性,软链接就可以,这里我为了方便统一,直接用/usr/local/python3了。

mkdir /usr/local/python3

然后进入到我们的编译目录

cd Python-3.7.5

进行编译安装

./configure --prefix=/usr/local/python3
make && make install

等待一会之后编译完成。

创建软链接

这个其实就是为了在任何位置我们都可以直接使用python3环境

ln -s /usr/local/python3/bin/python3 /usr/local/python3
ln -s /usr/local/python3/bin/pip3 /usr/local/pip3

验证

python3 -v
pip3 list

都没问题齐活

VNC启动


因为数据分析还是需要图表还有乱七八糟的东西,所以我们需要图形化界面,当然系统在安装的时候也是需要女装GNOME的

包安装

我们需要安装vncserver

yum install  tigervnc-server

vncview的化我们可以选择RealVNC,这里就不多说了,可以去官网根据自己的系统版本下载下载。
https://www.realvnc.com/en/

VNCserver启动

我们要复制一份vncsever配置修改

cp /lib/systemd/system/vncserver@.service /lib/systemd/system/vncserver@:1.service

修改1.service的配置

vim /lib/systemd/system/vncserver@:1.service

修改后配置如下,我们用root账户启动:

[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=forking

# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/sbin/runuser -l root -c "/usr/bin/vncserver %i"
PIDFile=/root/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'

[Install]
WantedBy=multi-user.target

重新刷一下,让配置生效

systemctl daemon-reload

给vnc配置密码

vncpasswd

执行后会弹出输入密码,最后一项问是否使用只读密码,选n
设置好密码后启动vncserver

vncserver :1

启动成功后弹出以下提示

xauth:  file /root/.Xauthority does not exist

New '#localhost.localdomain:1 (root)' desktop is #localhost.localdomain:1

Creating default startup script /root/.vnc/xstartup
Creating default config /root/.vnc/config
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/#localhost.localdomain:1.log

我们看一下日志,服务是否真的启动了

cat /root/.vnc/#localhost.localdomain:1.log

启动成功的日志如下

Xvnc TigerVNC 1.8.0 - built Nov  2 2018 19:05:14
Copyright (C) 1999-2017 TigerVNC Team and many others (see README.txt)
See http://www.tigervnc.org for information on TigerVNC.
Underlying X server release 12001000, The X.Org Foundation


Tue Dec 31 14:02:59 2019
 vncext:      VNC extension running!
 vncext:      Listening for VNC connections on all interface(s), port 5901
 vncext:      created VNC server for screen 0

Tue Dec 31 14:03:03 2019
 ComparingUpdateTracker: 0 pixels in / 0 pixels out
 ComparingUpdateTracker: (1:-nan ratio)

如果失败的话也会有日志。在数据处理环境搭建这里,最常见的是dbus冲突。原因是因为有了anaconda环境,anaconda自己的dbus与系统的dbus冲突了,这也是我们先安装vnc,再安装anaconda的原因。

接下来查看一下我们启动的vnc

vncserver -list

应该会有vnc的列表,我们也可以启动多个,该名字就行了。这里不多说了,直接用vncview连接就行了,一般都是5901往下开始叠。
有可能连接不了,是因为没有关闭防火墙,或者入站规则没放开。只要关闭了或者放开就行了,这里我直接关了

systemctl stop firewalld

Anaconda安装

这个就比较简单了,直接去官网下载吧
https://www.anaconda.com/
下载对应版本安装就行了

------------------------- 走在路上的symoon