搭建中小型网站架构--实施规划及环境准备

一. 架构介绍

在这里插入图片描述

二. 架构规划

1.服务规划

前端: 防火墙 负载均衡 web服务器
后端: 数据库 存储服务 缓存服务 备份服务
扩展: 批量管理 跳板机 监控服务 vpn服务
1)用户                      访问网站的人员
2)防火墙(firewalld)          进行访问策略控制
3)负载均衡服务器(nginx)        对用户的访问请求进行调度处理
4)web服务器                 处理用户的请求
5)数据库服务器(mysql)        存储的字符数据 
6)存储服务器(nfs)            存储图片 音频 视频 附件等数据信息
7)备份服务器(rsync+crond-定时备份 rsync+sersync--实时备份)
                           存储网站所有服务器的重要数据
8)缓存服务器(memcache redis mongodb) 
                           a 将数据信息存储到内存中 
                           b 减缓服务器的压力	   
9)批量管理服务器(ansible)    批量管理多台服务器主机

2.架构规划

1) 需要解决网站架构单点问题
   负载均衡         高可用服务---keepalived
   数据库           高可用服务---mha
   存储服务         高可用服务---keepalived实现
			       高可用服务---分布式存储
   备份服务:  
   1) 利用开源软件实现数据备份  rsync(免费)
   2) 利用企业网盘进行数据备份  七牛云存储
   3) 利用自建备份存储架构      两地三中心  
   缓存服务: 高可用服务--- 缓存服务集群/哨兵模式
2) 内部员工如何远程访问架构
   部署搭建VPN服务器 PPTP vpn
   <https://blog.oldboyedu.com/vpn-pptp/>
3) 内部员工操作管理架构服务器要进行审计
   跳板机服务器  jumpserver https://jumpserver.readthedocs.io/zh/docs/setup_by_centos.html
4) 架构中服务器出现问题需要进行提前报警告知
   部署监控服务器 zabbix

2.主机名和ip地址规划

01. 防火墙服务器  	firewalld    10.0.0.81(外网地址) 	172.16.1.81(内外地址)  	软件: firewalld
02. 负载均衡服务器	lb01         10.0.0.5             	172.16.1.5            	软件: nginx keepalived
03. 负载均衡服务器	lb02         10.0.0.6             	172.16.1.6            	软件: nginx keepalived
04. web服务器     	web01        10.0.0.7               172.16.1.7             	软件: nginx
05. web服务器     	web02        10.0.0.8               172.16.1.8             	软件: nginx
06. web服务器     	web03        10.0.0.9(存储)         172.16.1.9             	软件: nginx
07. 数据库服务器  	db01         10.0.0.51              172.16.1.51             软件: mysql(慢)  mariaDB
08. 存储服务器    	nfs01        10.0.0.31              172.16.1.31             软件: nfs 
09. 备份服务器    	backup       10.0.0.41              172.16.1.41             软件: rsync
10. 批量管理服务器	m01          10.0.0.61              172.16.1.61             软件: ansible
11. 跳板机服务器   	jumpserver   10.0.0.71(61)          172.16.1.71             软件: jumpserver
12. 监控服务器    	zabbix       10.0.0.72(61)          172.16.1.72             软件: zabbix

三.系统优化

1. 模板机优化配置—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.localdomain6
172.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
EOF 

2. 模板机优化配置—更改yum源

#更改yum源
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 http://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
  PS:yum repolist 列出yum源信息;讲解什么是epel源

3. 模板机优化配置—关闭selinux

#关闭selinux
sed -i.bak 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
grep SELINUX=disabled /etc/selinux/config 
setenforce 0
getenforce

4. 模板机优化配置—关闭iptables

#关闭iptables  centos7       
    systemctl stop firewalld
    systemctl disable firewalld
    systemctl status  firewalld

5. 模板机优化配置—提权oldboy可以sudo (可选配置)

#提权oldboy可以sudo(可选配置)
useradd oldboy
echo 123456|passwd --stdin oldboy
\cp /etc/sudoers /etc/sudoers.ori
echo "oldboy  ALL=(ALL) NOPASSWD: ALL " >>/etc/sudoers
tail -1 /etc/sudoers
visudo -c

6. 模板机优化配置—英文字符集

 #英文字符集
    localectl set-locale LANG="en_US.UTF-8"

7. 模板机优化配置—时间同步

  #时间同步
	yum install -y ntpdate
    echo '#time sync by lidao at 2017-03-08' >>/var/spool/cron/root
    echo '*/5 * * * * /usr/sbin/ntpdate ntp1.aliyun.com >/dev/null 2>&1' >>/var/spool/cron/root
    crontab -l

8. 模板机优化配置—加大文件描述

yum install -y lsof
lsof -i:22
#加大文件描述
echo '*               -       nofile          65536' >>/etc/security/limits.conf 
tail -1 /etc/security/limits.conf
说明:
一个服务程序运行起来,会打开相应的文件
crond定时任务服务---systemctl start crond --- 打开相应文件
/var/spool/cron/root  --- 加载打开配置文件
/var/log/cron         --- 加载打开日志文件

9. 模板机优化配置—安装其他小软件

  #安装其他小软件
  yum install lrzsz nmap tree dos2unix nc telnet wget lsof ntpdate bash-completion bash-completion-extras -y

10. 模板机优化配置—ssh连接速度慢优化

 #ssh连接速度慢优化          
  sed -i.bak 's@#UseDNS yes@UseDNS no@g;s@^GSSAPIAuthentication yes@GSSAPIAuthentication no@g'  /etc/ssh/sshd_config
  systemctl restart sshd	

四.配置实施

1.优化配置模板主机

   1) 进行网络配置
	   a 添加网卡
	   b 配置网卡
	   vim /etc/sysconfig/network-scripts/ifcfg-eth1
       c 确认网络配置
	2) 系统优化过程

2.模板主机克隆操作

1. 进行模板机快照拍摄
2. 进行虚拟主机克隆 
	   创建链接克隆 (学习环境)
	   优势:
	   a 节省物理主机资源
	   b 克隆主机效率快
	   劣势:
	   a 模板主机删除,链接主机也会失效
       b 克隆好的主机需要一台一台按顺序进行配置
	     1. 不要随意修改调整虚拟主机的mac地址
		 2. NetworkManager网络管理服务  	nmtui   关闭
		    network网络服务               ifcfg-eth0(如果你们nmtui和ifcfg-eth0配置不相同,可以调整nmtui与ifcfg-eth0相同,然后再重启NetworkManager服务)	  
	   创建完整克隆 (企业应用)
	   优势:
	   a 模板主机删除,克隆主机依然可以使用
	   劣势:
	   a 比较消耗物理主机资源
	   b 克隆主机效率低  

3. 克隆后虚拟主机配置

a 修改主机名称
   hostnamectl set-hostname backup
   b 修改主机地址
   sed -i 's#200#41#g' /etc/sysconfig/network-scripts/ifcfg-eth[01]
   grep 41 /etc/sysconfig/network-scripts/ifcfg-eth[01]
   sed -i '/UUID/d' /etc/sysconfig/network-scripts/ifcfg-eth[01]
   grep UUID /etc/sysconfig/network-scripts/ifcfg-eth[01]
   systemctl restart network
   PS: 一台一台顺序启动,进行修改,不要同时启动	  

   补充: 克隆好的主机无法远程连接:
   解决方式:
   1. 利用ping方式测试
   
      (补充:断开连接,ping 本机ip地址 -t,然后再连接)
   
   2. 关闭xshell软件重新打开
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值