系統日誌和RAID
(一)Linux系統日誌
1、日誌記錄了系統每天發生的各種各樣的事件,對於解決計算機
系統的故障和保證系統的安全來說非常重要。用戶可以通過日誌來了解系統運行的狀態,檢查各種錯誤發生的原因,或者尋找***者留下的痕跡。
2、Linux操作系統中的日誌,包括日誌類型、日誌管理、日誌監
測和分析等內容。
Linux系統包含了很多與日誌有關的軟件包,通過這些軟件包可以對日誌進行記錄、管理、分析、監測等操作。其中,最基本的系統日誌功能是由sysklogd軟件包實現的,它記錄了內核和Linux系統最關鍵的日誌。
3、日誌是保障Linux系統安全的重要手段,通過審計和監測系統日誌可以及時發現系統故障,檢測和追蹤***,併爲系統出錯時能恢復正常工作提供重要的幫助。
RHEL 5發行版包含了兩種系統日誌功能:
一種是syslog,用於記錄常規的日誌;
另外一種是klog,用於記錄內核活動信息。
4、日誌進程syslogd的配置文件是/etc/syslog.conf,它規定了系統日誌記錄哪些內容、採取什麼動作等等。
syslog.conf是典型的Unix配置格式,每行包含一項配置內容,
“#”是註釋符,其後的字符將被忽略,空行和空格也被忽略。
5、日誌類型
保留字段中的“類型”代表信息產生的源頭,可以是:
auth 認證系統,即詢問用戶名和口令
cron 系統定時系統執行定時任務時發出的信息
daemon 某些系統的守護程序的syslog,如由in.ftpd產
生的log
kern 內核的syslog信息
lpr 打印機的syslog信息
mail 郵件系統的syslog信息
mark 定時發送消息的時標程序
news 新聞系統的syslog信息
user 本地用戶應用程序的syslog信息
uucp uucp子系統的syslog信息
local0.. 7 種本地類型的syslog信息,這些信息可以又用戶來定義
* 代表以上各種設備
6、級別
保留字段中的“級別”代表信息的重要性,可以是:
emerg 緊急,處於Panic狀態。通常應廣播到所有用戶;
alert 告警,當前狀態必須立即進行糾正。例如,系統數
據庫崩潰;
crit 關鍵狀態的警告。例如,硬件故障;
err 其它錯誤;
warning 警告;
notice 注意;非錯誤狀態的報告,但應特別處理;
info 通報信息;
debug 調試程序時的信息
none 通常調試程序時用,指示帶有none級別的類型產
生的信息無需送出。如*.debug;mail.none表示調
試時除郵件信息外
7、動作
“動作”域指示信息發送的目的地。可以是:
/filename 日誌文件。由絕對路徑指出的文件名,此文
件必須事先建立;
@host 遠程主機; @符號後面可以是ip,也可以是域
名,默認在/etc/hosts文件下loghost這個
別名已經指定給了本機。
user1,user2 指定用戶。如果指定用戶已登錄,那麼他們
將收到信息;
* 所有用戶。所有已登錄的用戶都將收到信息。
8、系統默認log
從初始的系統日誌配置可以看到,默認情況下,Linux的日誌文件都存放在/var/log目錄,這些日誌文件的文件主用戶基本上都是root,而且大部分的日誌其它用戶是不能查看的。
9、Linux系統還使用一種特殊的日誌保留用戶的登錄信息,這些日誌信息存放在/var/log目錄的wtmp和lastlog文件,以及/var/run目錄的utmp文件中,它們是由多個進程寫入的。有關當前登錄用戶的信息記錄在文件utmp中。wtmp文件主要存放用戶的登入和退出信息,此外還存放關機、重起等信息。最後一次登錄的信息存放在lastlog文件中。
注意:wtmp文件類型是data文件,不能用vi編輯。
系統日誌爲保證主機安全提供了有力的手段,通過系統日誌,系統管理員可以發現操作系統及應用進程運行時存在的各種問題,以及實現對用戶進行審計等功能。
10、爲了減輕系統管理員的負擔,Linux系統提供了一種日誌轉儲的功能。假設一個日誌文件的名字是log,利用日誌轉儲功能,可以在某一時刻,自動將其改名爲log.1,而原來的log文件清空後繼續使用。再到了某一時刻,log.1將命名爲log.2,log命名爲log.1,log再清空後繼續。依次類推,最終結果是把日誌分到按順序排列的文件中。
在Linux系統中,日誌轉儲功能是由logrotate命令實現的,它可以設置成按日、按周或按月進行轉儲,也能在文件太大時立即處理。
(二)RAID
1、Redundant Array of Independent Disks
RAID是將同一陣列中的多個磁盤視爲單一的虛擬磁盤,數據是
以分段的方式順序存放於磁盤陣列中。
2、Disk Striping
(1)將數據按照一定大小分成多個數據塊,這些數據塊可以被
分別存放在不同的物理盤上
(2)系統在從特定硬盤讀取數據時可以通知下個目標盤準備數
據
(3)提高系統讀寫數據的性能
3、Disk Mirroring
(1)將相同的數據同時寫入多個硬盤中
(2)當某個物理硬盤失效時,提供數據資料的保護能力
(3)降低系統寫數據的性能
磁盤鏡像 即RAID-1
利用率50%,容錯
鏡像卷(需要兩個或兩個以上的硬盤)(簡單卷的兩個相同的複製件,磁盤利用率僅僅爲50%,容錯功能)
如果要實現容錯功能,我們還可以選擇鏡像卷,也叫RAID-1卷,它好比簡單卷的兩個相同的複製件。數據在寫入的時候,兩個磁盤上存儲的信息是完全一樣的,起到備份數據的作用。當任意一個磁盤發生故障時候,你可以用另外一個鏡像恢復數據。不過它的磁盤利用率僅僅爲50%,所以它的成本相對較高。
要建立鏡像卷,我們可以根據創建新卷嚮導,在“創建的卷的類型”一頁,選擇兩個或兩個以上動態物理磁盤,分別定義空間大小(最好使用大小、型號和製造廠家都相同的磁盤),點擊“下一步”;然後再選擇一種文件系統格式,進行格式化。操作成功後,就可以用鏡像卷存儲數據了。
4、Hot Swap
(1)處於運行狀態的磁盤陣列子系統當出現單個物理盤失
效的情況時,採用新硬盤將失效物理盤在線替換,同
時保證系統穩定運行
(2)只有RAID級別爲1、5、10的陣列才提供該功能。
熱插拔技術
熱插拔控制器:: 電源和散熱管理
5、Parity
– 來自多個物理磁盤上的數據通過異或(XOR)操作運算產生的冗餘奇偶數據
– 當單個硬盤失效時,這些冗餘數據能夠通過與其它物理磁盤上的數據進行異或(XOR)操作而恢復由於硬盤失效而丟失的數據
– 產生的冗餘數據可以被存放於一個專作奇偶校驗用的硬盤上,也可以將這些奇偶校驗數據分散分佈在磁盤陣列的全部硬盤中
– 產生和存儲奇偶校驗數據需要一些額外的操作,目前產生奇偶校驗數據有兩種方式:硬件生成和軟件計算。
6、RAID技術的實現
1)RAID Levels— RAID 0
RAID0
– Striping
– 數據以分段的方式放在磁盤陣列中,沒有校驗數據。
– 沒有容錯能力,同一通道4個1GB的硬盤做RAID0的效率是1個4GB硬盤的3-3.5倍;
RAID 0系統的工作原理
2)RAID Levels— RAID 1
RAID1
– Mirroring
– 使磁盤讀取的效率增加,但寫入的效率降低
– 通過數據直接備份具有容錯能力
RAID 1工作原理圖示
3)RAID Levels— RAID 5
RAID5
– Striping with Distributed Parity
– 有校驗數據,提供數據容錯能力。只能容許損壞一塊硬盤,數據纔不會丟失。
– 校驗值分散在各個盤的不同位置,相當程度的分散了負載,故有較好的性能,尤其是對小型數據。RAID5適用於銀行和股市的聯機交易系統(OLTP)。
RAID-5 正常時
RAID-5受損時
RAID 5 XOR 復原
RAID5E模式下可以容許同時損壞兩塊硬盤。
4)RAID Levels— RAID 10
5、爲什麼用RAID卡
用戶對磁盤系統的四大要求
– 增加磁盤I/O存取速度
– 數據安全性要求,及容錯(Fault tolerance)的能力
– 有效的利用磁盤空間
– 分擔主機CPU的I/O事務
– 降低內存及磁盤的性能差異
– 提高計算機的整體工作性能
6、軟RAID與硬RAID
? RAID也有全軟、半軟半硬與全硬之分。全軟RAID就是指RAID的所有功能都是操作系統(OS)與CPU來完成,沒有第三方的控制/處理 (業界稱其爲RAID協處理器)與I/O芯片。這樣,有關RAID的所有任務的處理都由CPU來完成,可想而知這是效率最低的一種RAID。由於全軟 RAID是在操作系統下實現RAID,不能保護系統盤,亦即系統分區不能參與實現RAID。有些操作系統,RAID的配置信息存在系統信息中,而不是存在磁盤上,當系統崩潰,需重新安裝時,RAID的信息也會丟失。尤其是全軟RAID 5是CPU的增強方式,會導致30%-40%的I/O功能降低,所以在服務器中不建議使用全軟RAID。
總結:
1、 RAID就是廉價冗餘磁盤陣列。
– 一種在配件、存儲子系統和系統級別上通過硬件和軟件冗餘來保護重要數據和改善系統性能的方法;
– 利用磁盤分段、高速緩存等技術提高磁盤存取速度,同時通過磁盤鏡像、數據冗餘提供數據保護和備份。
2、RAID技術如何實現數據保護
7、RAID操作
1)添加2個分區
2)mdadm創建RAID
mdadm -C /dev/md2 --level=0 --raid-devices=2
(創建的RAID名稱) (RAID0) (用兩個分區)
/dev/sda9 /dev/sda10
(分區或硬盤設備名稱)
3)創建文件系統
4)使用RAID
mount /dev/md2 /mnt
創建成功。
8、現在重新啓動會失效,包括md2。所以要修改/etc/fstab文件
vi /etc/fstab
修改完畢,重新啓動掛載失敗。因爲md2開機之後不存在。
9、執行vi /etc/mdadm.conf添加配置文件
10、現在重新啓動之後生效。