天天看点

centOS 6.5上搭建zookeeper+Dubbo+tomcat

这几天正好在学习搭建zookeeper+dubbo+tomcat

一 Dubbox简介

Dubbox 是一个分布式服务框架,其前身是阿里巴巴开源项目Dubbo ,被国内电商及互联网项目中使用,后期阿里巴巴停止了该项目的维护,当当网便在Dubbo基础上进行优化,并继续维护,为了与原有的Dubbo区分,故将其命名为Dubbox。

Dubbox 致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。简单的说,dubbox就是个服务框架,如果没有分布式的需求,其实是不需要用的,只有在分布式的时候,才有dubbox这样的分布式服务框架的需求,并且本质上是个服务调用的东东,说白了就是个远程服务调用的分布式框架。

二 Zookeeper 介绍

官方推荐使用 zookeeper 注册中心。注册中心负责服务地址的注册与查找,相当于目录服务,服务提供者和消费者只在启动时与注册中心交互,注册中心不转发请求,压力较小。

Zookeeper 是 Apacahe Hadoop 的子项目,是一个树型的目录服务,支持变更推送,适合作为Dubbox 服务的注册中心,工业强度较高,可用于生产环境。

三 开始搭建环境

3.1准备工作

centOS 6.5 tomcat7 dubbo zookeeper-3.4.6

3.2开始安装

首先需要在虚拟机上安装centOS6.5 () +jdk

虚拟机的安装,以及操作系统的安装本文章不做介绍,下面开始介绍JDK的安装

在介绍JDK安装时,我们要知道secureCRT这款软件,因为在生产环境中,一般的程序员是接触不到服务器的,给我们的只有连接服务器的账号和密码,利用这款软件可以与虚拟机服务器相连.

我们可以先配置一个静态IP.避免每次ip地址更换都要重新创建Session登录

配置静态IP:cd /etc/sysconfig/network-scripts,vi ifcfg-ens33编辑配置 (在写入文件时,请把后面括号里的说明去掉)

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static          (dhcp改成static)
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=e33d8122-8efc-49dc-b362-fa3f705acac9
DEVICE=ens33
ONBOOT=yes                  (no改成yes)
IPADDR=192.168.112.127               (此虚拟分配的IP)
NETMASK=255.255.255.0            (此虚拟机子网掩码)
GATEWAY=192.168.112.2             (此虚拟机对应的网关,也就是上一部设置的网关)
BOOTPROTO=static          (dhcp改成static)
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=e33d8122-8efc-49dc-b362-fa3f705acac9
DEVICE=ens33
ONBOOT=yes                  (no改成yes)
IPADDR=192.168.25.128               (此虚拟分配的IP)
NETMASK=255.255.255.0            (此虚拟机子网掩码)
GATEWAY=192.168.112.2             (此虚拟机对应的网关,也就是上一部设置的网关)

           

window上传文件到Linux,首先打开要上传文件的位置 lcd + 要上传文件的路径

centOS 6.5上搭建zookeeper+Dubbo+tomcat

Linux打开要保存文件的位置

centOS 6.5上搭建zookeeper+Dubbo+tomcat

alt+P键 打开 带有 sftp>输入样式的

centOS 6.5上搭建zookeeper+Dubbo+tomcat
centOS 6.5上搭建zookeeper+Dubbo+tomcat

put + 文件名 ,上传JDK到/usr/local/software下,这个software是我自己创建的文件夹

tar -zxvf jdk-8u191-linux-x64.tar.gz 解压

centOS 6.5上搭建zookeeper+Dubbo+tomcat

解压完成后software文件夹中有两个文件,一个是解压后的文件夹,一个是解压前的压缩包

mv /usr/local/software/jdk1.8.0_191 /usr/local/src/java/jdk1.8.0_191

上面这句话是将jdk这个解压包移动到另一个地方(也可以不移动)

配置JDK环境变量

vi /etc/profile 采用全局设置方法,修改etc/profile,它是是所有用户的共用的环境变量

centOS 6.5上搭建zookeeper+Dubbo+tomcat

小插曲:reboot重启后查看 java -version 发现报错,原来自己安装的centos6.5是32位.安装的jdk是64位

centOS 6.5上搭建zookeeper+Dubbo+tomcat

getconf LONG_BIT 查看操作系统的位数

centOS 6.5上搭建zookeeper+Dubbo+tomcat

安装zookeeper

跟安装JDK时候一样,将zookeeper解压到Java中

进入 zookeeper-3.4.6 目录,创建 data 文件夹

进入conf目录 ,把 zoo_sample.cfg 改名为 zoo.cfg

cd conf

mv zoo_sample.cfg zoo.cfg

centOS 6.5上搭建zookeeper+Dubbo+tomcat

为了方便启动配置到Linux环境变量中

centOS 6.5上搭建zookeeper+Dubbo+tomcat

安装tomcat7 +dubbo

首先将tomcat和dubbo上传到centOS中

3.访问及防火墙

此时通过本机可以访问,如果从其他主机访问该8080端口,有可能因为防火墙问题而没有开放,如果是阿里云或者腾讯云,都可以在类似安全组中通过配置端口来达到目的,比如开放 tcp 8080 端口即可。如果是自己的主机,可以通过修改本机的防火墙加入8080即可。

vi /etc/sysconfig/iptables

centOS 6.5上搭建zookeeper+Dubbo+tomcat
centOS 6.5上搭建zookeeper+Dubbo+tomcat

/etc/rc.d/init.d/iptables save #永久保存当前开始的端口

最后把dubbo-admin.war 放入 tomcat的webapps下

centOS 6.5上搭建zookeeper+Dubbo+tomcat

关闭防火墙

关闭命令: service iptables stop

永久关闭命令: chkconfig iptables off

启动tomcat

访问

centOS 6.5上搭建zookeeper+Dubbo+tomcat

测试安装结果