开发环境入门 linux基础 (部分)nginx和nfs
nginx和nfs
复习总结
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
先为rpcbind和nfs做开机启动:
命令: 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的更多相关文章
- 开发环境入门 linux基础 (部分)awk 赋值变量 if
awk 常用于处理格式非常明显的文件 awk -F: '{print $1}' /etc/passwd 含义:取冒号分隔符的第一段内容 $0 指取所有! NF 指有几段内容 $NF 取最后一段内容 ...
- 开发环境入门 linux基础(部分)虚拟内存,rpm和yum安装
虚拟内存,rpm和yum安装 文本中查找 /内容 替换:扩展模式下(:)%s /替换目标/要替换的文件/ (只替换第一个)(后边加g全部替换) :set u添加行号 raid lvm逻辑卷 df - ...
- 开发环境入门 linux基础 (部分)while for 函数 计划任务
while循环 while do 动作 done 需要无限循环时我们会选择while : echo -e 格式处理,将\n的意义不变. exit 指退出执行程序 break 指跳出本层循环 conti ...
- 开发环境入门 linux基础 (部分)正则表达式 grep sed
/etc/profile /etc/bashrc .变量添加到shell环境中,永久生效. /root/.bashrc /root/.bash_profile 正则表达式 定义:正则就是用一些具有特 ...
- 开发环境入门 linux基础 (部分) 复制 用户和组操作 权限更改
复制 用户和组操作 权限更改 CP 复制命令 cp 源文件 目标文件 a) –r(recursive,递归的):递归地复制目录.当复制一个目录时,复制该目录中所有的内容,其中包括子目录的全部内容. b ...
- 开发环境入门 linux基础 基本操作命令(部分) 文本结构和基本命令
文本结构和基本命令 linux系统中系统提示符:$ 表示普通用户 su root切换用户命令(用户名 root),输入密码,切换到其他用户状态 root 命令提示符:# exit 退出当前用户,返回 ...
- 开发环境入门 linux基础 (部分)网络 SSH 更名 DNS解析 元字符
nginx---> web ifconfig 查看网络配置信息 id add show 查看当前网卡信息(最小安装下) mtu 是指网卡传输的最大单元 单位:字节 网卡配置 临时配置 ifcon ...
- 开发环境入门 linux基础 (部分) 归档 压缩 Vi编译器 系统分区
归档 压缩 Vi编译器 系统分区 1.使用cat命令进行文件的纵向合并 1) 使用cat命令实现文件的纵向合并: a) 例如:将用户信息数据库文件和组信息数据库文件 ...
- linux基础之nginx和nfs服务
第一部分: 一.nginx服务安装nginx包(源码安装)1.先cd /etc/yum.repos.d目录下2.yum install epel-release -y(安装扩展包)3.yum in ...
随机推荐
- 【2039】checker(Dp)
我今天脑子貌似又好使了一点,可以做一做DP中的水题了. 这个题难度蓝色,纯属是做的人太少了虚高. 这个题很显然的是可以用一个顺序一个逆序这两个大水转移方程轻松转移出到达这个地方最少需要的棋子数量,然后 ...
- js实现级联菜单(没有后台)
html代码: <!-- js级联菜单 --> <div id="cascMenu"> <select id="select" o ...
- Anton and School - 2 (组合数学)
题意:给你一串只有‘(’与‘)’的字符串,问你多少对括号,括号一定是左边一半的‘(’,右边一半是‘)’ )(()() 答案是:6 题解:枚举每个‘(’,此时设左括号左边有n个‘(’,它右边有m个‘ ...
- vue中编辑代码是不注意格式时会报错
1.是因为我们使用了eslint的代码规范,我们不要使用这种规范就好 2.在build目录下找到webpack.base.conf.js 在里面找到关于eslint的相关配置注释或移除掉就好
- QT (QSS) 编程, QSS语法概述。。setstylesheet
http://www.cnblogs.com/davesla/archive/2011/01/30/1947928.html 转载] QT皮肤(QSS)编程 借用css 的灵感, Qt也支持Qt自己的 ...
- Avoid nesting too deeply and return early避免嵌套太深应尽早返回
当某个变量与多个值进行比较的时候 不要用多个if else 判断是否相等 将多个值放在数组里,然后用PHP函数in_array(mixed $needle,array $haystack),检查数组$ ...
- JavaScrip 原生多文件上传及预览 兼容多浏览器
JavaScrip 原生多文件上传及预览 兼容多浏览器 html代码块 <div class="container"> <label>请选择一个图像文件:& ...
- 关于Javascript没有块级作用域和变量声明提升
Javascript是没有块级作用域的,在语句块中声明的变量将成为语句块所在代码片段的局部变量.例如: if(true){ var x=3; } console.log(x); 结果输出3. 再如: ...
- dede数据库表结构和dedecms数据库字段说明
表名:dede_addonarticle (ENGINE=MyISAM/CHARSET=gbk) 说明:Top 字段名 说明描述 具体参数 aid 文章ID mediumint(8) unsigned ...
- jedis中的一致性hash算法
[http://my.oschina.net/u/866190/blog/192286] jredis是redis的java客户端,通过sharde实现负载路由,一直很好奇jredis的sharde如 ...