1 VMware安装
参考 详细教程
2 Centos7初始化
2.1 配置静态网络
1.# 修改网卡配置文件
[root@client02 ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet #设置网卡类型:以太网
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static #设置网卡配置方式:静态IP地址,dhcp为动态获取
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=abe2adc1-1a45-4c6b-ba97-0cc009fe5ab7
DEVICE=ens33
ONBOOT=yes #设置网卡在Linux操作系统启动时激活
IPADDR=192.168.10.112 #添加IP地址
NETMASK=255.255.255.0 #设置网关的子网掩码
GATEWAY=192.168.10.2 #设置网关的默认网关地址
DNS1=114.114.114.114
DNS2=8.8.8.8
DNS3=233.5.5.5
2.# 重启网卡
[root@client02 ~]# systemctl restart network
3.# 验证通信
[root@client02 ~]# ip a
[root@client02 ~]# ping www.baidu.com #ping不通一般是网关设置有问题
2.2 安装常用依赖包
yum -y install gcc glibc gcc-c++ make cmake net-tools screen vim lrzsz tree dos2unix lsof tcpdump bash-completion wget ntp setuptool psmisc openssl openssl-devel bind-utils traceroute epel-release bash-completion bash-completion-extras bash-completion
组件 | 功能 |
gcc glibc gcc-c++ make cmake | 编译器,编译安装时候需要 |
vim | 编辑器,和vi功能一样 |
lsof | 列出各种进程打开的文件信息(可用于查Pid) |
其他后续使用再更新 |
2.3 关闭防火墙和SElinux
systemctl disable firewalld
systemctl stop firewalld
sed -i 's/^ *SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
setenforce 0
getenforce #查看selniux状态
sestatus
2.4 设置时区并同步时间
date #查看时区是否正确
rm -rf /etc/localtime #使用root权限,删除系统默认时区:非中国所在的东八区
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime #链接到localtime即可
在date查看,看见时区 UTC >> CST
UTC:时间标准时间 CST:China Standard Time 中国标准时区 东八区(UTC+8)
在安装MySQL、Docker前常被需要关闭防火墙和SElinux,why?
SElinux是一个安全模块,在Linux操作系统上提供额外的安全层。它使用强制访问控制(MAC)机制来限制进程的权限,以保护系统免受潜在的安全威胁。然而SElinux可能与很多程序的运行方式不兼容,导致一些问题。
防火墙是一个网络安全系统,用户监控和控制进出的网络的流量。它通过过滤和阻止不必要的网络连接来保护系统的安装。尽管防火墙对于保护系统非常重要,但在安装Docker、MySQL时,它可能会限制Docker容器与外部网络的通信。
1.SElinux与Docke、MySQL运行方式不兼容:SElinux的安全策略可能会限制容器对主机资源访问。
2.防火墙限制容器与外部网络的通信:默认清关下,会限制Docker容器与外部网络的通信,会导致容器无法访问互联网或其他网络资源,可以通过修改防火墙配置来解决。例如:
# 查看防火墙状态
systemctl status firewalld
# 开启防火墙
systemctl start firewalld
# 添加Docker端口到防火墙规则
firewall-cmd --add-port=2376/tcp --permanent
firewall-cmd --add-port=2377/tcp --permanent
firewall-cmd --add-port=7946/tcp --permanent
firewall-cmd --add-port=7946/udp --permanent
firewall-cmd --add-port=4789/udp --permanent
# 重启防火墙
firewall-cmd --reload
在安装Docker之前禁用SELinux和调整防火墙配置后,我们可以顺利地使用Docker运行容器,并与外部网络进行通信。
为了更好地理解这个过程,以下是一个序列图和状态图,用mermaid语法表示