1、综合架构组成说明
用户访问网站是使用HTTP协议80端口,查看80端口是否开启
代码语言:javascript复制netstat -lntup|grep 80
web服务器:让用户访问需要公网IP地址,域名解析,当访问网站的用户较多,同时写入增多消耗IO,服务器磁盘压力,为了缓解压力,用户在网站的注册等某些字符串信息,那就存储到数据库服务器,图片视频附件等存储在存储服务器,不够用是也可以配置多台服务器
随着用户使用的增多,数据库,存储服务器可能损坏,就要有一个备份服务器,将数据库及存储服务器中的数据定时备份到备份服务器中,为了防止备份服务器损坏,要考虑多台备份服务器,尽量不要把备份服务器服务器放在同一个地方,用户不断增加,一个web服务器明显不够,就要增加多台web服务器,减缓第一台web服务器的压力。
为了防止黑客非法入侵,配置防火墙服务
所以这个小型架构用户访问时先访问到防火墙,再到负载均衡设备,再到相应web服务器,根据存储的内容,在分配到数据库或者存储服务器,为了防止负载均衡设备出问题也可以配置多台,叫高可用架构。用户先访问一台,一台出问题了再访问第二台,首先访问的叫主服务器,第二台叫备服务器
用户访问网站一般浏览网站比写入数据到网站的行为更多,为了让用户读的更快,加速读取数据,配置缓存服务器,将磁盘重点,热点数据存储到缓存服务器,再存储到内存中,用户就可以从缓存服务器读取数据,写入也可以,如果读取的数据没有,再根据访问的内容访问数据库服务器或者存储服务器,缓存也可以多台。
数据分析服务器可以把存储的数据调取过来分析,也可以分析日志,也是分为个小型架构,叫消息队列结构,前端收集数据,后端进行数据分析,将结果以图形的方式展示出来,用awk或者ELK进行数据分析
已经部署了很多设备,为了实现对架构更好的管理,可以配置监控服务器,如果有其他多个机房也可以配置多个监控服务器,叫代理监控服务器,一个主的监控服务器,master表示,这样可以对所有企业里的服务器做监控管理。
结构的服务器设备太多,需要管理这一堆架构,实现部署配置需要,在配置一个批量管理服务器,跟每台服务器建立联系。
对于用户的访问渠道有了,对于运维人员,走另一条路,为了保证安全性,配置VPN服务器,让只有内部的人可以连接进入,类似于一个特殊通道,需要用户名密码验证,通过后就可以连接访问管理任意一台服务器。
为了防止内部人员做出破坏性行为,为内部人员访问做出监管,配置跳板机服务器,VPN,跳板机,批量管理,监控等服务器叫做网站运维人员管理网站的架构,通过这个架构,可以更好地方便对网站庞大的服务器监控管理,以及出现问题了可以记录用户的操作行为。 以上就完成了一个中小规模的完整企业架构。
2、综合架构规划
主机名称 | IP地址规划 | 需要的软件 | |
---|---|---|---|
防火墙服务器(firewalld) | 10.0.0.81(外网) | 172.16.1.81(内网) | |
负载均衡服务器(lb01) | 10.0.0.5 (外网) | 172.16.1.5(内网) | nginx keepalived |
负载均衡服务器(lb02) | 10.0.0.6 (外网) | 172.16.1.6(内网) | nginx keepalived |
web服务器(web01) | 10.0.0.7 (外网) | 172.16.1.7 (内网) | nginx |
web服务器(web02) | 10.0.0.8 (外网) | 172.16.1.8 (内网) | nginx |
web服务器(web03) | 10.0.0.9 (外网) | 172.16.1.9 (内网) | nginx |
数据库(db01) | 10.0.0.51(外网) | 172.16.1.51(内网) | MySQL |
存储服务器(nfs01) | 10.0.0.31(外网) | 172.16.1.31(内网) | nfs |
备份服务器(backup) | 10.0.0.41(外网) | 172.16.1.41(内网) | rsync |
批量管理服务器(m01) | 10.0.0.61(外网) | 172.16.1.61(内网) | ansible |
跳板机服务器(jumpserver) | 10.0.0.71(外网) | 172.16.1.71(内网) | jumpserver |
监控服务器(zabbix) | 10.0.0.72(外网) | 172.16.1.72(内网) | zabbix |
由于资源有限,只能用虚拟机进行模拟测试
1、优化配置模板主机
进行网卡配置
之前模板主机第一张网卡IP地址为10.0.0.200
所以在添加一张网卡,IP地址为171.16.1.200
a、添加网卡
b、配置网卡
代码语言:javascript复制vim /etc/sysconfig/network-scripts/ifcfg-eth1
或者输入 nmtui 图形化界面配置网卡
2、系统优化过程
1)模板机优化配置——hosts 文件配置
代码语言:javascript复制先备份一下hosts文件
cp /etc/hosts{.bak}
cat >/etc/hosts<<EOF
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6172.16.1.5 lb01
172.16.1.6 lb02
172.16.1.7 web01
172.16.1.8 web02
172.16.1.9 web03
172.16.1.51 db01 db01.etiantian.org
172.16.1.31 nfs01
172.16.1.41 backup
172.16.1.61 m01
172.16.1.71 jumpserver
172.16.1.72 zabbixEOF
2)模板机优化配置——跟新yum源
更改yum源
代码语言:javascript复制mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup && curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
yum install -y wget
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
3)模板机优化配置——关闭selinux
代码语言:javascript复制sed -i.bak 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
grep SELINUX=disabled /etc/selinux/config
4) 模板机优化配置——关闭iptables
代码语言:javascript复制systemctl stop firewalld
systemctl disable firewalld
systemctl ststus firewalld
5) 模板机优化配置——普通用户oldboy可以使用sudo
代码语言:javascript复制useradd oldboy
echo 123456|passwd --stain oldboy
echo "oldboy ALL=(ALL) NOPASSWD: ALL ">>/etc/sudoers
tail -1 /etc/sudoers
visudo -c
6) 模板机优化配置——英文字符集
代码语言:javascript复制先查看一下
echo $LANG
修改
localectl set-locale LANG="en_US.UTF-8"
重启
reboot
echo $LANG
7) 模板机优化配置——时间同步
代码语言:javascript复制下载软件
yum install -y ntpdate
echo '#time sync by lidao at 2020-12-03' >>/var/spool/cron/root 添加注释
echo '*/5 * * * * /usr/sbin/ntpdate ntp1.aliyun.com >/dev/null 2>&1' >>/var/spool/cron/root 每隔五分钟同步一次
crontab -l 查看
8) 模板机优化配置——加大文件描述
代码语言:javascript复制yum install -y lsoflsof -i:22
echo '* - nofile 1024' >>/etc/security/limits.conf
source /etc/security/limits.conf
说明:一个服务进程运行起来,会打开相应的文件
9) 模板机优化配置——安装其他小软件
代码语言:javascript复制yum install lrzsz nmap tree dos2unix nc telnet bash-completion bash-completion-extras -y
当然以上命令,也可以写成一个脚本,方法有很多,这里就不介绍了,可自行百度。