[toc] Linux硬體基礎 一、電腦的相關介紹 現在的人們幾乎無時無刻都在使用電腦!而且已經離不開電腦了。像桌上的台式電腦(桌機)、筆記本電腦(筆電)、平板電腦、智能手機等等,這些東西都算是電腦。 台式機 電腦 台式機電腦主要分為主機和顯示器兩個部分,一般用於家庭娛樂、日常辦公,例如:聽音樂、 ...
目錄
Linux硬體基礎
一、電腦的相關介紹
現在的人們幾乎無時無刻都在使用電腦!而且已經離不開電腦了。像桌上的台式電腦(桌機)、筆記本電腦(筆電)、平板電腦、智能手機等等,這些東西都算是電腦。
台式機 電腦
台式機電腦主要分為主機和顯示器兩個部分,一般用於家庭娛樂、日常辦公,例如:聽音樂、打游戲、看電影、做圖表等。優點是可以配置獨立顯卡、音效卡、顯示器等設備,因此配置會更高一些,使用時更為的方便。缺點是設備體積和重量太大,占地方且移動不方便
筆記本電腦
筆記本電腦以其簡便、小巧、攜帶方便等優點被更多人選擇使用,早期多用於辦公,現在已經逐步走進千家萬戶,成為國內電腦用戶的主流選擇、和早期不同的是,現在筆記本電腦的部件參數配置也可以很高,並且價格已經下降到普通用戶可以接受的程度了。
硬體是組成電腦的物理實體,它提供了電腦工作的物質基礎,人通過硬體向電腦系統發佈命令、輸入數據,並得到電腦的響應,電腦內部也必須通過硬體來完成數據存儲、計算及傳輸等各項任務。
無論是哪一種電腦和伺服器,一個完整的硬體系統從功能角度必須包括運算器、控制器、存儲器、輸入/輸出設備5個核心部分,每個功能部件各盡其職、協調工作。根據電腦的特點,我們通常將硬體分為主機和外部設備兩部分。
電腦主機內部結構如下圖所示:
電腦的硬體組成部件如下圖所示:
電腦工作原理圖如下:
圖-電腦硬體基本組成圖示
1.主機、外部設備
2.主機:CPU存儲設備 光碟機 記憶體 顯卡 主板 電源
3.外部設備: 鍵盤 滑鼠 攝像頭 掃描儀 印表機 顯示器 音響
4.電腦工作原理
電腦原理由馮·諾依曼(Von Neumann)與莫爾小組於1943年—1946年提出。在人類科技史上還沒有一種科學可以與電腦的發展之快相提並論。電腦原理適用於科學計算、信息管理等領域。
電腦的工作過程是將現實世界中的各種信息轉換成電腦能夠理解的二進位代碼(信息編碼),然後保存在電腦的存儲器(數據存儲)中,再由運算器對數據進行處理(數據計算)。在數據存儲和計算過程中,需要通過線路將數據從一個部件傳輸到另外一個部件(數據傳輸)。數據處理完成後,再將數據轉換成人類能夠理解的信息形式(數據解碼)。在以上工作過程中,信息如何編碼和解碼,數據存儲在什麼位置,數據如何進行計算等,都由電腦能夠識別的機器指令(指令系統)控制和管理。
二、運維的核心職責
企業數據安全(不丟失、不泄露)
企業數據是每個現代IT企業的生命線,作為linux運維人員,不但不能丟失任何數據,同時,也不能泄露公司的任何有用數據給外部人員。
業務7*24 小時運行,不宕機
互聯網企業甚至傳統企業(例如:銀行和電信),除了數據安全外,還需要業務有持續運行的能力,這對linux運維人員來說,增加了更高的要求。
企業業務服務效率高(用戶體驗好)
企業一切工作的最終目的都是給用戶提供高效、舒心的服務,如果網站打開很慢,用戶的使用體驗就會很差,這樣的企業是沒有任何生命力的。因此,linux運維人員需要不斷的優化網站業務,讓用戶能夠高效的訪問網站,這是決定linux運維人員是否能拿高薪的必備條件。
三、運維的平時工作內容
1.日常伺服器的維護,緊急故障的處理
2. 代碼上線,gitlab + jenkins,shell腳本
3.項目:備份,遷移,升級,rsync
4.日常伺服器監控,zabbix
5.梳理總結文檔,畫圖
6.領導的其他事情
四、伺服器的相關介紹
又稱伺服器,提供計算和存儲的服務,功能搭建網站所使用的。伺服器的構成和通用的電腦結構類似,但是由於需要提供高可靠的服務,因此在處理能力、穩定性、可靠性、安全性、可擴展性、可管理性等方面要求較高。
簡單來講:伺服器就是一臺特殊的電腦,它的配置更高,設備更貴更好,主要用在企業的後臺為用戶提供各種業務服務。
在網路情況下,備份伺服器,資料庫庫伺服器,前端伺服器,文件伺服器。
伺服器的功能:搭建網站(互聯網企業常見應用)等應用服務所使用的機器,相對於其他台式機或筆記本電腦來說,他更加的穩定和可靠。其硬體有7*24小時持續運行的能力。
圖-互聯網主流伺服器外觀
1.伺服器的尺寸
所使用的筆記本電腦的顯示器可以按照屏幕大小分為14英寸、15.6英寸等,同樣,伺服器也是有尺寸的,這個尺寸一般用來描述伺服器的高度,即U(unit)。
根據高度來計算的,單位u(unit),1u=4.445cm=1.75英寸
常用伺服器的大小: 1u 、2u 、4u等
2.伺服器的分類
- 機架式伺服器
機架式伺服器的外形看來不像電腦,而像"抽屜"(如下圖所示),有1U、2U、4U等規格。機架式伺服器一般安裝在標準的19英寸機櫃裡面。這種類型是我們工作中使用最多的伺服器類型。
圖-機架式伺服器
- 刀片式伺服器
刀片式伺服器的外觀類似一個箱子里擺放整齊的書(如下圖所示)。
刀片式伺服器是指在標準高度的機架式機箱內可插裝多個卡式的伺服器單元,實現高可用和高密度。每一塊"刀片"實際上就是一塊系統主板。它們可以通過"板載"硬碟啟動自己的操作系統,如Windows NT/2000、Linux等,類似於一個個獨立的伺服器,在這種模式下,每一塊母板獨立運行自己的系統,服務於指定的不同用戶群,相互之間沒有關聯,因此相較於機架式伺服器和機櫃式伺服器,單片母板的性能較低。不過,管理員可以使用系統軟體將這些母板集合成一個伺服器集群。在集群模式下,所有的母板可以連接起來提供高速的網路環境,並同時共用資源,為相同的用戶群服務。在集群中插入新的"刀片",就可以提高整體性能。而由於每塊"刀片"都是熱插拔的,所以,系統可以輕鬆地進行替換,並且將維護時間減少到最小。
刀片式伺服器如下圖所示:
- 塔式伺服器
塔式伺服器(Tower Server)應該是最容易理解的一種伺服器結構類型。因為它的外形以及結構都跟立式PC差不多(如下圖所示),當然,由於伺服器的主板擴展性較強、插槽也多出一堆,所以個頭比普通主板大一些,因此塔式伺服器的主機機箱也比標準的ATX機箱要大,一般都會預留足夠的內部空間以便日後進行硬碟和電源的冗餘擴展。但這種類型伺服器也有不少局限性,比如,在需要採用多台伺服器同時工作,以滿足較高的伺服器應用需求時,由於其個體比較大,占用空間多,也不方便管理,便顯得很不適合使用。
塔式伺服器如下圖所示:
3.伺服器的常見品牌
- DELL(戴爾) 互聯網公司應用最廣
- HP惠普 部分互聯網公司在用
- IBM 較高大上的伺服器,有些傳統企業在用,百度也在用。
- 浪潮 國產,傳統企業、學校用,總部在山東濟南
- 聯想 國產,部分企業在用。
- 航天聯志 國產,部分企業在用。
- 華為 國產,部分企業在用。
4.雲伺服器
雲伺服器(Elastic Compute Service, ECS)是一種簡單高效、安全可靠、處理能力可彈性伸縮的計算服務。其管理方式比物理伺服器更簡單高效。用戶無需提前購買硬體,即可迅速創建或釋放任意多台雲伺服器。
簡單理解就是:根據用戶的需求,進行按量分配。
互聯網公司常用的雲伺服器的品牌如下:
- 阿裡雲 適合人群:較廣泛。
- 騰訊雲 適合人群:游戲客戶、開發者、APP用戶等。
- 西部數位 適合人群:中小企業或個人用戶,無需特別懂技術。
- AWS亞馬遜 國外品牌
- 百度雲、金山雲、華為雲、天翼雲、ucloud、世紀互聯、網宿科技、35互聯、華夏名網等眾多品牌。
5.伺服器的常見型號
dell伺服器:
主流應用時間段 | 1U的主流型號 | 2U的主流型號 |
---|---|---|
2010年以前 | 1850、1950 | 2850、2950 |
2010-2013年 | R410、R610 | R710 |
2014-2016年 | R420、R430、R620、R630 | R720、R730 |
新產品 | R6415 | R740/R740xd/R7425 |
銷售:看伺服器到官網,買伺服器找銷售。
部分產品圖片
- Dell R720
加上蓋子。
- Dell R6415
- Dell R740
- Dell R7425
Dell伺服器部分型號的含義:
例:R720
R 代表的是機架式伺服器
(T=塔式,M=刀片式)
7 代表路數,1-3是單路,4-7是雙路,8可以說是雙路也可以是四路,9是四路
2 代表是伺服器的代數,0是十代,2代表第十二代。依次類推
0 代表CPU的品牌,0=Intel ,5=AMD
IBM伺服器
1U伺服器 | 3550/m3 3550/m5 |
---|---|
2U伺服器 | 3650 |
4U伺服器 | 3850 |
8U伺服器 | 3950 |
IBM伺服器質量好,但價格貴,互聯網公司不太常用,僅作瞭解即可
6. 伺服器核心部件介紹
伺服器的內部結構和台式機電腦大同小異,基本零部件和台式電腦一樣,例如有CPU處理器、記憶體、磁碟。所不同的是,伺服器可以容納的CPU處理器數量更多,風扇也更多,可插拔的硬碟數量也可以多很多。下圖為伺服器的內部結構:
圖-伺服器內部結構
電源
電源相當於人體的心臟,保障伺服器的電力供應,如果要買伺服器,請選擇質量好的電源。
伺服器電源就是指使用在伺服器上的電源(POWER),它和PC(個人電腦)電源一樣,都是一種開關電源。
伺服器電源按照標準可以分為ATX電源和SSI電源兩種。ATX電源使用較為普遍,主要用於台式機、工作站和低端伺服器;而SSI電源是隨著伺服器技術的發展而產生的,適用於各種檔次的伺服器。
在生產環境當中,若是單個伺服器核心業務,最好使用雙電源,分別接機房A、B線路。如果集群(一堆機器做一件事)的情況下可以不使用雙電源。除此之外,運維工作就不用過多考慮電源的其他問題了。
典型的電源圖片如下圖:
- CPU處理器
CPU處理器相當於人體的大腦,負責整個電腦的運算和控制,是伺服器性能效率的最核心部件。(如下圖所示)
圖-伺服器CPU外形示例**
CPU常見的種類分為精簡指令集和複雜指令集兩類:
精簡指令集的CPU設計代表有Sun公司的Sparc系列和ARM系列等,這類CPU的設計特點是指令集精簡,每個指令執行的時間很短,操作簡單、效率高。
複雜指令集的設計代表有大家熟知的Intel志強系列(XEON)(應用廣泛)和AMD系列(應用不多)等。這類CPU的設計特點是指令數量多,指令集複雜且執行的時間較長,但可以處理的事物更多、更豐富。目前我們所用的電腦和伺服器都是使用這類的CPU。
Intel、AMD被稱為x86架構的CPU,主要用於PC或Dell等常見品牌的系列伺服器上。
伺服器CPU的顆數,我們稱為路數。例:Dell-R630雙路1U伺服器、Dell-R720雙路2U伺服器、Dell-R830四路2U伺服器。
CPU一般通過頻率(GHz)表示性能的好壞,頻率越高速度越快,簡單來說,CPU頻率就是用來表示CPU每秒鐘工作次數的,例如我用的電腦CPU是如下圖所示:
企業級常見物理伺服器配置:
一般企業里的伺服器,CPU個(顆)數為2-4顆,單個(顆)CPU是四核,記憶體總量一般是16G-256G(32G,64G較常見)。
做虛擬化的宿主機(例如:應用虛擬化軟體(VMware)、KVM的主機),CPU顆數可達4-8顆,記憶體總量一般是48G-128G,常規企業可以同時啟動6-10個虛擬機,甚至更多,主要是根據業務需求決定虛擬機的配置大小的。
由於CPU長時間運行會發熱,因此需要降溫的設備,即CPU風扇或散熱片(如下圖所示),散熱片主要是金屬銅或者鋁製的,目的就是將熱量快速傳導出去。
圖-伺服器CPU風扇
在企業級系統運維中,選擇CPU硬體配置,以及監測和優化伺服器系統CPU性能是運維人員的常見工作之一。CPU的優化是一個複雜的工作,需要長期的實踐和反覆觀察。
記憶體
記憶體(RAM)(如圖所示)是伺服器中的一個臨時存儲器,它只負責數據的中轉而不能永久保存。若斷電,則數據就會丟失。
作用:記憶體是CPU和磁碟之間的緩衝設備,一般程式運行的時候會被調度到記憶體中執行,伺服器關閉或程式關閉之後,數據自動從記憶體中釋放掉。
特點:記憶體的容量和處理速度直接決定了電腦數據傳輸的快慢。記憶體和CPU、硬碟一起並稱為電腦的三大件。
圖-記憶體條
程式、進程和守護進程的基本概念:
程式: c/php/java,代碼文件,放在磁碟中的數據。
進程: 正在運行的各類程式,進程運行就是把程式放在記憶體里執行。
守護進程(daemon): 持續保持運行著的程式。
五、企業案例:提升用戶體驗的網站解決方案
1.門戶(大網站
)極端案例:大併發寫入案例(例如:過年搶紅包、淘寶的雙十一、電商的促銷活動)
首先會把用戶的數據先寫到記憶體,積累一定的量後,然後再定時或者定量的寫入到磁碟(減輕磁碟的壓力,減少磁碟I/O (Input/Output))中,最終還是會把數據載入到記憶體中再對外提供訪問。目的還是減輕對磁碟的訪問壓力,相關流程圖如下:
圖-高併發企業業務寫入流程圖
- 這種狀況的特點如下:
優點是寫數據到記憶體時,性能高、速度快。
缺點是可能會丟失一部分在記憶體中還沒有來得及存入到磁碟的數據。
- 解決數據不丟的方法:
①.在伺服器主板上安裝蓄電池,在斷電後宕機前的瞬間把記憶體中的數據寫回到磁碟。
②.使用UPS電池組不間斷供電(持續供電10分鐘,IDC數據中心機房-UPS 1小時)。 UPS(Uninterruptible Power System/Uninterruptible Power Supply),即不間斷電源,是將蓄電池(多為鉛酸免維護蓄電池)與主機相連接,通過主機逆變器等模塊電路將直流電轉換成市電的系統設備。可以把它理解為充電寶。
③.選有雙路電的機房,使用雙電源、分別接不同路的電,以及將伺服器放到不同的機櫃,將企業的業務放置到不同的地區(異地)。
④.柴油發電機+油罐,一般機房會和附近的加油站簽訂緊急供油協議。
1.中小企業案例
對於併發訪問(可以理解為同時訪問數量)不是很大、數據量也不是特別大的網站,若是讀多寫少的業務,會先把數據寫入到磁碟,然後再通過程式把寫到磁碟的數據讀入到記憶體里,再通過記憶體對外提供訪問服務(如圖所示)。絕大多數企業的業務邏輯中讀請求(例如:瀏覽頁面)是高於寫請求(例如:寫文章、發朋友圈)的。
圖-中小企業訪問量低的讀寫流程示意圖
- 註意:由於99%的網站以及企業都是以讀取為主,寫入為輔的,讀寫比例一般可能大於10:1,所以併發寫入一般都不是大問題。這裡提到的把數據寫入到記憶體,一般是由Memcache或Redis等高效的記憶體級別軟體來實現的,各類關係型資料庫一般也都有讀寫緩存的功能。
2.小結
看企業的具體的需求,然後選擇對應的方案。
企業linux面試題:電腦操作系統中的buffer與cache有什麼區別?
對於新手,可以參考如下說明來理解或解答。
①.緩衝區(buffer)
將數據寫入到記憶體中,這個存放數據的記憶體空間在linux系統中一般被稱為緩衝區(buffer),例如:寫入到記憶體緩衝區,即寫緩衝。
為了提高寫操作性能,數據在寫入最終介質或下一層級介質前,會合併放在緩衝區中。這樣會增加數據持久寫的延時,因為第一次寫入緩衝區後,在向下寫入數據之前,還要等待後續的寫入,以便湊夠數據或者定時寫入到永久存儲介質中。
②.緩存區(cache)
從記憶體里讀取數據,這個存放數據的記憶體空間在linux系統中一般被稱為緩存區(cache),例如:從記憶體讀取,即讀緩存。
操作系統用緩存來提高文件系統的讀性能和記憶體分配性能,應用程式使用緩存也是為了提升讀的訪問效率。將經常訪問的操作結果保存在緩存中可備隨時使用,從而避免了總是執行讀磁碟取數據等的一些操作,從而減輕了磁碟的壓力。
圖-緩衝與緩存對比
- 小提示:緩存無處不在,無論是電腦硬體、操作系統,還是企業網站集群及其他業務系統