1. 程式人生 > 實用技巧 >CentOS-7.2、7.5模板機制作

CentOS-7.2、7.5模板機制作

一、準備環境

1.1 在VMware Workstation 12 Pro上新建虛擬機器

磁碟大小,如果是個人測試環境50G夠用了,如果是公司測試環境建議100G

1.2 虛擬機器網路設定

如果需要再新增一個內網網絡卡,操作過程

二、安裝CentOS 7

2.1下載CentOS 7

https://mirrors.aliyun.com/centos/7.3.1611/isos/x86_64/

2.2 安裝CentOS 7

開機啟動虛擬機器

如果想讓網絡卡和centos6名稱一樣ifcfg-eth0,那麼通過如下方法修改,如果不想和centos6一樣,採用

centos7預設網絡卡命名方式,就不需要按tab鍵了,直接回車。建議和centos6一樣,方便後面管理網路。

當然安裝完成後照樣也可以修改和centos6一樣的命名方式的。如下采用和centos6一樣的網絡卡命名方式操作:

在下一行輸入 net.ifnames=0 biosdevname=0 然後回車(目的centos 7網絡卡命名為eth0)

200MB

三、優化CentOS 7系統

3.1優化網絡卡ifcfg-eth0(在虛擬機器內部操作)

CentOS 7.2網絡卡預設為ifcfg-eno,CentOS 7.5網絡卡預設為ifcfg-ens160,CentOS 7.6網絡卡預設為ifcfg-

ens33

CentOS 7.2網絡卡為預設為eno:

[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eno16777736
TYPE=Ethernet
BOOTPROTO=dhcp    #修改為static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes            #修改為no
IPV6_AUTOCONF=yes        #此項刪除
IPV6_DEFROUTE=yes        #此項刪除
IPV6_PEERDNS=yes        #此項刪除
IPV6_PEERROUTES=yes    #此項刪除
IPV6_FAILURE_FATAL=no    #此項刪除
NAME=eno16777736
UUID=a60ac1a5-59e2-460e-8e62-07c1b65a1186    #如果作為模板機建議刪除此項,雖然克隆後不影響
DEVICE=eno16777736
ONBOOT=no            #修改為yes
#以下部分是新增的
IPADDR=10.0.0.100
NETMASK=255.255.255.0
GATEWAY=10.0.0.2
#如下是選做的,也可以後期通過/etc/resolv.conf配置DNS
#如果想配置DNS訪問外網可以在此處配置DNS,此處配置後不需要再通過修改/etc/resolv.conf方式配置DNS了,此處新增DNS1或DNS2,DNS可以是內網也可以是外網DNS,如果不需要配置DNS,此處可以不配置
DNS1=8.8.8.8
#如果1個DNS不夠,可以再增加一個DNS2
DNS2=114.114.114.114

最後修改完後如下所示:

[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eno16777736
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
NAME=eno16777736
UUID=a60ac1a5-59e2-460e-8e62-07c1b65a1186
DEVICE=eno16777736
ONBOOT=yes
#以下部分是新增的
IPADDR=10.0.0.100
NETMASK=255.255.255.0
GATEWAY=10.0.0.2
DNS1=8.8.8.8
DNS2=114.114.114.114

修改完成後重啟網絡卡生效

[root@localhost ~]# systemctl restart network    #重啟所有網絡卡

CentOS 7.2網絡卡為eth0和上面方法一樣的,只是配置檔案中所有的eno16777736修改為eth0而已

[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
BOOTPROTO=dhcp    #修改為static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes            #修改為no
IPV6_AUTOCONF=yes        #此項刪除
IPV6_DEFROUTE=yes        #此項刪除
IPV6_PEERDNS=yes        #此項刪除
IPV6_PEERROUTES=yes    #此項刪除
IPV6_FAILURE_FATAL=no    #此項刪除
NAME=eth0
UUID=a60ac1a5-59e2-460e-8e62-07c1b65a1186    #如果作為模板機建議刪除此項,雖然克隆後不影響
DEVICE=eth0
ONBOOT=no            #修改為yes
#以下部分是新增的
IPADDR=10.0.0.100
NETMASK=255.255.255.0
GATEWAY=10.0.0.2
#如下是選做的,也可以後期通過/etc/resolv.conf配置DNS
#如果想配置DNS訪問外網可以在此處配置DNS,此處配置後不需要再通過修改/etc/resolv.conf方式配置DNS了,此處新增DNS1或DNS2,DNS可以是內網也可以是外網DNS,如果不需要配置DNS,此處可以不配置
DNS1=8.8.8.8
#如果1個DNS不夠,可以再增加一個DNS2
DNS2=114.114.114.114
[root@localhost ~]# systemctl restart network    #重啟所有網絡卡

測試環境單網絡卡CentOS 7.5網絡卡為預設為ens

[root@mobanji network-scripts]# vim /etc/sysconfig/network-scripts/ifcfg-ens160
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp            #修改為static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes            #修改為no
IPV6_AUTOCONF=yes        #此項刪除
IPV6_DEFROUTE=yes        #此項刪除
IPV6_FAILURE_FATAL=no    #此項刪除
IPV6_ADDR_GEN_MODE=stable-privacy    #此項刪除
NAME=ens160
UUID=a60ac1a5-59e2-460e-8e62-07c1b65a1186    #如果是作為模板機建議刪除此項,雖然克隆後不影響
DEVICE=ens160
ONBOOT=no#修改為yes
#以下部分是新增的
IPADDR=10.0.0.100
NETMASK=255.255.255.0
GATEWAY=10.0.0.2
#如下是選做的,也可以後期通過/etc/resolv.conf配置DNS
#如果想配置DNS訪問外網可以在此處配置DNS,此處配置後不需要再通過修改/etc/resolv.conf方式配置DNS了,此處新增DNS1或DNS2,DNS可以是內網也可以是外網DNS,如果不需要配置DNS,此處可以不配置
DNS1=8.8.8.8
#如果1個DNS不夠,可以再增加一個DNS2
DNS2=114.114.114.114
[root@localhost ~]# systemctl restart network    #重啟所有網絡卡

最後修改後如下所示:

[root@mobanji ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens160
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
NAME=ens160
DEVICE=ens160
ONBOOT=yes
IPADDR=10.68.8.100
NETMASK=255.255.255.0
GATEWAY=10.68.8.1
DNS1=10.68.8.38
DNS2=10.68.8.48

備註:

網絡卡中配置了DNS1、DNS2那麼重啟網絡卡systemctl restart network的時候會自動在/etc/resolv.conf中自動生成DNS地址。

如下所示:

[root@mobanji ~]# cat /etc/resolv.conf
nameserver 10.68.8.38
nameserver 10.68.8.48

所以CentOS中如果網絡卡中配置了DNS那麼不需要重複在/etc/resolv.conf中再重複指定DNS了。如果不想在網絡卡中配置DNS那麼可以直接在/etc/resolv.conf檔案中配置DNS。

CentOS 7.6:

舉例2:個人實驗環境,雙網絡卡,ens33對外,ens34對內

[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=10.0.0.100
NETMASK=255.255.255.0
GATEWAY=10.0.0.2
DNS1=223.5.5.5
DNS2=223.6.6.6
[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens34
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
NAME=ens34
DEVICE=ens34
ONBOOT=yes
IPADDR=172.16.1.100
NETMASK=255.255.255.0

最後在虛擬機器外部用CRT遠端連線虛擬機器

3.2關閉selinux

[root@localhost ~]# getenforce
Enforcing
[root@localhost ~]# setenforce Permissive
[root@localhost ~]# getenforce           
Permissive
[root@localhost ~]# sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
[root@localhost ~]# reboot
[root@localhost ~]# getenforce
Disabled

備註:

也可以通過/etc/sysconfig/selinux關閉selinux

[root@mobanji ~]# ll /etc/sysconfig/selinux
lrwxrwxrwx. 1 root root 17 Feb  1 10:57 /etc/sysconfig/selinux -> ../selinux/config

3.3關閉NetworkManager和防火牆開機自啟動

[root@localhost ~]# systemctl disable firewalld
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable NetworkManager

3.3修改主機名-設定模板機主機名mobanji,此步驟可以不配置

[root@localhost ~]# hostname mobanji
[root@localhost ~]# vi /etc/hostname  
localhost.localdomain	修改為mobanji
ctrl+D登出後,再登入後,主機名已修改為mobanji

3.4設定DNS解析-內網DNS

[root@mobanji ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens160
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
NAME=ens160
DEVICE=ens160
ONBOOT=yes
IPADDR=10.68.8.100
NETMASK=255.255.255.0
GATEWAY=10.68.8.1
DNS1=10.68.8.38
DNS2=10.68.8.48

備註:

網絡卡中配置了DNS1、DNS2那麼重啟網絡卡systemctl restart network的時候會自動在/etc/resolv.conf中自動生成DNS地址。

如下所示:

[root@mobanji ~]# cat /etc/resolv.conf
nameserver 10.68.8.38
nameserver 10.68.8.48

所以CentOS中如果網絡卡中配置了DNS那麼不需要重複在/etc/resolv.conf中再重複指定DNS了。如果不想在網絡卡中配置DNS那麼可以直接在/etc/resolv.conf檔案中配置DNS。

手動修改DNS配置如下所示:

[root@localhost ~]# vi /etc/resolv.conf 
nameserver 10.0.0.2
如果想設定外網dns可以設定為
nameserver 114.114.114.114
nameserver 8.8.8.8

3.5 安裝常用的軟體包

yum install -y vim net-tools wget lrzsz tree screen lsof tcpdump nc \
mtr nmap telnet dos2unix sysstat nc nmap zip unzip ntpdate

前3個是必須要安裝的

ifconfig在net-tools包裡面

安裝完系統一定不要執行yum updata,否則系統版本會升級。

3.6 更改CentOS-Base、EPEL源為阿里源

預設情況下centos7內建的CentOS-Base、EPEL都是國外的,國外源慢,網絡不穩定等因素,所以需要更改為國內的源,例如阿里雲源。base是內建的源,epel是第三方源。

根據:https://mirrors.aliyun.com/提示操作即可,現在阿里雲映象網站已修改為https://opsx.alibaba.com/mirror

1.更改CentOS-Base為阿里雲源

CentOS 7
1、備份
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
2、下載新的CentOS-Base.repo 到/etc/yum.repos.d/
CentOS 7
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
3、之後執行yum makecache生成快取


2.更改EPEL源為阿里源

https://opsx.alibaba.com/mirror

方法1:推薦

epel
##epel 配置方法
###1、備份(如有配置其他epel源)
mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.backup
mv /etc/yum.repos.d/epel-testing.repo /etc/yum.repos.d/epel-testing.repo.backup
2、下載新repo 到/etc/yum.repos.d/
epel(RHEL 7)
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo


方法2:

找到centos7的EPEL倉庫源rpm包,直接安裝。操作如下:

#直接執行安裝
rpm -ivh

3.7 設定linux伺服器時間同步

備註:時間同步一律使用阿里雲的NTP時間同步伺服器,因為time.nist.gov時間同步伺服器ping不同,所以國內還是用阿里雲的NTP伺服器吧

詳情請看:https://help.aliyun.com/knowledge_detail

阿里雲:內網和公網NTP伺服器和其他網際網路基礎服務

https://help.aliyun.com/knowledge_detail/40583.html?spm=5176.11065259.1996646101.searchclickresult.2bc34270br1kx1

阿里雲公網NTP伺服器地址:

ntp1.aliyun.com
ntp2.aliyun.com
ntp3.aliyun.com
ntp4.aliyun.com
ntp5.aliyun.com
ntp6.aliyun.com
ntp7.aliyun.com

操作如下:

[root@mobanji ~]# /usr/sbin/ntpdate ntp1.aliyun.com
 4 Oct 12:23:24 ntpdate[24685]: no server suitable for synchronization found
[root@mobanji ~]# echo '#time sync by oldboy at 2018-12-3 16:22:31'>>/var/spool/cron/root
[root@mobanji ~]# echo '*/5 * * * * /usr/sbin/ntpdate ntp1.aliyun.com >/dev/null 2>&1'>>/var/spool/cron/root
[root@mobanji ~]# crontab -l
#time sync by oldboy at 2017-10-04
*/5 * * * * /usr/sbin/ntpdate ntp1.aliyun.com >/dev/null 2>&1

3.8 核心優化

cat >> /etc/sysctl.conf<<EOF
# =====================================================================================
# new add
# 關閉ipv6
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

# 避免放大攻擊
# 開啟惡意icmp錯誤訊息保護
net.ipv4.icmp_echo_ignore_broadcasts = 1

# 開啟惡意icmp錯誤訊息保護
net.ipv4.icmp_ignore_bogus_error_responses = 1

# 關閉路由轉發
# 在系統不作為不同網路之間的防火牆或閘道器時,要求進行如下設定。
# 設定ip_forward為0, 禁止ip轉發功能
net.ipv4.ip_forward = 0
# 設定send_redirects為0, 禁止接收轉發重定向報文
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0

# 開啟反向路徑過濾
# 設定rp_filter為1,開啟反向路徑過濾功能,防止ip地址欺騙
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1

# 關閉sysrq功能
kernel.sysrq = 0

# core檔名中新增pid作為副檔名
kernel.core_uses_pid = 1
# 開啟SYN洪水攻擊保護(防範少量SYN攻擊)
net.ipv4.tcp_syncookies = 1

# 修改訊息佇列長度
kernel.msgmnb = 65536
kernel.msgmax = 65536

# 設定最大記憶體共享段大小bytes
kernel.shmmax = 68719476736
kernel.shmall = 4294967296

# timewait的數量,預設180000
net.ipv4.tcp_max_tw_buckets = 6000
net.ipv4.tcp_sack = 1
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_rmem = 4096 87380 4194304
net.ipv4.tcp_wmem = 4096 16384 4194304
net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216

# 每個網路介面接收資料包的速率比核心處理這些包的速率快時,允許送到佇列的資料包的最大數目。
net.core.netdev_max_backlog = 262144

# 限制僅僅是為了防止簡單的DoS 攻擊
net.ipv4.tcp_max_orphans = 3276800

# 未收到客戶端確認資訊的連線請求的最大值
# 設定tcp_max_syn_backlog,以限定SYN佇列的長度
# 記錄的那些尚未收到客戶端確認資訊的連線請求的最大值。對於有128M記憶體的系統而言,預設值是1024
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_timestamps = 0

# 核心放棄建立連線之前傳送SYNACK 包的數量
net.ipv4.tcp_synack_retries = 1

# 核心放棄建立連線之前傳送SYN 包的數量
net.ipv4.tcp_syn_retries = 1

# 啟用timewait 快速回收
net.ipv4.tcp_tw_recycle = 1

# 開啟重用。允許將TIME-WAIT sockets 重新用於新的TCP連線
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_fin_timeout = 1

# 當keepalive 起用的時候,TCP 傳送keepalive 訊息的頻度。預設是2 小時
net.ipv4.tcp_keepalive_time = 30

# 允許系統開啟的埠範圍
net.ipv4.ip_local_port_range = 1024    65000

# 修改防火牆iptables表大小,預設65536
net.netfilter.nf_conntrack_max=655350
net.netfilter.nf_conntrack_tcp_timeout_established=1200

# 確保無人能修改路由表
# 設定accept_redirects為0, 禁止接收路由重定向報文,防止路由表被惡意更改
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.all.secure_redirects = 0
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.conf.default.accept_redirects = 0
# 設定secure_redirects為1,只接受來自閘道器的“重定向”icmp報文
net.ipv4.conf.default.secure_redirects = 0

#決定檢查過期多久鄰居條目
net.ipv4.neigh.default.gc_stale_time=120
 
#使用arp_announce / arp_ignore解決ARP對映問題
net.ipv4.conf.default.arp_announce = 2
net.ipv4.conf.all.arp_announce=2
net.ipv4.conf.lo.arp_announce=2 # 避免放大攻擊
# 開啟惡意icmp錯誤訊息保護
# net.ipv4.icmp_echo_ignore_broadcasts = 1
# 開啟惡意icmp錯誤訊息保護
# net.ipv4.icmp_ignore_bogus_error_responses = 1
 
# 處理無源路由的包
net.ipv4.conf.all.accept_source_route = 0

# web應用中listen函式的backlog預設會給我們核心引數的net.core.somaxconn限制到128,而nginx定義的NGX_LISTEN_BACKLOG預設為511,所以有必要調整這個值。
net.core.somaxconn = 32768
 
EOF

儲存生效:sysctl -p

操作過程:

[root@localhost ~]# sysctl -p
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.icmp_ignore_bogus_error_responses = 1
net.ipv4.ip_forward = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
net.ipv4.tcp_max_tw_buckets = 6000
net.ipv4.tcp_sack = 1
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_rmem = 4096 87380 4194304
net.ipv4.tcp_wmem = 4096 16384 4194304
net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.core.netdev_max_backlog = 262144
net.ipv4.tcp_max_orphans = 3276800
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_synack_retries = 1
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_fin_timeout = 1
net.ipv4.tcp_keepalive_time = 30
net.ipv4.ip_local_port_range = 1024    65000
sysctl: cannot stat /proc/sys/net/netfilter/nf_conntrack_max: No such file or directory
sysctl: cannot stat /proc/sys/net/netfilter/nf_conntrack_tcp_timeout_established: No such file or directory
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.all.secure_redirects = 0
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.conf.default.accept_redirects = 0
net.ipv4.conf.default.secure_redirects = 0
net.ipv4.neigh.default.gc_stale_time = 120
net.ipv4.conf.default.arp_announce = 2
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.lo.arp_announce = 2 # 避免放大攻擊
net.ipv4.conf.all.accept_source_route = 0
net.core.somaxconn = 32768
[root@localhost ~]# 
因為未安裝iptables,所以報錯這個,不影響的,可以忽略。
sysctl: cannot stat /proc/sys/net/netfilter/nf_conntrack_max: No such file or directory
sysctl: cannot stat /proc/sys/net/netfilter/nf_conntrack_tcp_timeout_established: No such file or directory
net.ipv4.conf.all.accept_redirects = 0

設定配置檔案許可權:

# 預設許可權不安全,如下所示:
[root@localhost ~]# ll /etc/sysctl.conf
-rw-r--r--. 1 root root 4470 Aug 17 23:38 /etc/sysctl.conf
[root@localhost ~]# 
# 安全優化,一鍵操作
chown root:root /etc/sysctl.conf
chmod 0600 /etc/sysctl.conf

備註:

在系統不作為不同網路之間的防火牆或閘道器時,要求進行如下設定。

設定ip_forward為0, 禁止ip轉發功能

設定send_redirects為0, 禁止接收轉發重定向報文

如果需要ip轉發需要把這兩項開啟。

3.9 系統最大開啟數修改

一、 最大開啟檔案數的限制

# 快速操作:
cat >> /etc/security/limits.conf<<EOF
# new add
root soft nofile 65535
root hard nofile 65535
* soft nofile 65535
* hard nofile 65535
EOF


# 慢速操作
vi /etc/security/limits.conf
最後新增
# End of file
root soft nofile 65535
root hard nofile 65535
* soft nofile 65535
* hard nofile 65535

二、使用者程序限制

# 快速操作:
cat >/etc/security/limits.d/20-nproc.conf<<EOF
# Default limit for number of user's processes to prevent
# accidental fork bombs.
# See rhbz #432903 for reasoning.
# 預設是4096,修改為40960,也可以改為unlimited
*          soft    nproc     40960
root       soft    nproc     unlimited
EOF


[root@localhost ~]# cat /etc/security/limits.d/20-nproc.conf
# Default limit for number of user's processes to prevent
# accidental fork bombs.
# See rhbz #432903 for reasoning.

*          soft    nproc     40960
root       soft    nproc     unlimited
[root@localhost ~]# 

# 慢速操作
vi /etc/security/limits.d/20-nproc.conf
[root@localhost ~]# vim /etc/security/limits.d/20-nproc.conf
# Default limit for number of user's processes to prevent
# accidental fork bombs.
# See rhbz #432903 for reasoning.

# *          soft    nproc     4096
# root       soft    nproc     unlimited  
# 加大普通使用者限制  也可以改為unlimited
*          soft    nproc     40960
root       soft    nproc     unlimited

此步驟需要重啟機器生效,可以設定完後再重啟

備註:更新系統並重啟(選做)。-一定不要操作,慢,效率低,還不如直接安裝最新版本的作業系統

提示:此步驟慎重操作,因為會把centos 7.2升級為最新的版本。

所以建議有需求再更新,沒有需求不要更新。

[root@localhost ~]# yum update -y && reboot

3.9 克隆虛擬機器

centos 7關機方法
1、init 0
2、shutdown -h now
備註:halt(centos7無效,centos6有效)

請關閉虛擬機器,並克隆當前虛擬機器mobanji到linux-node1、linux-node2,建議選擇“建立連結克隆”,而不是選擇”建立完整克隆”。

克隆完畢後請給linux-node2設定正確的IP地址和主機名。

四、備註

4.1 備註1

如果是做openstack等二次虛擬化實驗測試,虛擬機器需要cpu需要開啟虛擬化。如下所示: