Python之路-Linux命令基础(5)
作业一: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)的更多相关文章
- Python之路-Linux命令基础(4)
作业一: 1)开启Linux系统前添加一块大小为15G的SCSI硬盘 2)开启系统,右击桌面,打开终端 3)为新加的硬盘分区,一个主分区大小为5G,剩余空间给扩展分区,在扩展分区上划分1个逻辑分区,大 ...
- Python之路-Linux命令基础(3)
作业一: 1)将用户信息数据库文件和组信息数据库文件纵向合并为一个文件/1.txt(覆盖) 2)将用户信息数据库文件和用户密码数据库文件纵向合并为一个文件/2.txt(追加) 3)将/1.txt./2 ...
- Python之路-Linux命令基础(1)
开启Linux操作系统,要求以root用户登录GNOME图形界面,语言支持选择为汉语 使用快捷键切换到虚拟终端2,使用普通用户身份登录,查看系统提示符,使用命令退出虚拟终端 ...
- Python之路-Linux命令基础(6)
作业一:完成作业未做完的集群架构 作业二:临时配置网络(ip,网关,dns)+永久配置 1.ip配置 [root@localhost mail]# ifconfig eno16777736 192.1 ...
- Python之路-Linux命令基础(2)
作业一: 1) 新建用户natasha,uid为1000,gid为555,备注信息为"master" 2) 修改natasha用户的家目录为/Natasha 3) ...
- Linux实战教学笔记04:Linux命令基础
第四节:Linux命令基础 标签(空格分隔):Linux实战教学笔记 第1章 认识操作环境 root:当前登陆的用户名 @分隔符 chensiqi:主机名 -:当前路径位置 用户的提示符 1.1 Li ...
- linux命令基础(一课)
一.Linux命令基础 1.shell Linux系统中运行的一种特殊程序 在用户和内核之间充当'翻译官' 用户登录Linux系统时,自动加载一个shell程序 bash是Linux系统中默认使用的s ...
- linux 命令基础一。
UNIX是什么 UNIX的定义: UNIX是一个计算机操作系统,一个用来协调.管理和控制计算机硬件和软件资源的控制程序. UNIX操作系统的特点:多用户和多任务多用户表示在同一时刻可以有多个用户同时使 ...
- Linux命令(基础3)
关机重启 reboot poweroff ============================ linux命令分类 1.针对不同文件的管理命令 1.1 目录 FHS 文件系统层次化标准 绝对路径: ...
随机推荐
- ZooKeeper的注意事项
在ZooKeeper中存储的数据是以字节数组的形式存储的,当用Java程序处理数据时要注意. Ephemeral znodes并不会有child znode 只有parent-znode存在,才能创建 ...
- BZOJ 1004: [HNOI2008]Cards(群论)
好吧我就是蒟蒻根本没听说过群论(虽说听叉姐说几万年都不会考) 我也讲不太来,直接戳VFK大神的blog啦 = = http://vfleaking.blog.163.com/blog/static/1 ...
- fetch使用的常见问题及解决办法
首先声明一下,本文不是要讲解fetch的具体用法,不清楚的可以参考MDN fetch教程. 引言 说道fetch就不得不提XMLHttpRequest了,XHR在发送web请求时需要开发者配置相关请求 ...
- [翻译]现代java开发指南 第一部分
现代java开发指南 第一部分 第一部分:Java已不是你父亲那一代的样子 第一部分,第二部分 =================== 与历史上任何其他的语言相比,这里要排除c语言和cobol语言,现 ...
- table标签中thead、tbody、tfoot的作用
为了让大表格(table)在下载的时候可以分段的显示,就是说在浏览器解析HTML时,table是作为一个整体解释的,使用tbody可以优化显示.如果表格很长,用tbody分段,可以一部分一部分地显示, ...
- 编程那些事儿:如何快速地"借用"CSS
做前端开发有时候会碰到任务紧急,需要马上写好静态页的问题.比如,设计师给你扔了一个设计稿,要你在下班之前搞定.这时候你如热锅上的蚂蚁,如果自己写css的话,时间紧张,于是上网找了一下相关模板页面,找到 ...
- 移动端利用rem实现自适应布局
好久没有写博客了,刚好说说最近遇到的移动端布局问题吧. 本来一直是觉得我的页面布局能力还是不错的,当然,是相对于较基础的来说还是不错的.不过,自己写的案例终归是跟实际开发有区别的,自己写案例的是觉得这 ...
- android sdk tools 一览
ANDROID SDK ADKROID SDK的工具划分为两部分,一部分是SDK tools,与平台无关,另一部分是Platform tools支持最新的安卓平台 SDK tools有 SDK m ...
- Java反射机制深度剖析
版权声明:本文为博主原创文章,转载请注明出处,欢迎交流学习! Java反射机制是Java语言中一种很重要的机制,可能在工作中用到的机会不多,但是在很多框架中都有用到这种机制.我们知道Java是一门静态 ...
- C#"曾经的字符串数组"string[] array=new string[]{"**","****"};
写博客是一件很伟大的事情,尤其是也牛逼的博客,因为它能帮助需要的人,更能使自己对知识有一个更为深刻的理解! 欢迎关注我的博客! 字符串操作(取当前时间) string time=convert.tos ...