doris部署-通过双网卡实现公司和在家办公场景自由切换

场景:做为一名合格的码农,我们除了在公司搬砖,我们还要把公司笔记本背回家继续搬砖。这两个场景的网络环境是不一样的,如果有需要设置固定IP等硬编码行为时会让我们很为难。这里介绍双网卡方案,在笔记本上部署doris的开发环境,支持在多个网络环境切换时,不需要修改doris的配置,场景丝滑过度。这样在公司和在家或者外出时,不需要频繁修改配置。

概要

1、网络架构

2、配置虚拟机网卡

3、安装部署FE

4、安装部署BE

5、在FE中添加BE

6、开始使用doris

7、参考

一、网络架构

笔记本是MacBook Pro,使用虚拟机virtualBox(如果使用vmware/hyperV类似),虚拟机中安装CentOS7。

以下是整体示意图:

 其中需要在FE中配置连接到三个BE(红线所示)。

这里有两个考虑点:

1、虚拟机需要能够访问外部网络;

2、因为需要在多个环境切换,所以红线网络需要配置静态地址;

最终方案设置成双网卡也是基于这两点,vmware和hyperV可能配置有所出入,但是根据这两点需求进行配置就行。

在virtualBox中:

1、需要访问外部网络,而且需要在多个网络环境切换后,不需要重新配置网卡信息,所以网卡1配置成NAT(没有使用桥接模式,桥接模式需要绑定到具体网卡,如果有切换网卡的场景则不大适合,这里NAT足够使用,NAT和桥接的区别可自行搜索一下);

2、需要静态地址,所以配置网卡2HostOnly网络;

最终拓扑结构:

  • 192.168.56.0/24为hostOnly网络,供FE、BE、笔记本这三者进行通信。
  • 公司网络、家庭网络为外部网络环境,FE/BE通过NAT连接到此环境从而可以访问公网服务。 

接下来进行手把手部署教程。

二、配置虚拟机网卡

创建四个虚拟机(1FE+3BE),进行同样的网卡配置。

2.1 添加HostOnly网络

通过菜单:主机 - 主机网络管理器,或者通过界面:全局工具 - 主机网络管理器,打开网络管理界面

 配置网关地址和网络掩码如图,也可以配置自己喜欢的地址。

这样我们就添加了一个HostOnly网络 vboxnet0

2.2 配置双网卡

添加并启用两个网卡,一个设置成NAT,一个设置成HostOnly。

NAT网卡:

HostOnly网卡:

2.3 配置HostOnly静态IP

进入虚拟机进行网卡设置。

2.3.1 配置NAT:
vi /etc/sysconfig/network-scripts/ifcfg-enp0s3

 2.3.2 配置HostOnly网卡:
vi /etc/sysconfig/network-scripts/ifcfg-enp0s8

2.3.3 BE的网卡配置:

双网卡的这个配置,在FE和BE中都是一样的,在设置HostOnly网卡IP时,设置成对应的IP:

BE1: IPADDR=192.168.56.103

BE2: IPADDR=192.168.56.104

BE3: IPADDR=192.168.56.105

至此,四个虚拟机的硬件配置已经完成,接下来就是部署doris。

三、安装部署FE

3.1 配置系统环境

# 1、设置系统最大打开文件句柄数
> vi /etc/security/limits.conf
* soft nofile 65536
* hard nofile 65536

# 2、关闭交换分区
# Linux交换分区会给Doris带来很严重的性能问题,需要在安装之前禁用交换分区
> vi /etc/fstab
#/dev/mapper/centos-swap swap swap default 0 0 

> vi /etc/sysctl.conf
vm.swappiness=0

> swapoff -a
> swapon -v

# 3、关闭selinux
> vi /etc/selinux/config
SELINUX=disabled

# 4、关闭防火墙(开发环境可配,生产环境看情况)
> systemctl stop firewalld
> systemctl disable firewalld

# 5、替换yum源到国内,加速yum安装应用速度
> mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
> wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
> yum clean all
> yum makecache

# 6、安装网络工具,查看ip等信息
> yum install net-tools
> ip a

# 7、查看内存等资源
> free -m 
> free -h

3.2 部署FE 

3.2.1 配置java环境 
# 1、安装JDK
fe> yum install java-1.8.0-openjdk-x86_64 java-1.8.0-openjdk-devel.x86_64

# 2、配置JAVA环境变量
fe> vi /etc/profile
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

# 3、使JAVA环境变量生效
fe> source /etc/profile


3.2.2 下载解压FE
fe> wget https://apache-doris-releases.oss-accelerate.aliyuncs.com/apache-doris-1.2.4.1-bin-x86_64.tar.gz
fe> tar xvf apache-doris-fe-1.2.4.1-bin-x86_64.tar.gz
fe> mkdir /apps
fe> mkdir /apps/doris
fe> mv apache-doris-fe-1.2.4.1-bin-x86_64 /apps/doris/fe
3.2.3 配置FE
fe> vi /apps/doris/fe/conf/fe.conf
priority_networks = 192.168.56.0/24
3.2.4 运行FE 
fe> sh /apps/doris/fe/bin/start_fe.sh --daemon

3.3 浏览FE管理界面

在mac里浏览 http://192.168.56.101:8030/login,输入账号admin,默认密码为空,点击登录:

 四、安装部署BE

4.1 配置系统环境,跟FE一样

# 1、设置系统最大打开文件句柄数
> vi /etc/security/limits.conf
* soft nofile 65536
* hard nofile 65536

# 2、关闭交换分区
# Linux交换分区会给Doris带来很严重的性能问题,需要在安装之前禁用交换分区
> vi /etc/fstab
#/dev/mapper/centos-swap swap swap default 0 0 

> vi /etc/sysctl.conf
vm.swappiness=0

> swapoff -a
> swapon -v

# 3、关闭selinux
> vi /etc/selinux/config
SELINUX=disabled

# 4、关闭防火墙(开发环境可配,生产环境看情况)
> systemctl stop firewalld
> systemctl disable firewalld

# 5、替换yum源到国内,加速yum安装应用速度
> mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
> wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
> yum clean all
> yum makecache

# 6、安装网络工具,查看ip等信息
> yum install net-tools
> ip a

# 7、查看内存等资源
> free -m 
> free -h

4.2 部署BE

4.2.1 配置java环境
# 1、安装JDK
> yum install java-1.8.0-openjdk-x86_64 java-1.8.0-openjdk-devel.x86_64

# 2、配置JAVA环境变量
> vi /etc/profile
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

# 3、使JAVA环境变量生效
> source /etc/profile
4.2.2 下载解压BE
be> wget https://apache-doris-releases.oss-accelerate.aliyuncs.com/apache-doris-be-1.2.4.1-bin-x86_64.tar.xz
be> wget https://apache-doris-releases.oss-accelerate.aliyuncs.com/apache-doris-dependencies-1.2.4.1-bin-x86_64.tar.xz
be> tar xvf apache-doris-be-1.2.4.1-bin-x86_64.tar.xz
be> tar xvf apache-doris-dependencies-1.2.4.1-bin-x86_64.tar.xz
be> mkdir /apps
be> mkdir /apps/doris
be> mv apache-doris-be-1.2.4.1-bin-x86_64 /apps/doris/be
be> cp apache-doris-dependencies-1.2.4.1-bin-x86_64/java-udf-jar-with-dependencies.jar /apps/doris/be/lib/
# 连接mysql数据源需要
be> cp mysql-connector-java-8.0.30.jar /apps/doris/be/jdbc_drives/

4.2.3 配置BE
be> vi /apps/doris/be/conf/be.conf
priority_networks = 192.168.56.0/24
4.2.4 BE特殊的系统配置
  • max_map_count,限制一个进程可以拥有的VMA(虚拟内存区域)的数量
# 临时修改:
be> sysctl -w vm.max_map_count=2000000
# 永久修改:
be> vi /etc/sysctl.conf
vm.max_map_count=2000000
4.2.5 运行BE
be> sh /apps/doris/be/bin/start_be.sh --daemon

五、在FE中添加BE

在FE环境中安装mysql客户端:

fe> yum install mysql

然后进入通过mysql客户端进入doris配置backends:

fe> mysql -h 127.0.0.1 -P9030 -uroot
# 9050为be的心跳端口heartbeat_service_port
mysql> ALTER SYSTEM ADD BACKEND "192.168.56.103:9050";
mysql> ALTER SYSTEM ADD BACKEND "192.168.56.104:9050";
mysql> ALTER SYSTEM ADD BACKEND "192.168.56.105:9050";
 
# 查询节点状态 Alive属性true即为正常
mysql> show PROC '/backends';

添加后可以通过FE网站查看:

六、开始使用doris

fe> mysql -h 127.0.0.1 -P9030 -uroot
mysql> create database db_test;
mysql> use db_test;
 
mysql> create table tbl_user_sync
(
    _id varchar(32) default '',
    user_name varchar(32) default ''
)
duplicate key(_id)
distributed by hash(_id) buckets 10
properties("replication_num"="1");
 
mysql> insert into tbl_user_sync values('1','bob');
 
mysql> select * from tbl_user_sync;
+------+-------------+
| _id  | user_name   |
+------+-------------+
| 1    | bob         |
+------+-------------+

注意: 这里的属性 properties("replication_num"="1") 表示数据只存储一份,默认doris保存三份,如果基于开发或者兴趣使用,创建了少于3个的BE,则需要在这里显示设置保存份数,且要小于等于BE的个数。

七、参考

最新Doris安装部署(保姆级教程)

virtualbox结合nat和host-only设置固定ip的环境

桥接与NAT连接的区别

NAT模式、路由模式、桥接模式的区别

猜你喜欢

转载自blog.csdn.net/tirestay/article/details/131409852