安装虚拟机
使用Oracle VM VirtualBox虚拟机 + CentOS7系统
Oracle VM VirtualBox虚拟机在Downloads – Oracle VM VirtualBox可下载.
CentOS7系统,提取码:c7qg。
不外挂任何GUI图形界面,可使Linux系统变得更稳定,占用系统资源更小,更适合高并发、高负载的环境。
Linux的一些常用指令
立刻关机
shutdown -h now 或者 poweroff
两分钟后关机
shutdown -h 2
立刻重启
shutdown -r now 或者 reboot
两分钟后重启
shutdown -r 2
查看 ifconfig 命令的用法
ifconfig --help
cd /
ls
mkdir
rm
mv nowname newname
cp
pwd
touch
安装完成以后简单检查一下没有问题即可:
安装Docker服务
远程连接Linux系统
MobaXterm
SSH客户端软件,双击即可运行,关于SSH的扩展阅读可以看这篇文章。
此时先返回VirtualBox,打开虚拟机设置,在网络中设置端口转发,随意设置主机端口,我的设置为9527,子系统端口为22
新建远程连接的时候选择SSH方式,然后填写连接信息,虚拟机为NAT模式下,填写上localhost和9527端口就能连接上Linux系统了。要先启动虚拟机才能连接哦!
安装Docker的原因
- 节省时间;
- 避免软件间的冲突。
关于Docker的拓展阅读
很可爱的图标……
简单的说,Docker是个沙箱环境,我们可以创建很多个沙箱空间,然后在每个沙箱中部署不同的程序。沙箱之间是物理隔绝的,只有网络联通,所以可以避免不同软件之间的冲突。
因为Docker环境给每个沙箱都创建了虚拟网卡,所以每个沙箱都有自己的内网IP地址,沙箱之间可以通过网络相互调用,就可以搭建数据库集群或者部署项目了。
沙箱的内网IP在Docker环境之外是无法访问的,所以等到我们创建沙箱的时候,需要把沙箱的某个端口映射到Linux系统的某个端口,这样才能在Docker环境之外用网络访问Docker里面的容器。
补充
Docker创建的沙箱是轻量级的,只给容器创建了虚拟网卡,对Linux系统的开销非常小,所以程序运行在容器中性能几乎没有任何损失。
安装Docker环境
关闭SELINUX服务
SELINUX是CentOS自带的安全服务,我们需要关闭这个服务。
执行命令 vi /etc/sysconfig/selinux
然后按 i 进入编辑模式,修改为 SELINUX=disabled
,然后按 Esc 退出编辑模式,输入 :w
保存,输入 :q
退出文件。
输入 reboot
重启虚拟机。
更新yum程序
yum命令是CentOS自带的软件包管理器。
yum update -y
安装Docker
yum install docker -y
管理Docker
service docker start //启动docker服务
docker images //查看docker中的镜像
docker rmi <name> //删除镜像
docker exec -it <name> //进入容器
docker rm -f <id> //删除指定容器
service docker stop //关闭docker服务
以后每次打开虚拟机要做的第一件事就是启动docker服务了(
在Docker环境里搭建HBase+Phoenix大数据平台
不选择MySQL数据库的原因:MySQL单表数据量超过2000万,CRUD的性能会急速下降,对于类似电商的项目,每天都会产生大量的数据,需要安排DBA或者自动化脚本,对数据进行定期归档。一般的小项目用MySQL就行啦
关于HBase的拓展阅读。
Phoneix是给HBase添加了一个语法表示层,允许使用SQL语句读写HBase中的数据。Phoneix还支持MyBatis框架
导入镜像文件
把文件上传到Linux系统上:
docker load < phoenix.tar.gz
创建容器
镜像中已经包含HBase和Phoenix。
容器中数据目录是 /tmp/hbase-root/hbase/data
,我们需要把这个目录映射到主机的 /root/hbase/data
目录。
docker run -it -d -p 2181:2181 -p 8765:8765 -p 15165:15165 \
-p 16000:16000 -p 16010:16010 -p 16020:16020 \
-v /root/hbase/data:/tmp/hbase-root/hbase/data \
--name phoenix \
boostport/hbase-phoenix-all-in-one:2.0-5.0
-p 2181:2181 //端口映射
\为换行的意思
开放端口
把Linux的端口映射到Windows的相应端口上面。
初始化Phoenix
进入容器:
docker exec -it phoenix bash
设置环境变量:
export HBASE_CONF_DIR=/opt/hbase/conf/
连接命令行客户端
/opt/phoenix-server/bin/sqlline.py localhost
问题解决
如果进入容器时报:
Error response from daemon: Container XXX is not running
说明没有启动该容器ID,首先输入: docker ps -a
,找到ID,复制然后:
docker start <容器ID>
之后即可进入该容器。