書接上回
Linux-1
Linux-02
Linux性能分析
一、iptables
- 使用示例
1)iptables 是 Linux 防火牆工作在使用者空間的管理工具,是基于核心的防火牆,是netfilter/iptablesIP 資訊包過濾系統是一部分,用來設定、維護和檢查 Linux 核心的 IP 資料包過濾規則。
iptables調轉示意
raw 表 | mangle 表 | nat 表 | filter 表(預設) |
PREROUTING 鍊 | PREROUTING 鍊 | PREROUTING 鍊 | |
資料包剛到達防火牆改變目的位址 DNAT | INPUT 鍊 | ||
主要對外部包進入 linux 系統進行資訊過濾 | |||
OUTPUT 鍊 | POSTROUTING 鍊 | POSTROUTING 鍊 | |
資料包離開防火牆改變源位址 SNAT | FORWARD 鍊 | ||
主要對内部 linux 系統索要發送的包進行資訊過濾 | |||
/ | INPUT 鍊 | OUTPUT 鍊 | |
改變本地産生的包的目的位址 | OUTPUT 鍊 | ||
将外面過來的包傳遞到内部計算機中 | |||
/ | OUTPUT 鍊 | / | 鍊裡是對應的規則 |
/ | FORWARD 鍊 | / | / |
在連接配接跟蹤之前處理資料包 | 拆解封包,做出修改,重新封裝功能 | 網絡位址轉換功能,核心子產品 | 過濾功能,防火牆,核心子產品 |
#
# iptables [-t 表名] 選項 [鍊名] [條件] [-j 控制類型]
# 1)預設filter表;
# 2)預設表内所有鍊;
# 3)選項、鍊名、控制類型使用大寫字母,其餘均為小寫;
iptables -nvL --line-numbers # 檢視規則并顯示序号
iptables -F # 清空規則鍊, Flush
iptables -P INPUT DROP # 設定預設政策, Plicy
iptables-save > 20220327.iptable
iptables-restore < 20220327.iptable
- 應用執行個體(SNAT&DNAT)
iptables -I INPUT -p icmp -j ACCEPT # iptables -I 頭部添加新規則 INPUT規則鍊 -p icmp ACCEPT動作
iptables -D INPUT 1 # iptables -D 删除 INPUT鍊1号規則
iptables -I INPUT -s 192.168.10.0/24 -p tcp --dport 22 -j REJECT # 禁止源自該網段流量通路本機sshd服務
# 端口轉發 路由前
iptables -t nat -A PREROUTING -i eth0 -d 192.168.16.1 -p tcp --dport 80 -j DNAT --to-destination 192.168.16.1:8080 # 端口轉發
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080 # 端口轉發 路由前
# setting for loopback interface
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
- SNAT(源位址轉換,内網通路外網,作用于 POSTROUTING)
iptables -t nat -A POSTROUTING -o eth1 -s 192.168.1.0/24 -j SNAT --to-source 218.29.30.31
iptables -t nat -A POSTROUTING -o eth1 -s 192.168.1.0/24 -j MASQUERADE
- DNAT(目标位址轉換,外網通路内網,作用于 PREROUTING)
# 外網 PREDOUTING DNAT 内網
iptables -t nat -A PREROUTING -i eth1 -d 218.29.30.31 -p tcp --dport 80 -j DNAT --to-destination 192.168.1.6:80
二、LVM
RAID
- RAID0-Striping
- 組成:多塊硬碟(至少 2 塊)通過硬體或軟體串聯一起,組成大的卷組,提升了硬碟資料的吞吐量,但不具備資料備份和錯誤修複能力;
- 特點:讀寫性能提升;無備援(容錯)能力;空間使用率:ns(s–> 一塊盤使用率);至少 2 塊;
- RAID1-Mirror
- 資料寫到多塊硬碟裝置上,當某一塊硬碟發生故障後,一般會立即以熱交換方式來恢複資料的正常使用,但硬碟的使用率卻下降了,隻有 33%左右;
- 性能提升:寫下降,讀提升;備援能力:有;空間使用率:1/2;至少 2 塊;
- RAID5
- 1. 将硬碟裝置的資料奇偶校驗資訊儲存到除自身外每一塊硬碟裝置上,當硬碟出現問題,通過奇偶校驗資訊來嘗試重建損壞的資料;
- 2. 性能提升:讀寫提升;備援能力:有;空間使用率:(n-1)s/n;至少 3 塊;
- LVM
LVM
- 實體卷(PV)真正的實體硬碟或者分區;
- **卷組(VG)**将多個實體卷合起來組成卷組,組成同一個卷組的實體卷可以是同一個硬碟的不同分區,也可以是不同硬碟的不同分區,抽象為一個邏輯硬碟;
- **邏輯卷(LV)**卷組是一個邏輯硬碟,硬碟分區後才可以使用,類似的,從卷組出來的分區為邏輯卷;
- 使用
- 建立邏輯卷
# PV - VG - LV
[root@xy ~]# pvcreate /dev/sd{c,d}
Physical volume "/dev/sdc" successfully created
Physical volume "/dev/sdd" successfully created
[root@xy ~]# vgcreate storage /dev/sd{c,d} # 添加到storage卷組中
Volume group "storage" successfully created
[root@xy ~]# lvcreate -l 37 -n vo storage # 從卷組裡邊 建立邏輯卷 lvcreate
[root@xy ~]# mkfs.ext4 /dev/storage/vo
[root@xy ~]# mkdir /LVM
[root@xy ~]# mount /dev/storage/vo /LVM/
[root@xy ~]# vim /etc/fstab
/dev/storage/vo /LVM ext4 defaults 0 0
- 如何對邏輯卷擴容
[root@xy ~]# df -Th
[root@xy ~]# fdisk t 8e
[root@xy ~]# mkfs.ext4 /dev/sdb1 # 不用分區也可以
[root@xy ~]# pvcreate /dev/sdb1
[root@xy ~]# vgextend VolGroup /dev/sdb1
[root@xy ~]# lvextend -L +20G /dev/volGroup/VolGroup-lv_root
[root@xy ~]# resize2fs /dev/volGroup/VolGroup-lv_root 32GB
[root@xy ~]# umount /home # 25G
[root@xy ~]# e2fsck -f /dev/volGroup/VolGroup-lv_home
[root@xy ~]# resize2fs -p /dev/volGroup/VolGroup-lv_home 10G # xfs格式用xfs_growfs
[root@xy ~]# mount /home
[root@xy ~]# lvreduce -L -15G /dev/volGroup/VolGroup-lv_home # 減少15G
[root@xy ~]# lvextend -L +15G 或 lvextend -l +100%FREE /dev/volGroup/VolGroup-lv_root
[root@xy ~]# resize2fs -p /dev/volGroup/VolGroup-lv_root
[root@xy ~]# fuser -m -v /home
[root@xy ~]# kill -9 PID # 建議保留Free PE/SIZE 一點空間,不要全用上;