nginxnfs

复习总结

rpm -ivh 软件包 --nodeps (没有依赖性安装)

rpm -ivh 软件包 --force (覆盖安装)

yum -y upgrade 升级所有包,不改变软件设置和系统设置,不升级内核

yum update 在新装完系统操作,其是软件和内核一起升级。

后期升级的话,用yum -y upgrade升级软件。

./configure *****    #-------->makefile

看系统状态

cat /proc/meminfo 查看内存信息

cat /proc/cpuinfo 查看CPU信息

查看硬盘 df

top 命令动态查看系统状态

vmstat 查看硬件信息

iostat 查看IO信息

netstat -tunalp 查看系统监控的所有网络信息

sar 命令,查看系统硬件所有信息

apache

nginx 提供web网站服务 基于TCP协议工作

安装

写配置文件

配置文件路径:/etc/nginx/nginx.conf

网站加载内容目录地址root /usr/share/nginx/html ---> index.html

(如果location大括号下不添加任何东西的话,默认的地址是服务的地址)

可以自己配置

location / {

root /var/www/html(自己给的目录地址)

index index.html给其默认的配置,直接查找加载index文件)

配置完之后,要重新加载下nginx

将 /var/www/html 路径下的 index.html文件写入内容

systemctl start nginx   启动 nginx

systemctl status nginx   验证 nginx是否正常启动

systemctl stop firewalld(关闭防火墙)

systemctl disables /enable firewalld(开机关闭/启动防火墙)

iptables(操控系统内部防火墙)

systemctl reload nginx 重新加载配置文件,nginx不会关闭

测试

浏览器上网址框打上 IP地址 ,测试!!!

url 统一资源定位符 http://……

uri 统一资源标识符 http://……/a/a.txt

nginx反向代理

参考链接:http://nginx.org/en/docs/http/load_balancing.html

实现基于轮询的方式调度三台服务器

1、更改nginx主机的nginx配置文件

目录:/etc/nginx/nginx.conf

2、修改配置文件:

http下,加入

upstream pythonweb (集群名,可任意取名编写)

{

server 192.168.1.114:80;

server 192.168.1.115:80;

server 192.168.152.137:80;

}              服务    集群中每台机子的IP地址和端口号

location下加入配置文件

location / {

proxy_pass http://pythonweb;

}

重启nginx服务: systemctl reload nginx

关闭防火墙

在每台WEB服务器的 默认网站地址的主网址 index.html 中写入不同的文本

在浏览器中打上nginx服务器的IP地址,进行验证。

反向代理有三种方式:(在upstream pythonweb下更改)

1、轮询 (默认是轮询)

2、权重 服务器后加上weight=???(?代表数字)(server IP地址 weight=2;)

3、hash   ip_hash  (http配置,集群配置名下加入)

更改配置文件,注意在每行写完之后加上;

正向代理与(nfs服务)

定义:NFS即网络文件系统,NFS 的基本原则是“容许不同的客户端及服务端通过一组RPC分享相同的文件系统”,它是独立于操作系统,容许不同硬件及操作系统的系统共同进行文件的分享。

正向代理:知道要访问的,明确的位置

反向代理:做负载均衡(LB)

二进制安装nfs

命令: yum install rpcbind nfs-utils -y   #NFS服务端和客户端都装

NFS服务的配置文件为 /etc/exports,这个文件是NFS的主要配置文件,不过系统并没有默认值,所以这个文件不一定会存在,可能要使用vim手动建立,然后在文件里面写入配置内容。

/etc/exports文件内容格式:

<输出目录> [客户端1 选项(访问权限,用户映射,其他)] [客户端2 选项(访问权限,用户映射,其他)]

a. 输出目录:

输出目录是指NFS系统中需要共享给客户机使用的目录;

b. 客户端:

客户端是指网络中可以访问这个NFS输出目录的计算机。

 

修改配置(root下)

创建共享目录 :命令:mkdir /share

cat /etc/exports

/share   192.168.31.0/24(rw,sync,fsid=0)

共享目录    共享IP地址段

 

开权限

nfs开启了w权限还不行,others(其他用户)还需要对/share目录有w权限)

chmod -R o+w /share

先为rpcbindnfs做开机启动:

命令: systemctl enable nfs-server.service
          systemctl enable
rpcbind.service

 

启动服务 

  (必须先启动rpcbind服务)

systemctl start
rpcbind.service
                     systemctl start
nfs-server.service

确认nfs服务器启动成功

命令:[root~]# rpcinfo(查看系统配置)
      [root~]#exportfs  (确认共享配置文件)
      /share 192.168.31.0/24

[root~]# showmount -e

#默认查看自己共享的服务,前提是要DNS能解析自己,不然容易报错
       Export list for MiWiFi-R3-srv:
       /share 192.168.31.0/24

========客户端=============

yum install
rpcbind nfs-utils -y

systemctl enable
rpcbind.service && systemctl start rpcbind.service

showmount -e NFS服务器IP   #检查
NFS 服务器端是否有目录共享

客户端挂载

mount -t nfs 192.168.31.106:/share  /var/www/html/

NFS主机地址:分享目录     客户机目录

[root]# showmount
-a

#显示已经与客户端连接上的目录信息 在本机查看

配置成功之后,多台客户机之间可以实现:在任意一台web上修改的结果,其余两台都可以看到

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

(nginx和nfs可以同时在一台机器上搭建)

1、配置nfs,各个服务器上挂载nfs

2、在任意一台web服务器上创建的共享目录中的index.thml 文件中写入文本。

3、在浏览器上输入nginx服务器的网址,进行验证!

开发环境入门 linux基础 (部分)nginx和nfs的更多相关文章

  1. 开发环境入门 linux基础 (部分)awk 赋值变量 if

    awk 常用于处理格式非常明显的文件 awk -F: '{print $1}' /etc/passwd  含义:取冒号分隔符的第一段内容 $0 指取所有! NF 指有几段内容 $NF 取最后一段内容 ...

  2. 开发环境入门 linux基础(部分)虚拟内存,rpm和yum安装

    虚拟内存,rpm和yum安装 文本中查找 /内容 替换:扩展模式下(:)%s /替换目标/要替换的文件/ (只替换第一个)(后边加g全部替换) :set u添加行号 raid  lvm逻辑卷 df - ...

  3. 开发环境入门 linux基础 (部分)while for 函数 计划任务

    while循环 while do 动作 done 需要无限循环时我们会选择while : echo -e 格式处理,将\n的意义不变. exit 指退出执行程序 break 指跳出本层循环 conti ...

  4. 开发环境入门 linux基础 (部分)正则表达式 grep sed

    /etc/profile /etc/bashrc  .变量添加到shell环境中,永久生效. /root/.bashrc /root/.bash_profile 正则表达式 定义:正则就是用一些具有特 ...

  5. 开发环境入门 linux基础 (部分) 复制 用户和组操作 权限更改

    复制 用户和组操作 权限更改 CP 复制命令 cp 源文件 目标文件 a) –r(recursive,递归的):递归地复制目录.当复制一个目录时,复制该目录中所有的内容,其中包括子目录的全部内容. b ...

  6. 开发环境入门 linux基础 基本操作命令(部分) 文本结构和基本命令

    文本结构和基本命令 linux系统中系统提示符:$ 表示普通用户 su  root切换用户命令(用户名 root),输入密码,切换到其他用户状态 root 命令提示符:# exit 退出当前用户,返回 ...

  7. 开发环境入门 linux基础 (部分)网络 SSH 更名 DNS解析 元字符

    nginx---> web ifconfig 查看网络配置信息 id add show 查看当前网卡信息(最小安装下) mtu 是指网卡传输的最大单元 单位:字节 网卡配置 临时配置 ifcon ...

  8. 开发环境入门 linux基础 (部分) 归档 压缩 Vi编译器 系统分区

    归档 压缩 Vi编译器 系统分区 1.使用cat命令进行文件的纵向合并          1) 使用cat命令实现文件的纵向合并:          a) 例如:将用户信息数据库文件和组信息数据库文件 ...

  9. linux基础之nginx和nfs服务

      第一部分: 一.nginx服务安装nginx包(源码安装)1.先cd /etc/yum.repos.d目录下2.yum install epel-release -y(安装扩展包)3.yum in ...

随机推荐

  1. 导出android真机上应用的apk文件

    1. 首先你的手机要开启调试模式 2. 终端输入命令行 (这个时候需要在手机端打开此应用.它的思路是抓取出当前窗口的包名.以下命令操作自己未亲自验证.) adb shell dumpsys windo ...

  2. network namespace连接的4种方法及性能

    veth pair # add the namespaces ip netns add ns1 ip netns add ns2 # create the veth pair ip link add ...

  3. EF-局部更新

    // ////1 public Task ReservedQuantity(long productId, long skuId, int reservedQuantity, long userId) ...

  4. C++(十二)— vector中pair的排序方法

    1.利用自定义的排序函数 通过传递一个函数 cmp给sort函数 , 注意: cmp中return a<b; 决定为从小到大的排序 return a>b;  决定为从大到小的排序 #inc ...

  5. 修复 Xcode 错误 “The identity used to sign the executable is no longer valid”

    如图: 解决方法来自:http://stackoverflow.com/questions/7088441/the-identity-used-to-sign-the-executable-is-no ...

  6. NodeJs学习之API篇

    学习nodeJS的API在对于使用nodeJS来进行编程的是十分重要的,所以首先就要去学习看看,相关的node的模块,来看一看相关的内容和可用性. 正文篇: nodeJS的API学习之路.(这里我们将 ...

  7. linux(ubuntu16.04)下安装和破解pycharm专业版

    我用的linux 版本是ubuntu,查看版本命令是: lsb_release -a 因为学习Python爬虫,pycharm是Python很好用的IDE,但是专业版需要付费,所以开始安装: 首先在官 ...

  8. fatal: Could not read from remote repository.

    fatal: Could not read from remote repository. Please make sure you have the correct access rightsand ...

  9. LeetCode OJ:Largest Number(最大数字)

    Given a list of non negative integers, arrange them such that they form the largest number. For exam ...

  10. Git学习--版本回退

    现在,你已经学会了修改文件,然后把修改提交到Git版本库,现在,再练习一次,修改readme.txt文件如下: Git is a distributed version control system. ...