互联网架构师之路 —— 服务器集群搭建、管理、与快速部署
中大型网站,访问量达到一定的量时,网站始终能承受高并发请求,能抵御一般的网络攻击,任何一台服务器的退服不影响整个集群的运作,并且能对各服务器的运行情况作出实时监控,搭建一个高可用的网站服务器集群就必不可少!
服务器集群就是指将很多服务器集中起来一起进行同一种服务,在客户端看来就像是只有一个服务器。集群可以利用多个计算机进行并行计算从而获得很高的计算速度,也可以用多个计算机做备份,从而使得任何一个机器坏了整个系统还是能正常运行。
模拟服务器集群搭建,以4台Linux的服务器架设一个规模集群
4台的服务器集群的搭建、管理和部署,为以后大型集群打下基础,后期我们可以随时的扩展我们的服务器集群,就像牲口干活一样,一匹马拉不动,可以由多匹马来拉!
首先,让4台服务器之间相互认识对方,不认识怎么团队合作对吧!
配置host文件,服务器命名
在Linux中有一个host文件 ,每一台机器都会有IP地址,搭建集群的第一个工作,得知道每台机器的名字(hostname),也就是给每台机器起名字!
在每台机器,把这台机器的主机名改掉在etc下有一个hostsname 修改服务器名字
现在把4个主机名都修改之后,现在就可以识别自己登陆的哪一台,第二,我们现在需要每台服务器之间可以认识,把每台机器的hosts配置一下
使用ipconfig 命令查询每一台机器的IP地址
现在把每台机器的hosts文件来修改一下
127.0.0.1 localhost
127.0.0.1 MS
192.168.38.129 MS
192.168.38.130 DB1
192.168.38.131 T1
192.168.38.132 P1
修改了之后 我们ping T1 可以PING通的话,说明现在这台机器认识T1这台机器了
其他的4台都可以实验,也可以ping自己,现在只修改了一个,剩下的把每台机器都同上依次修改,让他们相互之间都可以认识(ping
通)
文件传输
当我们所有的主机相互都认识之后,现在进到第一台机器中,(MS) 我们在MS机器上使用scp命令可以把新建的文件aa 传到T1 中 就可以scp T1 然后输入密码就可以传送了
现在我们在T1 中去查看aa文件就已经传输过来了
服务器访问限制,带着钥匙才允许访问
产品服务器的IP是直接暴露在外的,不安全,为了安全就要把密码登陆关闭掉(T1 P1 DB1)但是我们关闭密码登陆了,我们又是如何登陆呢?我们如何管理呢?我们自己必须可以登陆啊,openssh(我们现在使用的是XSHEEL)我们就必须使用公钥和私钥来登陆
达到我们现在必须在外网上只能MS登陆,T1 P1 DB1 只能在内网登陆,我们可以把T1 P1 DB 1 上只有公钥 私钥只在MS上,只要登陆了MS 就可以登陆其他的服务器,进行管理了(通过ssh隧道)
公钥与私钥的创建
Ssh –keygen –t rsa 创建秘钥
我们看到 .ssh 的隐藏文件 我们cd进入.ssh 执行命令 .ssh$ ls 会出现id_rsa 还有一个id_rsa pub
我们使用scp 命令把私钥传输给 T1 P1 DB1
在其他服务器中依次都要创建公钥私钥
我们把id _rsa.pub 这个文件>> 重定向到 authorized_keys
然后执行cat .ssh 就可以看到秘钥了
然后把服务器重新启动,登陆到MS服务器中
通过ssh 可以登陆到其他服务器中(如果传输文件的话密码都不用输入了哦)
接着把其他服务器的密码登陆关闭(T1 P1 DB1),在etc 下面的 sshd_config 文件 我们去配置这个文件 找到一个52行的yes 该为 no 然后重启 使用远程登陆,然后连接不上我们就成功了
如果MS服务器挂了的话,就没有办法登陆其他服务器了,可以把MS做一个备份,也可以在其他服务器上做防火墙,让其他服务器只能局域网访问,这样的话,我们一个基本的环境就搭建出来了。