01中小规模网站架构组成以及创建模板主机

架构介绍

1. 中小规模网站架构组成

在这里插入图片描述

  • 用户 — 访问网站的人员
  • 防火墙 — 进行访问控制策略 (firewalld)
  • 外网交换机 — 负责用户、防火墙和web、负载服务器的连接
  • 负载均衡服务器 — 对用户的访问进行调度处理(nginx)
  • web 服务器 — 处理用户的请求(nginx)
  • 内网交换机 — 负则 web 服务器与存储数据的服务器的连接
  • 数据库存储服务器 — 存储的字符数据(mysql)
  • 存储服务器 — 存储图片、音频、视频、附件等(nfs)
  • 备份服务器 — 存储网站所有服务器的重要数据(rsync+crond-定时备份 rsync+sersync-实时备份)
  • 缓存服务器 — 将数据信息存储到内存中,减缓服务器的压力( memcache redis mongodb)
  • 批量管理服务器 — 批量管理多台服务器主机(ansible)
  • VPN 服务器 — 内部人员通过外网访问公司内网的保护
  • 审计服务器/跳板机 ---- 监控内部人员的操作
  • 监控服务 — 监控每台服务器的状态

2. 部署网站架构需要注意的问题

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

3.架构规划

  1. 主机名称和 IP 地址的规划

    服务器名称英文外网地址内网地址软件
    防火墙服务器firewalldfirewalld
    负载均衡服务器lb01nginx keepalived
    负载均衡服务器lb02nginx keepalived
    web 服务器web01192.168.80.132172.16.1.132ngiinx
    web 服务器web02nginx
    web 服务器web03nginx
    数据库服务器db01MySQL
    存储服务器nfs01192.168.80.130172.16.1.130nfs
    备份服务器backup192.168.80.131172.16.1.131rsync
    缓存服务器
    批量管理服务器m01192.168.80.133172.16.1.133ansible
    跳板机jumpserverjumpserver
    监控服务器zabbixzabbix

4. 系统优化

1.进行网络配置
  • 添加私网网卡
    在这里插入图片描述

  • 配置私网网卡

    $ vi ifcfg-eno33554984
    [配置内容如下]
    BOOTPROTO=static
    NAME=eno33554984
    DEVICE=eno33554984
    ONBOOT=yes
    IPADDR=172.16.1.129
    NETMASK=255.255.255.0
    [精致的结尾]
    $ systemctl restart network
    $ ip address
    
    3: eno33554984: 
      #  inet 172.16.1.129/24 brd 172.16.1.255 scope global eno33554984  如此配置成功!
     
    #### 还可以使用 nmtui 命令打开配置网卡界面
    
  • 确认网络配置

     ping www.baidu.com
     
    PING www.a.shifen.com (110.242.68.4) 56(84) bytes of data.
    64 bytes from 110.242.68.4: icmp_seq=1 ttl=128 time=170 ms
    64 bytes from 110.242.68.4: icmp_seq=2 ttl=128 time=112 ms
    
2. 系统优化设置
  • hosts 文件配置

    cp /etc/hosts{,.bak}
    vi /etc/hosts
    [配置内容如下]
    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
    [精致的结尾]
    
  • 优化 yum 源

$ curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
$ yum clean all && yum makecache
$ yum install -y epel-release
$ yum clean all && yum makecache
  • 关闭 selinux

    sed -i.bak 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config 
     grep "SELINUX=" /etc/selinux/config
     
    # SELINUX= can take one of these three values:
    SELINUX=disabled
    
    setenforce 0
    getenforce 
    Permissive
    
  • 关闭防火墙(iptables)

    # systemctl stop firewalld
    #systemctl disable firewalld
    
    Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
    Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service.
    
    # systemctl status firewalld
      Loaded: loaded 
    
  • 提权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
    
  • 字符集优化

    localectl set-locale LANG="en_US.UTF-8"
    echo $LANG
    en_US.UTF-8
    
  • 时间同步

    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
    
  • 加大文件描述

    # 由于系统启动后会打开很多文件,然而系统预设的文件个数为 1024,远远不够,所以要加大打开文件的个数,保持系统顺畅运行
    echo '*               -       nofile          65536' >>/etc/security/limits.conf 
    reboot
    umlimit -a # 查看 open file 是否成功 
    
  • 安装其他小软件

    yum install epel-release lrzsz nmap tree dos2unix nc telnet wget lsof ntpdate bash-completion bash-completion-extras -y
    # lrzsz 实现 Linux 与 Windows 互传文件
    # nmap 扫描端口
    # tree 查看目录结构
    # dos2unix 将 windows 中的一些字符集转换成 Linux 能够识别的
    # nc 网络相关
    # bash-completion 超强补全功能  --- 好像不怎么管用
    
  • ssh 连接速度慢优化

    sed -i.bak 's@#UseDNS yes@UseDNS no@g;s@^GSSAPIAuthentication yes@GSSAPIAuthentication no@g' /etc/ssh/sshd_config
    systemctl restart sshd
    
3. 克隆模板主机
  • 进行模板机快照操作

  • 进行克隆

    • 链接克隆(学习环境)
      • 优势:
        • 节省物理主机资源
        • 克隆主机效率快
      • 劣势:
        • 模板主机删除,链接主机也会失败
    • 完整克隆(企业环境)
      • 优势:
        • 模板主机删除,克隆主机依然可以使用
      • 劣势
        • 耗费物理主机资源
        • 克隆主机效率低
  • 修改 IP 地址和主机名

     sed -i.bak 's#IPADDR=192.168.80.129#IPADDR=192.168.80.132#g' /etc/sysconfig/network-scripts/ifcfg-eno16777736 
     sed -i.bak 's#IPADDR=172.16.1.129#IPADDR=172.16.1.132#g' /etc/sysconfig/network-scripts/ifcfg-eno33554984
     hostnamectl set-hostanme ***
    
  • 克隆好的主机无法远程连接

    • 利用 ping 方式,加 -t 参数持续数 10 秒
    • 如果 ping 不通,则关闭 xshell 重新打开
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值