如何,保证集群下的web应用文件同步

如何,保证集群下的web应用文件同步,第1张

1)比方说我先在有5台服务器,想做一个集群,是不是意味着我要把应用程序在5台服务器上分别部署?如果这样的话,session能使先共享吗?

根据中间件不同部署方式也不同。tomcat下面就要分别部署了,weblogic支持分别部署,也支持统一部署(两种方式各有优缺点,推荐分别部署)。

中间件基本上都支持session共享复制,不过实现方式可能有点区别(有的是基于容器,有的是基于memcache等等)。可参考之前的问题(关于jboss的):

1、在133133102(monitor)上安装ntp server。

root@monitor:~# apt-get install ntp

2、修改/etc/ntpconf如下:(参考了http://blogsinacomcn/s/blog_6b86fdc50100ojfnhtml)

# /etc/ntpconf, configuration for ntpd; see ntpconf(5) for help

driftfile /var/lib/ntp/ntpdrift

# Enable this if you want statistics to be logged

#statsdir /var/log/ntpstats/

statistics loopstats peerstats clockstats

filegen loopstats file loopstats type day enable

filegen peerstats file peerstats type day enable

filegen clockstats file clockstats type day enable

# Specify one or more NTP servers

# Use servers from the NTP Pool Project Approved by Ubuntu Technical Board

# on 2011-02-08 (LP: #104525) See http://wwwpoolntporg/joinhtml for

# more information

#server 0ubuntupoolntporg

#server 1ubuntupoolntporg

#server 2ubuntupoolntporg

#server 3ubuntupoolntporg

# Use Ubuntu's ntp server as a fallback

#server ntpubuntucom

server 12712710 minpoll 4 maxpoll 5

fudge 12712710 stratum 2

# Access control configuration; see /usr/share/doc/ntp-doc/html/accopthtml for

# details The web page <http://supportntporg/bin/view/Support/AccessRestrictions>

# might also be helpful

#

# Note that "restrict" applies to both servers and clients, so a configuration

# that might be intended to block requests from certain clients could also end

# up blocking replies from your own upstream servers

# By default, exchange time with everybody, but don't allow configuration

#restrict -4 default kod notrap nomodify nopeer noquery

#restrict -6 default kod notrap nomodify nopeer noquery

restrict -4 default kod nomodify noper

restrict -6 default kod nomodify noper

# Local users may interrogate the ntp server more closely

restrict 127001

restrict ::1

# Clients from this (example!) subnet have unlimited access, but only if

# cryptographically authenticated

#restrict 1921681230 mask 2552552550 notrust

# If you want to provide time to your local subnet, change the next line

# (Again, the address is an example only)

#broadcast 192168123255

# If you want to listen to time broadcasts on your local subnet, de-comment the

# next lines Please do this only if you trust everybody on the network!

#disable auth

#broadcastclient

3、运行ntpdate命令

首先重启一下ntp服务

root@monitor:/etc#/etc/initd/ntp restart

再运行

root@monitor:/etc# ntpdate -q 127001

得到

server 127001, stratum 3, offset -0000003, delay 002565

23 Sep 17:12:00 ntpdate[11502]: adjust time server 127001 offset -0000003 sec

4、将其他节点13313310的时间与133133102同步

在其他每一个节点运行命令

root@slave1:~# ntpdate 133133102

这时候发现节点间的时间同步了,但ntpdate只在开机运行,我们若要设置为1小时同步一次,那么进行第5步

5、将其他节点13313310的时间定期与133133102同步

安装完以后使用crontab来自动更新时间:

#crontab -e

添加如下行:

/1 /usr/sbin/ntpdate 133133102

这行的意思是每个小时与与133133102时间同步一次。

6、通过date命令发现所有节点时间都一致了

问题:

部分主机宕机后,CDH集群启动成功,但是有某些主机提示“无法找到主机的NTP 服务,或该服务未响应时钟偏差请求”

解决步骤:

1先同步服务器时钟

执行命令:

service ntpd stop  停止ntp服务

ntpdate  主机ip   同步主机时钟

service ntpd start  启动ntp服务

service ntpd status  查看服务启动情况

ntpq -pn  查看同步的服务器IP

ntpstat  查看同步结果

2在CDH界面停止主机上的角色

3进入该主机的CDH安装目录执行 /cloudera-scm-agent restart (即需要在问题主机上重启cloudera-scm-agent服务)

目录在 etc/initd下

4等待CDH界面刷新,问题解决,大概等3  5分钟就看不到时钟偏差问题了。

解决思路:

1同步服务器时钟是为了确定是否是ntp服务本身的问题。

2发现服务器时钟没有问题,所以不是ntp服务本身的问题。

其中这句话说,如果该命令失败、NTP 未与服务器同步,或主机的 NTP 后台程序未运行或无法联系,该测试将返回运行状况“不良”。

所以可能是CDH集群本身没有接收到时间同步服务器的结果,于是执行重启agent的命令。至此问题解决!

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 如何,保证集群下的web应用文件同步

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情