中小规模网站架构

简介: 主要记录一下实际操作中遇到的问题,对以后的网站架构很有帮助

Linux系统的安装部署

进入系统引导界面进行配置

   引导项说明:

   1. 安装centos7系统*

   2. 测试光盘镜像并安装系统

   3. 排错模式(修复系统重置系统密码)

   补充:centos7系统网卡名称

   默认系统的网卡名称为 eth0 eth1  --centos6

   默认系统的网卡名称为 ens33 ens34 --centos7

   如何调整网卡名称:

   选择安装centos--tab -- net.ifnames=0 biosdevname=0

   从虚拟主机返回到windows系统方法:ctrl+alt

 

 对安装系统语言进行设置

选择中文简体

 对系统安装过程进行配置

   1. 系统网络的配置

     system -- network & hostname

     configure--通用配置(激活网卡功能)-- IP地址进行了设置

     系统主机名设置

     

   2. 系统分区的配置

     system -- install destination 进行系统分区

     如何对linux系统进行分区:

     01. 通用分区方案

         c==/boot  引导分区  200M

            ==swap   交换分区当内存不够用的时候,将硬盘中的空间充当内存使用 1G

                    内存<8G

                    建议交互分区大小=内存大小的1.5内存1G--swap1.5G

                   内存>=8G

                   建议交互分区大小=8G

           ==/     根分区    剩余全部空间

     

     02. 数据信息比较重要的分区方案

         /boot     200M

        swap      <8G   1.5内存大小

                   >=8G  8G

        /         20G~200G

        /data     剩余空间大小

     

     03. 灵活的分区方案

         /boot    200M

        swap      <8G   1.5内存大小

                   >=8G  8G

         /        20G~200G

         剩余空间不分      

       

     

   3. 系统安全的配置(关闭)

     system-kdump             将宕机前系统中的内存异常信息进行保存

     system-security policy   系统的安全策略配置

 

   4. 系统时区的设置

     localization-date time

 

   5. 系统软件的安装

     software(软件)-- software selection(软件选择)-- 最小化安装(1 2 3 6

 

   创建系统用户

   系统管理员用户:root 密码   123456

   系统普通用户:  用户名 密码 123456

   运维工作流程

   01. 准备/检查好环境

   02. 进行操作前的备份(退路)

   03. 进行配置之后注意保存

   04. 配置完成需要检查

   05. 编写项目文档  

中小规模网站架构组成

   1)用户

     访问网站的人员

   2) 防火墙 (firewalld)

     进行访问策略控制

   3) 负载均衡服务器  (nginx)

     对用户的访问请求进行调度处理

   4) web服务器    (nginx)

     处理用户的请求

   5) 数据库服务器   (mysql)

     存储的字符数据 

   6) 存储服务器     (nfs)

     存储图片音频视频附件等数据信息

   7)备份服务器     (rsync+crond-定时备份 rsync+sersync--实时备份)

      存储网站所有服务器的重要数据

   8) 缓存服务器     (memcache redis mongodb)

      a 将数据信息存储到内存中

      b 减缓服务器的压力    

   9) 批量管理服务器 (ansible)

     批量管理多台服务器主机

部署网站架构

   1) 需要解决网站架构单点问题

     前端:       高可用服务---keepalived

     数据库:    高可用服务---mha

     存储服务: 高可用服务---keepalived实现

                    高可用服务---分布式存储

     备份服务:  

     公司的数据是如何备份

     1) 利用开源软件实现数据备份  rsync(免费)

     2) 利用企业网盘进行数据备份  七牛云存储

     3) 利用自建备份存储架构      两地三中心 

      缓存服务: 高可用服务--- 缓存服务集群/哨兵模式

   2) 内部员工如何远程访问架构

     部署搭建VPN服务器 PPTP vpn

     https://blog.oldboyedu.com/pptp-l2tp/

   3) 内部员工操作管理架构服务器要进行审计

     跳板机服务器  jumpserver

     https://jumpserver.readthedocs.io/zh/docs/setup_by_centos.html

   4) 架构中服务器出现问题需要进行提前报警告知

     部署监控服务器 zabbix

 

 

综合架构规划

   主机名称和IP地址规划

   01. 防火墙服务器    firewalld   (外网地址)          (内外地址)     软件: firewalld

   02. 负载均衡服务器  lb01        (外网地址)       (内外地址)    软件: nginx keepalived

   03. 负载均衡服务器  lb02        (外网地址)           (内外地址)             软件: nginx keepalived

   04. web服务器      web01        (外网地址)             (内外地址)               软件: nginx

   05. web服务器      web02        (外网地址)             (内外地址)                软件: nginx

   06. web服务器      web03        (外网地址) (存储)     (内外地址)              软件: nginx

   07. 数据库服务器    db01         (外网地址)             (内外地址)            软件: mysql()  mariaDB

   08. 存储服务器      nfs01       (外网地址)               (内外地址)             软件: nfs

   09. 备份服务器      backup      (外网地址)             (内外地址)           软件: rsync

   10. 批量管理服务器  m01         (外网地址)             (内外地址)           软件: ansible

   11. 跳板机服务器    jumpserver  (外网地址)           (内外地址)            软件: jumpserver

   12. 监控服务器      zabbix     (外网地址)                 (内外地址)          软件: zabbix

 

优化配置模板主机

   1) 进行网络配置

     a 添加网卡

     b 配置网卡

     vim /etc/sysconfig/network-scripts/ifcfg-enss33

      c 确认网络配置

   2) 系统优化过程

      1. 模板机优化配置---hosts文件配置

       \cp /etc/hosts{,.bak}

cat >/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.10     db01

172.16.1.11     nfs01

172.16.1.12    backup

172.16.1.13     m01

EOF

 

模板机优化配置---更改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 https://mirrors.aliyun.com/repo/Centos-7.repo

运行 yum makecache 生成缓存

EPEL(Extra Packages for Enterprise Linux), 是由Fedora Special Interest Group维护的Enterprise Linux(RHEL、CentOS)中经常用到的包

升级epel:

     yum install -y wget  

      wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo

     yum repolist列出yum源信息;

同时注意yum升级命令

yum -y update:升级所有包同时也升级软件和系统内核;

yum -y upgrade:只升级所有包,不升级软件和系统内核。

模板机优化配置---关闭selinux

       #关闭selinux

       sed -i.bak 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

       grep SELINUX=disabled /etc/selinux/config

       setenforce 0

       getenforce

       

模板机优化配置---关闭iptables

       #关闭iptables  centos7      

systemctl stop firewalld

systemctl disable firewalld

systemctl status  firewalld

 

 

模板机优化配置---提权用户可以sudo (可选配置)

       #提权用户可以sudo(可选配置)

       useradd 用户名

       echo 123456|passwd --stdin 用户名 #重置密码

       \cp /etc/sudoers /etc/sudoers.ori

       echo "用户名  ALL=(ALL) NOPASSWD: ALL " >>/etc/sudoers

       tail -1 /etc/sudoers

       visudo -c

 

模板机优化配置---英文字符集

       #英文字符集

       localectl set-locale LANG="en_US.UTF-8"

 

 

模板机优化配置---时间同步

一、安装时间同步工具

yum -y install ntp

二、同步时间

1、修改时区

cp -y /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

vim  /etc/sysconfig/clock

ZONE="Asia/Shanghai"

UTC=false

ARC=false

2、同步时间

/usr/sbin/ntpdate -u cn.pool.ntp.org

3、写入硬件时间

hwclock -r

hwclock -w

4、自动时间同步

vim /etc/rc.d/rc.local

编辑:l

00 10 * * * root /usr/sbin/ntpdate -u cn.pool.ntp.org > /dev/null2>&1; /sbin/hwclock -w

退出保存:wq

crontab -e

编辑:l

00 10 * * * /usr/sbin/ntpdate -u cn.pool.ntp.org > /dev/null2>&1; /sbin/hwclock -w

退出保存:wq

模板机优化配置---加大文件描述

      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         --- 加载打开日志文件

模板机优化配置---安装其他小软件

         安装其他小软件

         yum install lrzsz nmap tree dos2unix nc telnet wget lsof ntpdate bash-completion bash-completion-extras -y

       

模板机优化配置---ssh连接速度慢优化

         ssh连接速度慢优化        

         sed -i.bak 's@#UseDNS yes@UseDNS no@g;s@^GSSAPIAuthentication yes@GSSAPIAuthentication no@g'  /etc/ssh/sshd_config

         systemctl restart sshd

模板机就此完成,然后进行批量克隆,注意调整ip或者改为动态ip再将优化配置模板主机进行对照修改相关ip,即可进行第一步的框架搭建

已经克隆出来的一台tomcat用作tomcat多实例及反向代理

image.png

目录
相关文章
|
7月前
|
缓存 应用服务中间件 PHP
中小型网站架构分析及优化
中小型网站架构分析及优化
|
7月前
|
网络协议 Devops 大数据
【分布式】大型互联网项目特点
【1月更文挑战第25天】【分布式】大型互联网项目特点
|
关系型数据库 MySQL Linux
网站架构部署
网站架构部署
|
缓存 应用服务中间件 数据库
【系统架构】大型网站系统架构演化实例——使用缓存改善网站性能
【系统架构】大型网站系统架构演化实例——使用缓存改善网站性能
90 0
|
存储 缓存 负载均衡
阿里 P9 架构师讲解从单机至亿级流量大型网站系统架构的演进过程
阿里 P9 架构师讲解从单机至亿级流量大型网站系统架构的演进过程
|
存储 消息中间件 缓存
老板让你抗住千万级流量,如何做架构设计?
随着互联网的发展,各项软件的客户量日益增多,当客户量达到一定峰值时,当数以万计的流量来临时,程序的顺利运行以及即时响应则显得尤为重要,就像双11那天的淘宝一样。那么,如何设计架构才能够抗住这千万级的流量。
255 0
老板让你抗住千万级流量,如何做架构设计?
|
域名解析 缓存 负载均衡
架构知识分享——负载均衡技术研究
基于多年工作实践,总结日常使用到的负载均衡技术相关的理论,定义,产品和使用场景。
2087 0
架构知识分享——负载均衡技术研究
|
弹性计算 负载均衡 关系型数据库
单机网站架构云化
很多客户最开始使用云的时候,会把云(服务器)简单地当成普通的物理服务器来使用,比如把应用系统、数据库和文件等都保存在同一台云服务器上。云给客户提供的远不止是服务器,还有其他很多云产品,以便客户在云上做架构的云化,最终带来高可用、弹性等优势。本最佳实践主要是指导客户如何把单机的系统如何进行初步的云化。
362 0
单机网站架构云化
|
SQL 前端开发 数据库
网站架构的逐步优化演变
网站架构的逐步优化演变
1142 0
|
Web App开发 架构师 应用服务中间件
网络架构师:各大型网站架构分析收集 及大型高负载网站架构的感想
网络架构师:各大型网站架构分析收集 及大型高负载网站架构的感想
1730 0