看一下httpd信息
web服务主要对应的配置文件
最关键的配置文件是httpd.conf,主配置文件,
由于是模块化,就将不同的配置放到其他的子配置文件加里
moddules和模块相关的放在模块相关的配置文件里了
主程序/usr/sbin/httpd
主页面存放的默认路径
可以直接启动服务
默认网页
修改index.页面
可以修改端口
默认访问80端口,就访问不到了
在一个主机上搭建多个网站可以基于端口号,可以基于ip地址,可以基于FQDN
可以写到这个目录下
恢复80端口
站点目录
创建配置文件
规划站点目录
通过IP访问应该是不一样的
用域名来区分,centos修改etc/host文件
这样就建立起了虚拟主机
实现https
等于扩展了一个模块
证书链文件
LVS
lvs是调度使用的软件
LVS性能极其优秀,主要功能是调度功能,可以把远程客户端发来大量的请求进行调度,调度性能极高,可以达到400W并发(apache最多才1万)
调度功能墙强,但是实际功能比较差,所以需要借助其他软件来弥补功能缺陷
向上扩展,简单地说,就是买好机器,单机总是有极限,好的方法就是增加设备,调度分配问题
向外扩展就是增加设备,增加了一个调度分配的问题
集群:为解决某个特定问题将多台计算机组合起来形成的单个系统
LB负载均衡,把客户请求均匀(或者按照一定比例),分配在不同主机上,每台主机只提供一部分服务,性能就提高了
(mysql的主从只是实现了一个均衡负载(主服务器宕机,从服务器转换成主,需要手工),并没有实现高可用性,MHA才实现高可用性,当主服务器宕机了自动把从服务器变成主,快速地让一个 主服务器继续上线,避免单点失败的问题)、
MTBF 平均无故障时间
MTTR 平均恢复前时间(故障时间)
A=MTBF(无故障时间)/(MTBF+MTTR=总时间)可用性比例
HPC高性能,把很多服务器一起来计算一个特别量大的内容,比如天气预报,神威,天河
高可用性,当主服务器宕机了自动把从服务器变成主,快速地让一个 主服务器继续上线,避免单点失败的问题)
HA高可用,高可用的功能,并不是为了性能的提升,而是实现高可用性
分布式和集群不是一个概念
云盘的数据应该都是分布的,1G文件不是把数据放在单机上,而是分成块放在很多机器上
fastdfs分布式文件系统,就是把数据分布在不同的主机上
LB cLUSTER 均衡负载集群
F5 卖几十万,大众点评的就是70万,买一个不行,可能还单点失败,需要买两个
如果不想花那么高成本,就用软件LVS来解决,linux虚拟服务器,还有一些其他软件
DPORT,传输层只能根据ip地址和端口号来进行调度,要了解NAT机制
应用层协议要进行调度就需要用到proxy server
mysql也可以做反向代理服务器,mysql-proxy,做什么读写分离
DNAT是根据目标端口来转发,iptable的DNAT只能转一个机器,所以就需要用到LVS
如果有私网地址访问互联网,互联网是没有私有地址的,是访问不了的,互联网没有路由到达172网段,这样百度就无法到达目标
所以就有了地址转换技术,NAT,请求报文出去是替换的源地址,这种是SNAT
SNAT,局域网访问互联网可以,但是互联网访问局域网不行,从互联网访问内部就需要DNAT,比如访问114的80端口就转发到哦局域网172的机器上
无论DNAT还是SNAT都是请求报文做的转换
讲iptables,提到过DNAT,把目标地址作为转换,适用于从互联网网络中访问企业内部网络(先是用户的请求,连接公网的地址,公网地址得到请求后转发到企业内部私网地址服务,但是DNAT是一对一,是能把公网请求转发的一个服务器上去,不能转发到多个服务器上去,只能实现单一的一个主机的转发,做不到调度功能,把用户的请求根据某种算法调度到后端的多个服务器上去
‘LVS可以基于DPORT,把目标地址和端口进行替换,
应用层的调度器一般叫代理服务器 proxy server