1.Nat 和桥接网络
1.1 Nat 和桥接网络的区别
nat :
NAT模式,就是在你的Windows电脑(假设叫A电脑)的网络基础上,再生成一个子网络,ip的前两位默认就是192.168,然后第三位是随机,第四位是自己可以手动设置的。使用这种模式唯一的一个缺点就是你的虚拟机只有当前电脑(A电脑)可以访问,其他电脑不管通过什么方式都是访问不了的,然后在A电脑上创建多台虚拟机,这些虚拟机和A电脑都可以相互ping通。
NAT:网络地址转换(模式):借助宿主机来上网,没桥接那么麻烦,只用配置DNS即可。缺点:扎根于宿主机,不能和局域网内其它真实的主机进行通信。
体系图:
桥接网络:
桥接模式是这样的,让你的虚拟机的ip和Windows的ip在同一个网段,这样有什么好处呢,好处就是:只要A电脑和B电脑在同一个网段当中(连了同一个网络,或者插着同一家公司的不同网线,理论上就叫在同一个网段当中),这样A电脑上的虚拟机,B电脑也能访问得到,这样就可以使用几台配置不太好的Windows电脑每台都配置一个虚拟机,让这些虚拟机组成一个大数据的集群
桥接:桥接网络(模式):手动配置IP、子网掩码、网关,地址需要和宿主机同一网段,相当于局域网内新建了一台主机。
体系图 :
共同点:两种方式都能让虚拟机通过主机上网
差异:1.桥接配置稍麻烦,但是应用广。
2.NAT配置简单,但是只能和宿主机通信,应用狭窄。
2.反向代理服务器: nginx
2.1 nginx 简介:
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。能够支持高达 50,000 个并发连接数的响应 .
2.2 nginx 的优点:
1、可以高并发连接
官方测试Nginx能够支撑5万并发连接,实际生产环境中可以支撑2~4万并发连接数。
原因,主要是Nginx使用了最新的epoll(Linux2.6内核)和kqueue(freeBSD)网路I/O模型,而Apache使用的是传统的Select模型,其比较稳定的Prefork模式为多进程模式,需要经常派生子进程,所以消耗的CPU等服务器资源,要比Nginx高很多。
2、内存消耗少
Nginx+PHP(FastCGI)服务器,在3万并发连接下,开启10个Nginx进程消耗150MB内存,15MB*10=150MB,开启的64个PHP-CGI进程消耗1280内存,20MB*64=1280MB,加上系统自身消耗的内存,总共消耗不到2GB的内存。
如果服务器的内存比较小,完全可以只开启25个PHP-CGI进程,这样PHP-CGI消耗的总内存数才500MB。
3、成本低廉
购买F5BIG-IP、NetScaler等硬件负载均衡交换机,需要十多万到几十万人民币,而Nginx为开源软件,采用的是2-clause BSD-like协议,可以免费试用,并且可用于商业用途。
BSD开源协议是一个给使用者很大自由的协议,协议指出可以自由使用、修改源代码、也可以将修改后的代码作为开源或专用软件再发布。
4、配置文件非常简单
网络和程序一样通俗易懂,即使,非专用系统管理员也能看懂。
5、支持Rewrite重写
能够根据域名、URL的不同,将http请求分到不同的后端服务器群组。
6、内置的健康检查功能
如果NginxProxy后端的某台Web服务器宕机了,不会影响前端的访问。
7、节省带宽
支持GZIP压缩,可以添加浏览器本地缓存的Header头。
8、稳定性高
用于反向代理,宕机的概率微乎其微。
9、支持热部署
3. 桥接模式软件下载
3.1 vmware 创建桥接模式
3.2 修改ip地址
跟到 /etc/sysconfig/network-scripts/ifcfg-ens33 这个路径
进入里边然后改ip地址
然后重启网络
systemctl restart network
测试 ping www.baidu.com
3.3 安装 jdk
(1)把window中的jdk软件托到centos中并解压
(2)重命名
(3)配置环境变量
(4)重新加在profile文件
source /etc/profile
验证: javac
3.4 安装 tomcat
(1)把tomcat放置到linux并解压
(2)重命名
(3)启动tomcat
ps -ef | grep tomcat ---查询进程 tomcat
(4)systemctl stop firewalld 关闭防火墙
3.5 安装mysql
1.1 MySQL安装
1.1.1 下载wget命令
yum -y install wget
1.1.2 在线下载mysql安装包
wget https://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
1.1.3 安装MySQL
rpm -ivh mysql57-community-release-el7-8.noarch.rpm
1.1.4 安装mysql服务
- 首先进入
cd /etc/yum.repos.d/
目录。
cd /etc/yum.repos.d/
- 安装MySQL服务(这个过程可能有点慢)
yum -y install mysql-server
解决办法如下: rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
再次执行 如下命令
yum -y install mysql-server
1.1.5 启动MySQL
systemctl start mysqld
1.2 修改MySQL临时密码
MySQL安装成功后会有一个临时密码,我们可以使用grep
命令查看临时密码先登录进去MySQL,然后修改MySQL密码。
1.2.1 获取MySQL临时密码
grep 'temporary password' /var/log/mysqld.log
1.2.2 使用临时密码先登录
mysql -uroot -p
我的临时密码是:a22XRJ88=+a;
1.2.3 把MySQL的密码校验强度改为低风险
set global validate_password_policy=LOW;
1.2.4 修改MySQL的密码长度
set global validate_password_length=5;
1.2.5 修改MySQL密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'admin';
1.3 允许远程访问
1.3.1 首先要关闭Cenots的防火墙
sudo systemctl disable firewalld
1.3.2 修改MySQL允许任何人连接
1)首先登录MySQL
mysql -uroot -padmin
2)切换到mysql数据
use mysql;
3)查看user表
select Host,User from user;
发现root
用户只允许localhost
主机登录登录
4)修改为允许任何地址访问
update user set Host='%' where User='root';
5)刷新权限
flush privileges;
1.3.3 使用Navicat连接工具测试
3.6 安装 nginx
(1)安装相关的依赖
yum install -y gcc-c++
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel
(2)上传nginx并解压
(3)创建一个目录---作为nginx的安装路径
(4)进入到nginx的解压目录并指定nginx的安装路径为上面的路径
./configure --prefix=/usr/nginxcd
(5)编译nginx的源码并安装
make 编译
make install 安装
(6)进入安装路径 /usr/nginx
conf: nginx的配置目录
html:静态资源
logs: 日志
sbin: 脚本---启动 关闭 重加载
(7)启动nginx
./nginx 启动nginx
./nginx -s stop 关闭nginx
./nginx -s reload 重新加载配置文件
通过ps -ef | grep nginx命令查看进程
(8)访问nginx
成功
2. 修改 自定义 server 访问
server {
listen 81;
server_name localhost;
location / {
root static;
index main.html;
}
}
然后运行加载 /usr/nginx/sbin/nginx -s reload