作业一:nginx服务 二进制安装nginx包

1.使用网络yum源

2.使用yum安装epel-release扩展源

[root@localhost html]# yum install epel-release -y  

3.使用yum安装nginx服务。

[root@localhost html]# yum install nginx -y  

4.作为web服务修改配置文件

[root@localhost html]# vim /etc/nginx/nginx.conf

5.进入网络根目录下,创建文件index.html,作为我们要访问的内容

[root@localhost html]# vim /usr/share/nginx/html/index.html

6.关闭防火墙

[root@localhost html]# systemctl stop firewalld

7.让配置生效,

[root@localhost html]# systemctl restart nginx

[root@localhost html]# systemctl status nginx

8.验证配

作业二:nfs服务

1.二进制安装nfs

nfs是网络文件系统的缩写

[root@localhost nginx]# yum install rpcbind nfs-utils -y 

2.修改配置文件

[root@localhost nginx]# vim /etc/exports

3.服务端配置

[root@localhost /]# mkdir /share

[root@localhost /]# cd /share

[root@localhost share]# touch share.txt

[root@localhost share]# echo welcome to beijing > share.txt

[root@localhost share]# cat share.txt

welcome to beijing

4.启动服务,验证共享文件( 必须先启动rpcbind服务)

[root@localhost share]# systemctl enable nfs-server.service

Created symlink from /etc/systemd/system/multi-user.target.wants/nfs-server.service to /usr/lib/systemd/system/nfs-server.service.

[root@localhost share]# systemctl enable rpcbind.service

[root@localhost share]# systemctl start rpcbind.service

[root@localhost share]# systemctl start nfs-server.service

[root@localhost share]# exportfs

/share            192.168.0.0/24

[root@localhost share]# showmount -e

Export list for localhost:

/share 192.168.0.0/24

5.作为共享存储挂载在三台web的网站根目录下

[root@localhost html]# showmount -e 192.168.0.107

Export list for 192.168.0.107:

/share 192.168.0.0/24

  

[root@localhost html]# mkdir -p /var/www/html

[root@localhost html]# mount -t nfs 192.168.0.107:/share /var/www/html

[root@localhost html]# ls /var/www/html/

share.txt

 

6.在服务端修改读写权限

[root@localhost ~]# chmod -R o+w /share

7.实现,在任意一台web上修改的结果,其余两台都可以看到

例如:web2上新建aaa.txt  在web3上立刻可以查看

作业三:nginx反向代理三台web

1.官方文档网址 http://nginx.org/en/docs/http/load_balancing.html

2.克隆出来三台web,在不同的服务器上创建的index.html内容不一样,依然创建在网站的根目录,因为我们未修改location中的root,所以采用全局的网站根目录

vim /usr/share/nginx/html/index.html

3.在代理的服务端的配置文件中,参照官网文档进行修改。

4.重新加载配置文件

systemctl reload nginx

5.实现基于轮询的方式调度三台web,并验证结果

默认是轮询方式

6.实现基于权重的方式调度三台web,并验证结果

7.实现基于hash的方式调用三台web,并验证结果

 

作业四:nginx反向代理+三台web+nfs共享存储实现集群配置

实现方式:我们同时拥有一台nginx反向代理服务器和三台web服务器,以及一台存储服务器。客户端发来的请求由反向代理服务端分给三台web服务器去处理数据,而作为客户端的用户,我们只是将请求递交给了反向代理服务器,并感受不到这种处理。而三台服务器上所使用的数据又是通过NFS共享存储技术共享在了一台存储的服务器上,导致不同的web服务器获取到的数据都是实时更新的,保证数据的有效可靠。等到处理完成,由nginx反向代理服务器把处理得到的数据传递回用户。

作业五:源码安装nginx

1.安装nginx所需要的包

[root@ym /]# yum install gcc-* glibc-* openssl openssl-devel pcre pcre-devel zlib zlib-devel -y

2.拖入文件后,解压缩

3.执行配置的可执行文件

4.配置相关参数

[root@ym nginx-1.10.3]# ./configure --sbin-path=/usr/local/nginx/nginx --conf-path=/usr/local/nginx/nginx.conf --pid-path=/usr/local/nginx/nginx.pid --with-http_ssl_module

5.编译和编译安装  

[root@ym nginx-1.10.3]# make && make install

  

 

Python之路-Linux命令基础(5)的更多相关文章

  1. Python之路-Linux命令基础(4)

    作业一: 1)开启Linux系统前添加一块大小为15G的SCSI硬盘 2)开启系统,右击桌面,打开终端 3)为新加的硬盘分区,一个主分区大小为5G,剩余空间给扩展分区,在扩展分区上划分1个逻辑分区,大 ...

  2. Python之路-Linux命令基础(3)

    作业一: 1)将用户信息数据库文件和组信息数据库文件纵向合并为一个文件/1.txt(覆盖) 2)将用户信息数据库文件和用户密码数据库文件纵向合并为一个文件/2.txt(追加) 3)将/1.txt./2 ...

  3. Python之路-Linux命令基础(1)

    开启Linux操作系统,要求以root用户登录GNOME图形界面,语言支持选择为汉语               使用快捷键切换到虚拟终端2,使用普通用户身份登录,查看系统提示符,使用命令退出虚拟终端 ...

  4. Python之路-Linux命令基础(6)

    作业一:完成作业未做完的集群架构 作业二:临时配置网络(ip,网关,dns)+永久配置 1.ip配置 [root@localhost mail]# ifconfig eno16777736 192.1 ...

  5. Python之路-Linux命令基础(2)

    作业一: 1)    新建用户natasha,uid为1000,gid为555,备注信息为"master" 2)    修改natasha用户的家目录为/Natasha 3)    ...

  6. Linux实战教学笔记04:Linux命令基础

    第四节:Linux命令基础 标签(空格分隔):Linux实战教学笔记 第1章 认识操作环境 root:当前登陆的用户名 @分隔符 chensiqi:主机名 -:当前路径位置 用户的提示符 1.1 Li ...

  7. linux命令基础(一课)

    一.Linux命令基础 1.shell Linux系统中运行的一种特殊程序 在用户和内核之间充当'翻译官' 用户登录Linux系统时,自动加载一个shell程序 bash是Linux系统中默认使用的s ...

  8. linux 命令基础一。

    UNIX是什么 UNIX的定义: UNIX是一个计算机操作系统,一个用来协调.管理和控制计算机硬件和软件资源的控制程序. UNIX操作系统的特点:多用户和多任务多用户表示在同一时刻可以有多个用户同时使 ...

  9. Linux命令(基础3)

    关机重启 reboot poweroff ============================ linux命令分类 1.针对不同文件的管理命令 1.1 目录 FHS 文件系统层次化标准 绝对路径: ...

随机推荐

  1. 2017年2月16日-----------乱码新手自学.net 之MVC模型

    第二篇博文,最近学习的内容还是回到了正题:ASP.NET MVC5之上.虽然EF学了个一知半解,但是用这点知识,看MVC5的MODEL部分应该还是够了.尽管周末还要恶补一下EF才行. (一)MVC简述 ...

  2. wikioi 3132 高精度乘法(FFT)

    第一次学FFT,先膜拜一下法法塔大神ORZ 关于FFT的话,有一篇博文特别赞http://z55250825.blog.163.com/blog/static/15023080920143127465 ...

  3. java程序员--小心你代码中的内存泄漏

    当你从c&c++转到一门具有垃圾回收功能的语言时,程序员的工作就会变得更加容易,因为你用完对象,他们会被自动回收,但是,java程序员真的不需要考虑内存泄露吗? 其实不然 1.举个例子-看你能 ...

  4. UE4从零搭建CF游戏关卡(蓝图篇)

    一 往关卡中放置物体 二 Static Mesh 和 BSP 从今天开始我们要建立一个类似CF游戏的场景,不写一句代码,纯蓝图实现. 三 英语学习 今天早上开会,经理说了一件让我震惊的事情,她说最近大 ...

  5. php的empty()和isset()用法

    共同点: 1.都可以判定一个变量是否为空: 2.都返回boolean类型,即true或false. 区别: 1.isset()用来检测变量是否设置,只能用于变量,因为传递任何其它参数都将造成解析错误. ...

  6. hibernate中一种导致a different object with the same identifier value was already associated with the session错误方式及解决方法

    先将自己出现错误的全部代码都贴出来: hibernate.cfg.xml <?xml version="1.0" encoding="UTF-8"?> ...

  7. Visual Studio 2017正式版使用一些疑问

    刚升级完2017,是从2015升上去的,总体没有什么大的问题,就是报了一些ts的类型检查的问题,最重要的就是编译速度变得好慢啊,希望尽快出来补丁修复,以前一个解决方案只要10+秒,现在要50秒,表示体 ...

  8. Vue.js组件之同级之间的通信

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. Android N安装apk报错:android.os.FileUriExposedException

    StackOverflow: http://stackoverflow.com/questions/38200282/android-os-fileuriexposedexception-file-s ...

  10. html、css、js实现轮播图

    2017-03-13 今天把轮播图的知识1过了一下,写了一个比较简单的轮播图,给大家参考一下. 查看具体的效果点击这个链接 : http://gjhnstxu.me/%E8%BD%AE%E6%92%A ...