部署hadoop生产集群时为了域名转换需要哪些配置
一、实验环境:
Mac
os
下
VirtualBox中三台安装centos
63虚拟机
主机名
别名
IP地址
系统版本
角色
lhmaster
lhmasterlihuihadoop
19216814
Centos
63
master
lhslave01
lhslave01lihuihadoop
19216815
Centos
63
slave
lhslave02
lhslave02lihuihadoop
19216816
Centos
63
slave
配置说明:DNS服务器配置在lhmaster(master)节点上,对lhmaster、lhslave01、lhslave02节点的主机名进行解析。
二、安装配置DNS
1安装bind软件包
检测bing是否安装,如图所示
未安装执行yum进行安装,如图
安装结果,如图
安装bing其他相关包,如下:
安装结果:如图
2修改bind配置文件
1)
执行命令
vim
/etc/namedconf
修改配置文件namedconf
修改前,如图
修改后:
2) 修改配置文件namedrfc1912zones,
在/etc/namedconf
玩呢间最后是namedrfc1912zones的路径
include
"/etc/namedrfc1912zones"
执行命令
vim
/etc/namedrfc1912zones
修改结果如下图:
3) 创建上一步中的
域名配置文件lihuihadoopzone和反向配置文件1168192in-addrzone
如下命令:
[root@lhmaster
lihui]#
cd
/var/named
[root@lhmaster
named]#
ls
chroot
dynamic
namedempty
namedloopback
data
namedca
namedlocalhost
slaves
[root@lhmaster
named]#
cp
-p
namedlocalhost
lihuihadoopzone
[root@lhmaster
named]#
cp
-p
namedlocalhost
1168192in-addrzone
[root@lhmaster
named]#
ls
1168192in-addrzone
dynamic
namedempty
slaves
chroot
lihuihadoopzone
namedlocalhost
data
namedca
namedloopback
--修改lihuihadoopzone和1168192in-addrzone
lihuihadoopzone中添加正向配置,如下:
1168192in-addrzone中添加反向配置,如下:
4) 修改各节点/etc/resolvconf文件
在每个节点的
/etc/resolvconf
文件中加入
服务器ip地址
本次测试加入:nameserver
19216814
注意:目前网上大部分资料中都是如此设置,设置完后运行没有什么问题,但是一旦重启机器后,/etc/resolvconf
会恢复原值,
所以使用另一种方式就是修改
/etc/sysconfig/network-scripts/ifcfg-eth0
这个文件:在其中加入
DNS1=1921684
这样设置后,/etc/resolvconf里面根本就不需要设置。service
network
restart 后,可以发现/etc/resolvconf里面就有刚才加入的dns的解析ip了。
不过对于其他的系统是否也是这样的,要是遇到同样的问题。就这样设一下试试
3验证测试
硬件用路由器,软件嘛,操作系统用WIN2003 server enterprise 企业版,推荐一并安装R2升级包,所有机器组局域网,用一台千兆网卡做域控,架设流媒体服务器,其他机做为域成员加入进来,内网IP各用各的,外网用端口映射到一个IP,用域控做网络流量负载平衡,域控机器配置要强,如果你网络流量大,建议用专业级服务器,至强+2Gb+SCSI硬盘之类,看你环境要求了,如果必要可以上双至强,再用一台512mb内存的p4 20G以上机做备份域控,这样主域控上下线或重启或出故障不影响域内成员正常工作,备份域控凑合就可以了
求采纳
您好,
1、某些情况下,您可以在没有 Microsoft Windows NT 40、Windows 2000 或 Windows Server 2003 域控制器的环境中部署 Windows 2000 和 Windows Server 2003 群集节点。此方案要求至少将一个群集节点配置为域控制器。不过,在两节点群集中,如果一个节点是域控制器,则另一个节点也必须是域控制器。如果这是 Windows 2000 Datacenter 或 Windows Server 2003 Datacenter Edition Server 四节点群集,则不必将所有四个节点都配置为域控制器。但是,由于最佳做法是至少有一个备份域控制器,所以最好将其余三个节点中的至少一个节点配置为域控制器。由于 Windows 2000 和 Windows Server 2003 依赖“域名系统”(DNS),因此,如果没有支持动态更新或 SRV 记录的另一个 DNS 服务器,那么每个域控制器都必须是 DNS 服务器。
2、要使 Windows 群集正常运行(群集服务在每个节点上启动),组成群集的节点必须能够验证群集服务域帐户,该帐户是您在 Windows 群集安装期间配置的。要达到这一目的,每个节点必须能够与域控制器建立安全通道,以验证此帐户。如果节点不能验证帐户,群集服务就不会启动。这一规则同样适用于必须先验证帐户才能启动服务的其他群集程序,例如,Microsoft SQL Server 和 Microsoft Exchange。
3、如果您的群集部署中没有与 Windows NT 40 域、Windows 2000 域或 Windows Server 2003 域的链接,则必须将群集节点配置为域控制器,这样才能始终对群集服务帐户进行验证,从而使群集正常运行。
4、如果群集节点与域控制器之间的连接使得链接缓慢或不可靠,应考虑让域控制器与群集共存,或将群集节点配置为域控制器。
linux服务器集群平台的搭建比较简单,有专门的均衡软件,比如lvs,lvs是一个集群系统,由很多服务器组成,可以根据需要,把它门分为三层,一层是前端机,用于均衡,相当于公平为系统分配工作,二层是服务器群,比如web服务器群,DNS,mail群等,这些就是接待员,把均衡器分配的工作进行处理,第三层是存储设备,用于存储数据,相当于档案库。
知道这些后,要搭建就非常容易,有现成的软件,比如我有四台web服务器,2台数据库,1台前置机 ,安装linux系统,安装lvs软件,比如
heartbeat-214-9el5i386rpm
heartbeat-ldirectord-214-9el5i386rpm
libnet-114-3el5i386rpm
heartbeat-devel-214-9el5i386rpm
heartbeat-pils-214-10el5i386rpm
perl-MailTools-177-1el5noarchrpm
heartbeat-gui-214-9el5i386rpm
heartbeat-stonith-214-10el5i386rpm
当然还需要配置,你可以自己百度有关lvs集群的详细安装说明。希望能帮助你。
环境:
操作系统均为:CentOS 51
Apache2X服务器一台:IP地址1921682324;安装路径/usr/local/apache;
Tomcat6服务器一台:IP地址1921682325;安装路径/usr/local/tomcat;
Tomcat6服务器一台:IP地址1921682326;安装路径/usr/local/tomcat;
配置:
Apache安装:
#/configure --prefix=/usr/local/apache --enable-modules=so --enable-mods-shared=all --enable-proxy --enable-proxy-connect --enable-proxy-ftp --enable-proxy-http --enable-proxy-ajp --enable-proxy-balancer --enable-rewrite
注释:激活tomcat集群需要的 enable-proxy,enable-proxy-http,enable-proxy-connect,enable-proxy-ajp和enable-proxy-balancer,其中proxy-ajp和proxy-balancer必须依赖proxy,如果是自定义的编译除了以上几个必须的模块外,mod_status也要编译进去,切记。enable-proxy-ftp可以不编译。
#make;make install
制作Apache启动项:
#cp support/apachectl /etc/rcd/initd/httpd
#vi /etc/rcd/initd/httpd
添加以下内容:(包括#号)
# Startup script for the Apache Web Server
# chkconfig: 2345 85 15
# description: Apache is a World Wide Web server It is used to server
# HTML files and CGI
# processname: httpd
# pidfile: /usr/local/apache/log/httpdpid
# config: /usr/local/apache/conf/httpdconf
增加服务项
#chkconfig --add httpd
#chmod 755 /etc/rcd/initd/httpd
#chkconfig --level 345 httpd on
JDK安装:
#chmod a+x jdk-6u4-linux-i586-rpmbin
#/jdk-6u4-linux-i586-rpmbin
JAVA环境变量设置:
#vi /etc/profile
在文件最后添加以下内容:
JAVA_HOME=/usr/java/jdk160_04
CLASSPATH=:$JAVA_HOME/lib/toolsjar:$JAVA_HOME/lib/dtjar
PATH=$JAVA_HOME/bin:$PATH
CATALINA_HOME=/usr/local/tomcat
export JAVA_HOME CLASSPATH PATH CATALINA_HOME
执行如下命令使环境变量生效:
source /etc/profile
测试配置是否成功:
java –version
Tomcat安装:
#wget [url]http://apachemirrorphpchinacom/tomcat/tomcat-6/v6016/bin/apache-tomcat-6016targz[/url]
#tar zxvf apache-tomcat-6016targz
#mv apache-tomcat-6016 /usr/local/tomcat
Tomcat随机启动:
#vi /etc/rclocal
添加以下内容:
/usr/local/tomcat/bin/startupsh
tomcat6配置文件serverxml:
把
<!-- You should set jvmRoute to support load-balancing via AJP ie :
<Engine name="Standalone" defaultHost="localhost" jvmRoute="jvm1">
-->
<Engine name="Catalina" defaultHost="localhost">
改成
<!-- You should set jvmRoute to support load-balancing via AJP ie :
-->
<Engine name="Standalone" defaultHost="localhost" jvmRoute="tomcatX">
<!--
<Engine name="Catalina" defaultHost="localhost">
-->
说明:
第一台tomcat就把jvmRoute="tomcat1"
第二台tomcat就把jvmRoute="tomcat2"
把
<!--
<Cluster className="orgapachecatalinahatcpSimpleTcpCluster"/>
-->
去掉注释变为
<Cluster className="orgapachecatalinahatcpSimpleTcpCluster"/>
群集详细配置
<Cluster className="orgapachecatalinahatcpSimpleTcpCluster"
channelSendOptions="8">
<Manager className="orgapachecatalinahasessionDeltaManager"
expireSessionsOnShutdown="false"
notifyListenersOnReplication="true"/>
<Channel className="orgapachecatalinatribesgroupGroupChannel">
<Membership className="orgapachecatalinatribesmembershipMcastService"
address="228004"
port="45564"
frequency="500"
dropTime="3000"/>
<Receiver className="orgapachecatalinatribestransportnioNioReceiver"
address="auto"
port="4000"
autoBind="100"
selectorTimeout="5000"
maxThreads="6"/>
<Sender className="orgapachecatalinatribestransportReplicationTransmitter">
<Transport className="orgapachecatalinatribestransportnioPooledParallelSender"/>
</Sender>
<Interceptor className="orgapachecatalinatribesgroupinterceptorsTcpFailureDetector"/>
<Interceptor className="orgapachecatalinatribesgroupinterceptorsMessageDispatch15Interceptor"/>
</Channel>
<Valve className="orgapachecatalinahatcpReplicationValve"
filter=""/>
<Valve className="orgapachecatalinahasessionJvmRouteBinderValve"/>
<Deployer className="orgapachecatalinahadeployFarmWarDeployer"
tempDir="/tmp/war-temp/"
deployDir="/tmp/war-deploy/"
watchDir="/tmp/war-listen/"
watchEnabled="false"/>
<ClusterListener className="orgapachecatalinahasessionJvmRouteSessionIDBinderListener"/>
<ClusterListener className="orgapachecatalinahasessionClusterSessionListener"/>
</Cluster>
配置应用的webxml:
在每个webapps应用中,修改配置文件webxml文件 添加元素<distributable/>
在webxml文件中<web-app>元素下增加以下内容:
<!--此应用将与群集服务器复制Session-->
<distributable/>
具体修改如下:
修改前:
<xml version="10" encoding="ISO-8859-1">
<web-app xmlns="[url]http://javasuncom/xml/ns/javaee[/url]"
xmlns:xsi="http://wwww3org/2001/XMLSchema-instance"
xsi:schemaLocation="http://javasuncom/xml/ns/javaee [url]http://javasuncom/xml/ns/javaee/web-app_2_5xsd[/url]"
version="25">
</web-app>
修改后:
<xml version="10" encoding="ISO-8859-1">
<web-app xmlns="[url]http://javasuncom/xml/ns/javaee[/url]"
xmlns:xsi="http://wwww3org/2001/XMLSchema-instance"
xsi:schemaLocation="http://javasuncom/xml/ns/javaee [url]http://javasuncom/xml/ns/javaee/web-app_2_5xsd[/url]"
version="25">
<!--此应用将与群集服务器复制Session-->
<distributable/>
</web-app>
配置apache的ajp负载均衡功能:
确保将以下Module的注释去掉
LoadModule proxy_module modules/mod_proxyso
LoadModule proxy_connect_module modules/mod_proxy_connectso
LoadModule proxy_ftp_module modules/mod_proxy_ftpso
LoadModule proxy_http_module modules/mod_proxy_httpso
LoadModule proxy_ajp_module modules/mod_proxy_ajpso
LoadModule proxy_balancer_module modules/mod_proxy_balancerso
LoadModule status_module modules/mod_statusso
增加以下内容:
# Proxypass Config
Include conf/extra/httpd-modproxyconf
建立文件httpd-modproxyconf输入内容:
<Location /server-status>
SetHandler server-status
Order Deny,Allow
Deny from all
Allow from all
</Location>
<Location /balancer-manager>
SetHandler balancer-manager
Order Deny,Allow
Deny from all
Allow from all
</Location>
ProxyRequests Off
ProxyPass / balancer://tomcatcluster stickysession=jsessionid nofailover=On
<Proxy balancer://tomcatcluster>
BalancerMember [url]http://1921682325:8080[/url] loadfactor=1
BalancerMember [url]http://1921682326:8080[/url] loadfactor=2
</Proxy>
注释:
ProxyRequests Off 表示启用反向代理,必须开启;
ProxyPass为代理转发的Url,即将所有访问/的请求转发到群集balancer://tomcatcluster,这里为/即将所有访问/的请求转发到群集balancer://tomcatcluster的/test目录;
BalancerMember为群集的成员,即群集服务器1或2,负载均衡服务器会根据均衡规则来将请求转发给BalancerMember;
调试负载均衡集群系统:
访问apache服务器的web服务:[url]http://1921682324/balancer-manager[/url]
如果显示负载均衡有关信息则说明成功了,接着可以访问[url]http://1921682324/[/url]即访问到了tomcat的应用
必须先启动Tomcat服务再启动Apache服务!
参考文档:
[url]http://tomcatapacheorg/tomcat-60-doc/cluster-howtohtml[/url]
[url]http://tomcatapacheorg/tomcat-60-doc/balancer-howtohtml[/url]
[url]http://manchinaunixnet/newsoft/ApacheMenual_CN_22new/mod/mod_proxyhtml[/url]
[url]http://manchinaunixnet/newsoft/ApacheMenual_CN_22new/mod/mod_proxy_balancerhtml[/url]
很多组织机构慢慢的在不同的服务器和地点部署SQL Server数据库——为各种应用和目的——开始考虑通过SQL Server集群的方式来合并。
将SQL Server实例和数据库合并到一个中心的地点可以减低成本,尤其是维护和软硬件许可证。此外,在合并之后,可以减低所需机器的数量,这些机器就可以用于备用。
当寻找一个备用,比如高可用性的环境,企业常常决定部署Microsoft的集群架构。我常常被问到小的集群(由较少的节点组成)SQL Server实例和作为中心解决方案的大的集群哪一种更好。在我们比较了这两个集群架构之后,我让你们自己做决定。
什么是Microsoft集群服务器
MSCS是一个Windows Server企业版中的内建功能。这个软件支持两个或者更多服务器节点连接起来形成一个“集群”,来获得更高的可用性和对数据和应用更简便的管理。MSCS可以自动的检查到服务器或者应用的失效,并从中恢复。你也可以使用它来(手动)移动服务器之间的负载来平衡利用率以及无需停机时间来调度计划中的维护任务。
这种集群设计使用软件“心跳”来检测应用或者服务器的失效。在服务器失效的事件中,它会自动将资源(比如磁盘和IP地址)的所有权从失效的服务器转移到活动的服务器。注意还有方法可以保持心跳连接的更高的可用性,比如站点全面失效的情况下。
MSCS不要求在客户计算机上安装任何特殊软件,因此用户在灾难恢复的经历依赖于客户-服务器应用中客户一方的本质。客户的重新连接常常是透明的,因为MSCS在相同的IP地址上重启应用、文件共享等等。进一步,为了灾难恢复,集群的节点可以处于分离的、遥远的地点。
在集群服务器上的SQL Server
SQL Server 2000可以配置为最多4个节点的集群,而SQL Server 2005可以配置为最多8个节点的集群。当一个SQL Server实例被配置为集群之后,它的磁盘资源、IP地址和服务就形成了集群组来实现灾难恢复。
SQL Server 2000允许在一个集群上安装16个实例。根据在线帮助,“SQL Server 2005在一个服务器或者处理器上可以支持最多50个SQL Server实例,”但是,“只能使用25个硬盘驱动器符,因此如果你需要更多的实例,那么需要预先规划。”
注意SQL Server实例的灾难恢复阶段是指SQL Server服务开始所需要的时间,这可能从几秒钟到几分钟。如果你需要更高的可用性,考虑使用其他的方法,比如log shipping和数据库镜像。
单个的大的SQL Server集群还是小的集群
下面是大的、由更多的节点组成的集群的优点:
◆更高的可用新(更多的节点来灾难恢复)。
◆更多的负载均衡选择(更多的节点)。
◆更低廉的维护成本。
◆增长的敏捷性。多达4个或者8个节点,依赖于SQL版本。
◆增强的管理性和简化环境(需要管理的少了)。
◆更少的停机时间(灾难恢复更多的选择)。
◆灾难恢复性能不受集群中的节点数目影响。
下面是单个大的集群的缺点:
◆集群节点数目有限(如果需要第9个节点怎么办)。
◆在集群中SQL实例数目有限。
◆没有对失效的防护——如果磁盘阵列失效了,就不会发生灾难恢复。
◆使用灾难恢复集群,无法在数据库级别或者数据库对象级别,比如表,创建灾难恢复集群。
虚拟化和集群
虚拟机也可以参与到集群中,虚拟和物理机器可以集群在一起,不会发生问题。SQL Server实例可以在虚拟机上,但是性能可能会受用影响,这依赖于实例所消耗的资源。在虚拟机上安装SQL Server实例之前,你需要进行压力测试来验证它是否可以承受必要的负载。
在这种灵活的架构中,如果虚拟机和物理机器集群在一起,你可以在虚拟机和物理机器之间对SQL Server进行负载均衡。比如,使用虚拟机上的SQL Server实例开发应用。然后在你需要对开发实例进行压力测试的时候,将它灾难恢复到集群中更强的物理机器上。
集群服务器可以用于SQL Server的高可用性、灾难恢复、可扩展性和负载均衡。单个更大的、由更多的节点组成的集群往往比小的、只有少数节点的集群更好。大个集群允许更灵活环境,为了负载均衡和维护,实例可以从一个节点移动到另外的节点。
不难,硬件用路由器,软件嘛,操作系统用WIN2003 server enterprise 企业版,推荐一并安装R2升级包,所有机器组局域网,用一台千兆网卡做域控,架设流媒体服务器,其他机做为域成员加入进来,内网IP各用各的,外网用端口映射到一个IP,用域控做网络流量负载平衡,域控机器配置要强,如果你网络流量大,建议用专业级服务器,至强+2Gb+SCSI硬盘之类,看你环境要求了,如果必要可以上双至强,再用一台512mb内存的p4 20G以上机做备份域控,这样主域控上下线或重启或出故障不影响域内成员正常工作,备份域控凑合就可以了,按我上面的要求就行,当然,有钱可以用好的
如果你安全性要求高,建议路由前端用普通P4+512Mb内存机器架ISA2004 server组防火墙,配置的好效果比一般的硬件防火墙要好,完全不影响网络环境运行,域内成员可以裸奔不怕毒和黑
至于域内成员机,如果仅全力供应片源,当前主流家用机型就够用了
0条评论