服务器集群搭建、管理、快速部署
1.修改主机名
搭建集群的第一个工作,得知道每台主机的名字,也就是给每台机器起名字(后续通过名字来取得联系)
centos 下修改主机名
[root@localhost ~]# vim /etc/sysconfig/newwork
NETWORKING = yes
HOSTNAME = simon
ubuntu 下修改主机名
[root@localhost ~]# vim /etc/hostname
simon
2.搭建dns服务器(下面是通过修改host文件来实现,真是环境中可以DNS来配置)
我们现在需要每台服务器之间可以通信,把每台机器的hosts配置一下:
[root@localhost ~]# ifconfig //查看IP地址
[root@localhost ~]# vim /etc/hosts
192.168.1.104 //ubuntu
192.168.1.104 ms //管理服务器 添加到末尾
192.168.1.119 db //数据库服务器
192.168.1.120 test //测试服务器
192.168.1.121 product //产品服务器
注:需要重启服务器(shutdown -r now),然后就可以通过主机名来联系了
[root@simon ~]# ping ubuntu
PING ubuntu (192.168.1.104) 56(84) bytes of data.
64 bytes from ubuntu (192.168.1.104):icmp_sep=1 ttl=64 time=2.16 ms
64 bytes from ubuntu (192.168.1.104):icmp_sep=2 ttl=64 time=0.291 ms
64 bytes from ubuntu (192.168.1.104):icmp_sep=7 ttl=64 time=0.252 ms
//ubuntu ping statistics
7 packets transmitted, 7 recerved,0% packet loss,time 6818ms
rtt min/avg/max/mdev = 0.252/0.553/2.163/0.657 ms
3.服务器之间互相认识(可以相互传输文件scp拷贝文件)
//这里不需要写IP地址 myuser 是ubuntu服务器的用户名
[root@simon ~]# scp ./install.log myuser@ubuntu:/home/
产品服务器的IP是直接暴露在外的,不安全,为了安全就要把密码登陆关闭掉(db,test,product),但是我们关闭密码登陆了,我们又是如何登陆的呢?我们如何管理呢?我们自己必须可以登陆啊,openssh(我们现在使用的是XSHELL)我们就必须使用公钥和私钥来登陆
ms 服务器:可以登陆 其他都不能登陆,只能在内网集群内登陆
防火墙来设置只有集群或局域网登陆
还可以使用密钥登陆
4.创建密钥、公钥的方法:
[root@localhost ~]# ssh-keygen -t rsa //后面直接回车即可
Generating public/pricate rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): //密钥生成的位置
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
2f:27:12:19:c4:16:e6:16:6a:24:0c:5e:3a:43:26:e3 root@localhost.localdomain
The key's randomart image is:
+--[ RSA 2048]----+
|+=....=. |
|*.+o =o. |
| E o.+ |
| o. . o |
| o S |
| . . |
| . o o |
| . + |
| |
+-----------------+
[root@localhost ~]# ls
anaconda-ks.cfg install.log install.log.syslog
[root@localhost ~]# cd ./.ssh/
[root@localhost .ssh]# ls
id_rsa id_rsa.pub
[root@localhost .ssh]# cat id_rsa.pub >> authorized_keys
[root@localhost .ssh]# ls
authorized_keys id_rsa id_rsa.pub
[root@localhost .ssh]# cp id_rsa /home/ //把私钥复制到/home下,以便下载到本地
id_rsa 私钥 id_rsa.pub 公钥 ,密码登陆:拿到公钥就可以互相登陆
把公钥上传到其他三个服务器(db,test,product)
scp id_rsa.pub root@db:~/
scp id_rsa.pub root@test:~/
scp id_rsa.pub root@product:~/
重启服务器
ms 服务器来登陆其他服务器
ssh simon@db;//这样就能登陆db的服务器了
5.关闭密码登陆(有必要的话,利用防火墙来设置)
[root@simon ~]# cd /ect/ssh/
[root@simon ssh]# vim sshd_config
PasswordAuthentication on //把yes改成on