day -47 网站服务架构部署(LNMP)

00.课程介绍部分
    1.LNMP架构如何进行数据库迁移
    2.LNMP架构如何实现数据共享存储
    3.LNMP架构域名更换方法
    4.负载均衡服务概念介绍
        a 集群概念
        b 负载概念
        c 反向代理/正向代理
        d 负载均衡部署过程
    5.负载均衡部署过程
    6.实现负载均衡模块的详述
        upstream 模块: 负载均衡
        proxy    模块: 反向代理
01.课程知识回顾
    1.LNMP架构说明
        LNMP:linux nginx mysql php
        作用:可以使用架构处理动态访问请求
    2.LNMP架构部署过程
        linux: selinux关闭 iptables关闭  /tmp目录权限1777
        nginx: yum官方源安装
        mysql: yum install mariadb-server mariadb -y
               启动数据库且永久重启
        php:作用:解析动态请求
            更新yum源后  安装
            修改php服务进程与nginx中worker进程的用户一致
            vim /etc/php-fpm.d/www.conf
            user=
            group=
    3.LNMP架构配置过程
        1.建立nginx-php通讯过程
            编辑nginx配置文件
        2.建立php-mariadb连续
            编辑代码信息
    4.部署搭建动态网站页面
        1.下载获取动态网站代码信息
        2.代码上传(压缩包解压)/修改代码文件权限(站点目录更改属主/属组)
        3.创建数据库信息  create database xxxxxx;
        4.创建管理数据库的用户信息
            grant all on xxxxx.* to 'xxxx'@'location' identified by '密码信息';
            检查用户信息
            select user,host from mysql.user;
02.实现数据库数据迁移操作
    第一步:web服务器上数据进行备份操作
        mysqldump -uroot -p123456 -A > /tmp/mysql_bak.sql

    第二步:将数据进行传输到数据库服务器上
        rsync -avz /tmp/mysql_bak.sql 172.16.1.51:/tmp

    第三步:将备份的数据进行还原
        mysql -uroot -p123456 </tmp/mysql_bak.sql

    第四步:修改web服务器连接数据库地址信息
        grant all on wordpress.* to 'wordpress'@'172.16.1.%' identified by '123456'
        vim /html/blog/wordpress/wp-config.php
        define('DB_HOST','172.16.1.51');

        PS: 问题: 数据做了全量备份,也进行了恢复,为什么恢复后root用户不用输入密码
                    系统文件也会保留数据root登录密码信息    
03.实现网站数据共享存储
    第一步:找到web服务代码信息中存储数据的目录
    wordpress   /html/blog/wp-content/uploads

    第二步:将web服务器上保存的用户数据移动到/tmp
    mkdir /tmp/wordpress_bak
    mv /html/blog/wordpress/wp-content/uploads/* /tmp/wordpress_bak

    第三步:进行挂载操作
    mount -t nfs 172.16.1.31:/data/blog  /html/blog/wp-content/uploads/

    第四步:将备份的用户数据进行还原
    mv /tmp/wordpress_bak  /html/blog/wordpress/wp-content/uploads/ 


     数据库服务dns反向解析问题处理: 修改my.cnf
    [mysqld]
    skip-name-resolve
04.动态网站页面修改域名信息
    第一步:修改nginx配置文件信息
    server_name  blog.oldboy.com blog.oldgirl.com

    第二步:修改代码或数据库信息

    第三步:编写DNS域名解析

    第四步:重启nginx服务
05.负载均衡服务概念
    负载作用:
        1.对用户访问请求进行调度处理
        2.减少web服务器访问压力
    负载实现:
        硬件方式实现:F5 A10 (厂商培训)
        软件方式实现:
        nginx  : 利用网络4层或7层功能实现负载均衡
        Lvs    : 利用网络4层功能负载均衡
        haproxy: 利用网络4层或7层功能实现负载均衡(功能配置更强大/网站页面图形界面)

    集群:多台服务器完成相同的工作(提高网站架构并发处理能力/架构伸缩性更高/架构冗余能力强/架构成本降低)
        1.部署软件程序相同
        2.部署软件配置相同
        3.部署网站代码相同
    反向代理:  可以让外网用户 -- 访问 -- 内网主机服务器
    外网用户访问 -- nginx(反向代理) -- 发送给内网web服务器

    正向代理:  可以让内网主机 -- 访问 -- 外网主机服务器
    内网用户访问  -- 代理服务器(正向) --国外网站服务器
06.负载均衡部署配置过程:
    第一步:编写配置web集群服务器
            www.conf   
                server {
                   listen            80;
                   server_name       www.oldboy.com;
                   root              /html/www;
                   index             index.html;
                   }
                }               
             rsync或scp推送到另外两个web服务器中,要保证配置文件相同
    第二步:编写站点目录测试文件
            web01:
            echo web01 >/html/www/index.html
            web02:
            echo web02 >/html/www/index.html    
            web03:
            echo web03 >/html/www/index.html    
    第三步:进行访问测试
            curl -H host:www.oldboy.com  10.0.0.7
            web01
            curl -H host:www.oldboy.com  10.0.0.8
            web02
            curl -H host:www.oldboy.com  10.0.0.9
            web03
    第四步:部署负载均衡服务
            在lb01服务器中使用yum源安装nginx

            # vim /etc/nginx/nginx.conf
                upstream oldboy {
                   server   10.0.0.7:80;
                   server   10.0.0.8:80;
                   server   10.0.0.9:80;
                }   
                server {
                   listen          80;
                   server_name     localhost;
                   location / {
                       proxy_pass   http://oldboy;
                   }
                } 

             proxy_set_header Host $http_host;
             运用变量将host传到upstream的ip后面

             upstream  设置负载均衡(需要在http模块中)
             proxy     设置反向代理(需要在location模块中)
07. 课程知识总结说明
    1) LNMP架构数据库迁移过程    (三步:    备份 迁移 恢复)   
    2) LNMP架构数据实现共享存储  (三步: 备份 挂载 恢复 测试)
    3) LNMP架构网站更换域名      (三点: nginx服务域名信息更换 DNS服务域名解析配置 程序代码/数据库 )
    4) 负载均衡概念知识          作用  实现方式  名词解释(集群 反向代理 正向代理)
    5) 负载均衡部署过程          负载模块  upstream   代理模块  proxy
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,185评论 6 503
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,652评论 3 393
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,524评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,339评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,387评论 6 391
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,287评论 1 301
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,130评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,985评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,420评论 1 313
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,617评论 3 334
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,779评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,477评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,088评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,716评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,857评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,876评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,700评论 2 354

推荐阅读更多精彩内容