# hw3 ###### tags: `LSA` [TOC] ## 題目 使用: Ubuntu Linux,上面的服務有用到 MySQL 資料庫跟 Nginx 網頁伺服器,另外也有提供郵件服務讓他公司的人可以使用。 各服務都使用預設路徑存放檔案,Meme 服務的使用者上傳檔也放在網頁的預設路徑中的子目錄中。 問題: 「資料庫讀寫太慢」、「網頁相關的大量不特定檔案頻繁存取,目前讀寫太慢」、「該規劃資料備份的空間,備份包含資料庫、信件、使用者上傳檔案等」 - 500g ssd *1 - 1T ssd *1 - 4T hdd * 1 ## 部份磁碟不需要特意切割 :::info / : 270G,SSD_500G,用來儲存最上一級的目錄,也有緩衝的空間。 /home: 18G,SSD_500G,放資料的目錄,擁有最高權限,且需要讀寫快速以便讀取資料。 /boot: 200MB,SSD_500G,用來儲存系統核心檔案,開機所需要的檔案,200MB就足夠了。 /dev: 300MB,SSD_500G,用來儲存硬體裝置的檔案,300MB就足夠。 /etc: 2.5G,SSD_500G,用來儲存應用程式的設定檔,因應用程式快速更新關係,不能給太少空間來儲存 swap: 2G,HDD_4T,足夠暫時存檔記憶體無法存檔的資料,支撐到儲存完手上的工作即可。 /opt: 50G,HDD_4T,放很多應用程式空間,不需要大空間 ==/var: 0.6TB==, SSD_1TB,用來儲存資料庫相關資料,需要大空間 ==/var/log:0.2TB==, SSD_1TB,用來儲存紀錄檔空間,當系統出問題時可以查看紀錄檔,助於解決問題排除障礙,空間給不用太多也不要太少。 /tmp: 1TB,HDD_4T,放備份臨時檔案 /usr: 1.5TB,HDD_4T,用來儲存使用者的應用程式資料。 web server : 1TB,HDD_4T,用來置放伺服器。網頁伺服器需要容量大空間擺放中小瑣碎檔案。 ::: ## 大小切割不正確 ## 不符合規定(沒有依照目錄並分配大小) ## /srv :::success 為了解決資料庫讀寫太慢的問題,1T的SSD我想分配給/var/lib/ 為了解決網頁資料讀寫太慢的問題,500G的SSD我會分配給/srv/ 4T的HDD裡的2T給/var/ 1.5T用來存放上面2顆硬碟的備份,掛在/var/底下 450G給/home/ 50G給/ ::: ## HW :::success 500g的SSD分成 /boot, / 跟 swap,分別 1GB、350GB 跟 100GB ssd 1T 都給 /var,以解決讀寫太慢的問題 3T留給備份空間。 ::: :::info / 20G SSD1 /boot 200M SSD1 存放啟動核心需要的檔案 /var 1T SSD2 資料庫、網頁 swap 4G HDD 置換空間(虛擬記憶體空間) /tmp 5G HDD 暫存檔 /home 3T HDD 個人檔案 /usr 10G HDD 應用軟體套件等資料,隨著安裝軟體而增加 ::: :::info 題目為下列幾個問題: 1. 資料庫讀寫太慢 2. 網頁相關的大量不特定檔案頻繁存取 3. 規劃資料備份的空間,備份包含資料庫、信件、使用者上傳檔案等 資料庫部分可以放在500G SSD中, 大量不特定檔案頻繁存取可以放在1T SSD中, 至於備份文件可以放在4T HDD中。 ::: :::success Ans: 500g ssd /boot 1G /etc 499G 1T SSD /var 1T 4T HDD /tmp 2T /usr 500G 剩下的分1.5T ::: :::success 500G SSD 。網頁伺服器 要傳送的http 1T SSD 。資料庫(MySQL)(/var/lib/) 網站圖片、檔案(/home/) 會員資料(/home/) 管理員資料(/home/) 信件(var/spool/mail) 4T HDD 。網頁伺服器(Nginx)(/var/log/) -> 2T 。應用程式(小畫家、記事本等等) -> 200GB 。備份資料(/swap) -> 1.8T ::: :::info 4T hdd /var -> 3T -> 網頁伺服器 /swap -> 10G /tmp/ -> 10G /backup -> 600G -> 使用者上傳檔備份 & 郵件備份 -------------------------------------------------------------- 1T ssd /home -> 900G -> 使用者上傳檔 & 資料庫資料備份 /var/mail -> 50G -> 郵件 --------------------------------------------------------------- 500g ssd*1 / -> 10G -> 根目錄 /usr -> 10G -> 放軟體 /lib -> 400G -> 資料庫資料 /boot -> 100MB ::: :::success 500G SSD - /: 50G - /boot: 1G - 儲存Kernal核心 - 給大一點,讓其可以儲存的核心數增加 - 不必擔心空間不足、不必手動清除空間 - /swap: 260 - 建議為Memory兩倍大 - Memory估算: - apache一個連線需要25MB左右 - 假設最大同時上線人數5000人,需125G - 此外還需mysql、圖片...等,約5G - 總共130G - 因此給swap 260G - /home: 89G - 儲存用戶資料、個人設定 - 不須給太多,會操作server的使用者不多 - /usr: 100G - 儲存用戶的工具與應用程式 1T SSD - /opt: 500G - 存雜七雜八的檔案 - /tmp: 300G - 臨時檔案 - /lib: 100G - 儲存library - /mnt: 100G - 系統壞掉時用的 4T HDD - /etc: 2T - 大部分的設定檔 - /var: 2T - 為變數檔案 - 其中mail、log...等皆儲存於此 ::: :::info 500g ssd 根目錄 200G /home 100G /etc 100G /dev 100G 1T ssd /var 1T 4T hdd /boot 100MB /swap 10G 1T 分到 sdb1 1T 分到 sdb2 1T 分到 sdb3 ::: :::success - 500g ssd:/etc - 1T ssd:資料庫,/boot - 4T hdd:web server,/tmp,/var ::: :::info 4T傳統硬碟 - 放 Nginx Web Server - /swap 兩倍記憶體大小 - /home 200G 因為是拿來當 server,理論上不會開給外人用,裡面也不會放太多東西 - 剩下給 / 根目錄 - 留 500G 做彈性使用 1T SSD - 放 Mail Server - /var/mail 250G 500G SSD - 放資料庫 ::: :::success 500GB SSD: / : 50GB SSD /etc : 20GB SSD /tmp : 50GB SSD /var : 50GB SSD /var/log : 30GB SSD /var/mail : 50GB SSD 剩餘250GB作為/var/www的cache使用 /var/www (Apache Web Server): 4TB HDD /var/lib (Program Data包括mysql): 1TB SSD ::: :::info 資料庫讀寫頻繁,所以分配1T SSD /etc 500G /var 500G 網頁伺服器需要魔術大空間 所以4T HDD都給他 /etc 2T /var 2T 資料備份就用500G SSD吧 /swap 35GB /根目錄 468GB ::: :::success 資料庫建在 1T SSD上 讀寫較快 效率較高 網頁檔案存在 4T HDD 因為空間要大 備份檔放在 500G SSD ::: :::info - 500g ssd *1 / -> 30G (根目錄) /lib -> 10G (放一堆常用的函式庫好了) /sbin -> 10G (存放系統啟動時系統須執行的程式) - 1T ssd *1 /etc -> 100G (開機與系統資料檔案均在這個目錄之下,把它存SSD讓他跑快點) /opt -> 500G (就想放雜七雜八的東西嘿嘿) /tmp -> 10G (暫存的資料位置) /var -> 20G (想存一堆紀錄檔) - 4T hdd * 1 /boot -> 10G (啟動程式的檔案) /usr -> 2T (有了空間就是要下載一堆應用程式,踩地雷很重要!) /home -> 1.8T (有了空間就是要存滿自己的東西好開心~) ::: :::success 500G SSD: 16G給swap 雖然較傷SSD,但是軟體到swap後會跑的比在HDD快 176G給/ 300G 給MySQL資料庫 因為是關於文字的資料庫200G應該很夠了,放在SSD是為了使資料庫讀寫速度加快 8G預留 1T SSD: 全給web server 因為web server存取許多東西需較大空間,存在SSD可使網頁檔案的存取速度較快 4T HDD: 300G給/var 供郵件使用 3700G全部留給備份 ::: :::info 500Gssd - /etc ubuntu linux - /boot 3g 4Thdd - webserver - 備份檔案 1T ssd - /etc Nginx - /var MySQL資料庫 ::: :::success 需要的服務 : 資料庫、網頁伺服器、郵件服務 1. 500G SSD 資料庫 /tmp : 500MB 可以暫存一些需要及時用到的檔案或資料 2. 1T SSD 這顆當備份用 3. 4T HDD 網頁伺服器 / : 50G 根目錄 /lib : 500G 驅動放置的地方 /boot : 500MB 開機相關引導檔案 /usr : 500G 放置所有下載的軟體 /var : 1T 有大量的郵件、服務、文件等等要存放 ::: :::info 1T SSD 全給資料庫 /var/lib/mySQL 500G SSD 網頁伺服器(/var/www)(480G) 根目錄(/)(20G) 4T HDD 放信 (/var/spool/mail/) (1T) 有的沒的程式(/usr)(1T) 備份 (2T) ::: :::success 把資料庫掛在500G的SSD,網頁server掛在1T的SSD,備份跟其他與該裝置工作較無關聯的放在4T hard disk。(>_O) wink~ ::: :::info 500G SSD: / 200GB /home 100GB /tmp 50GB 1T SSD: /var 1TB 4T HDD: /boot 80MB /usr 2TB /swap 1GB /etc 1TB ::: :::success 500G SSD: /:15G,所有目錄掛在其下。 /boot:200M,掛載kernel。 /tmp:5G,放臨時檔案。 /opt:300G,放各種雜七雜八的應用程式,ex:xampp -->剩下彈性使用 1T SSD: /var:500G,放變數檔,給資料庫、信件...等等備份空間。 /usr:300G,放應用程式。 -->剩下彈性使用 4T HDD: /swap:16G,記憶體的兩倍,須經常讀寫,故放在HDD。 /home:3T,放個人檔案,ex:文件檔、遊戲檔...等等。 -->剩下彈性使用 ::: :::info 500G SSD: 自由運用 1T SSD: 1T切給etc/ MYSQL資料庫因為反覆讀去資料所以需要讀取速度快的SSD 4T HDD: 3T切給var/ 網頁伺服器需要的空間大,速度比較沒這麼要求,所以放在HDD ::: :::success 500GB SSD: / : 120GB SSD 儲存系統基本內容 /var : 380GB SSD var位置有MySQL資料庫設定以及網頁服務的內容以及var中會儲存log檔。 1TB SSD: /var : 500GB SSD 網頁 /var/lib : 500GB SSD MySQL資料庫及數據 4TB HDD: /var/www : 4TB HDD 網頁服務及伺服器 ::: :::info 磁碟分配: 500g SSD : 5G : /boot /etc : ubuntu Linux 設定檔。 1T SSD: /etc : Nginx 設定檔。 4T HDD: /var : MySQL資料庫庫記錄檔。 網頁伺服器檔案。 備份檔案。 ::: :::success 姓名:余嘉舜 學號:107213062 500g ssd / 100 GB 根目錄 /tmp 100GB 伺服器少重啟所以放大 /boot 300MB /home 50GB 伺服器不用那麼多 /usr 50GB 伺服器不用那麼多 1T ssd /var 1TB 給集料庫用的 4T hdd /swap 16GB 估計8RAM*2速度匹配 /bin 100GB linux工具 /lib 100GB 文件檔 /etc 1TB 雜項 /dev 10GB 驅動目錄 /opt 300GB 其他軟件 ::: :::info HW3-磁碟分割作業2 由 BT 一手創立的 MOLi 科技股份有限公司,專門提供迷因文字的管理服務,傳承老魚的意志,只用一台個人電腦當作伺服器。 這台機器使用 Ubuntu Linux,上面的服務有用到 MySQL 資料庫跟 Nginx 網頁伺服器,另外也有提供郵件服務讓他公司的人可以使用。各服務都使用預設路徑存放檔案,Meme 服務的使用者上傳檔也放在網頁的預設路徑中的子目錄中。 最近午汗肺炎導致大家都要在家,人們過度無聊,導致公司服務人數暴增,系統出現問題,包含「資料庫讀寫太慢」、「網頁相關的大量不特定檔案頻繁存取,目前讀寫太慢」、「該規劃資料備份的空間,備份包含資料庫、信件、使用者上傳檔案等」等,需要進行升級,決定裝一台新的機器。 你能幫他規劃新系統的硬碟嗎? - 500g ssd *1 (Disk_A) - 1T ssd *1 (Disk_B) - 4T hdd * 1 (Disk_C) / - 200G HDD from Disk_C /etc - 200G HDD from Disk_C /usr - 200G SSD from Disk_B /var/lib/mysql/ - 150G SSD from Disk_B /var/www/html - 150G SSD from Disk_B 註:放網頁資料,但不包含梗圖。 /var/www/html/meme_orgin - 100G SSD from Disk_B 註:這些梗圖是屬於最初的梗圖,讓大家能夠更改。 /var/www/html/meme_today - 400G SSD from Disk_B 註:主要是使用者新製作的梗圖會放在這個資料夾一天的時間,之後便會刪除,方便使用者能夠在製作的過程快速讀取圖片,也可以防止已經被使用者使用完畢且長時間未使用的梗圖占用SSD空間。 /var/www/html/meme_user - 2.5TB HDD from Disk_C 註:只要經過使用者修改過的圖片都會在此處長時間存放。 /var/spool - 500G SSD from Disk_A 註:放置Mail以及其他MailServer相關,考慮到MailServer在多人讀取的情況下會有讀寫多次的情況,故將Mail相關掛在SSD上。 /backup/var/spool - 500G HDD from Disk_C /backup/var/www/html - 150G HDD from Disk_C /backup/var/www/html/meme_orgin - 100G HDD from Disk_C /backup/var/lib/mysql/ - 150G HDD from Disk_C /backup/var/www/html/meme_user - 200G HDD from Disk_C 註:因為是備份梗圖製作,可以將每張梗圖的作者、使用圖片、文字格式、文字內容以及文字位於圖片的座標等相關訊息利用文字的方式記錄起來,真的有需要只要利用這些文字就可以重新製作梗圖,這樣就不用浪費大量硬碟空間來存放大量的圖檔。 ::: :::success 107213033 歐哲安 500G SSD / 200GB /boot 100MB 1T SSD /var 800GB 資料庫 網頁及郵件都丟在這,以增加讀寫速度 4T HDD /home 1TB /usr 2TB 下載的軟體 /tmp 200GB 暫存檔放這 /opt 300GB放垃圾程式 /etc 1TB 所有系統的設定檔案 ::: :::info 500G SSD: /usr (300G)放軟體 需要速度 1T SSD: /etc/mysql (500G)資料庫 讀寫次數多 放SSD / (100G)根目錄 4T HDD: /swap (20G) 交換檔案 /var/log/apache2 (1T) web server需要的空間極大 /tmp (10G) ::: :::success 資料庫讀寫太慢-將/var/lib/mysql 存至500GB SSD 網頁相關的大量不特定檔案頻繁存取-將/var/www/html 存至1TB SSD 資料備份空間及其他作業系統存至 4TB HDD ::: :::info swap hdd,32GB。 / 500GB SSD。 /var 1TB SSD,因為資料庫需要讀寫快一點。 /home 300GB HDD,因為是一台網頁伺服器,通常不會開系統帳號給外人 /usr 2TB HDD。因為/usr/bin : 非必要但很常用。 /tmp 1TB HDD。有規劃需要備份 ::: :::success 500GB SSD /home 分配400GB在SSD /var 分配100GB在SSD 1TB SSD MySQL資料庫 分配1TB在SSD 4TB HDD /boot 分配1GB在HDD /dev 分配500MB在HDD /etc 分配1GB在HDD /opt 分配2GB在HHD /tmp 分配1GB在HHD Nginx網頁伺服器 分配2TB在HHD Mail服務 分配100GB在HHD 剩下的空間拿來做備份資料庫、信件、使用者上傳檔案等用途 ::: :::info 107213020 蔡學而 4T hhd: 1.網頁伺服器因為不用開開關關,需要大空間,所以放在這裡切割2T使用 2.備份資料,因hhd在資料上拯救相對容易所以切割200G使用 1T ssd: 500G ssd: 1.因為網頁讀寫速度太慢,為了使讀寫速度加快,將資料庫放在SSD 2. ::: :::success 1. 因為資料庫讀取太慢,所以var/lib要掛在速度比較快的儲存裝置,所以我把500G的ssd割給var/lib 2. 因為網頁的資料大量且不確定的頻繁存取,所以說/srv 要掛在比較比較快的儲存設備裡面,而且網站資料也非常肥大,所以需要更多的空間,所以把1T的ssd割給/srv 3. 剩下的hdd割200G給/home,3T HDD割給/var 用來備份,剩下 800G割1.5倍ram的swap file,分20G給/,剩下全掛在/home ::: :::info HDD /etc 100G 用來放各種應用程式的設定檔(EX:python) /usr 15G 下載一些想下再載的應用程式和小遊戲 /lib 100G 放各式各樣的library /home 100G 家目錄 /tmp 2T 用來存備份的檔案 SSD /var 1T 提供公司的人使用電子郵件以及主要解決資料庫讀寫太慢的問題 /srv 500g 放置一些伺服器需要的網頁資料,並解決網頁相關的大量不特定檔案頻繁存取,目前讀寫太慢的問題 ::: :::success 1T SSD /var 1T 因為我們要做大量的資料庫跟網路伺服器,除此之外我們還需要有信件功能,所以我打算用一整顆SSD來做為網路服務的硬碟,用SSD的速度會很快,會明顯的改善我們資料庫跟伺服器的存取(讀取)速度。 500G SSD / 30G SSD 系統主要的部份。 /boot 100MB SSD 存放ubuntu開機必備文件,用讀取快速的SSD會有好的使用體驗。 4T HDD /tmp 100G 用來存放網路服務執行和程式執行時所產生的暫時資料,是可以刪除的資料。 /swap 4G 用HDD來做為虛擬記憶體空間比SSD會比較好,因為大量的存取會導致SSD壽命快速漸少,而且可以很明確的知道電腦已經用完實體記憶體了。 /home 2T 我打算把這個空間當作備份網路服務的區域,因為有大量的網路服務,因此需要較大空間來做備份,而且備份檔案不需要長期的存取,所以用HDD來儲存就好。 ::: :::info SSD /boot : 30GB 開機快速 /var/lib/mysql: 500GB 資料庫需大量讀寫,改善速度太慢 /var/www : 500GB 目前網頁讀寫太慢,也需要放置使用者的上傳檔 /usr : 300GB 預計下載應用程式會用到的空間 HDD / : 1T 大一點比較好運用 /var/mail : 200GB 提供郵件的儲存空間 swap : 64GB 假設 memory 為32GB,故將 swap 切割為 memory 大小的兩倍 /backup/mysql : 500GB 獨立分配,以防資料庫備份檔太大,佔掉其他空間,也避免被其他備份檔佔掉空間 /backup/www : 500GB 使用者可能會上傳很多圖檔,佔掉比較多的空間 /backup/mail : 200GB 獨立分配,以防mail備份檔太大,佔掉其他空間,也避免被其他備份檔佔掉空間 /backup/other : 200GB 其他想要備份的資料可以放這 (自己建一個子目錄名為 backup 專門放置備份檔 獨立切出來是為了預防備份檔越來越大,以至於影響到其他目錄的空間) 保留 1T 又 336GB HDD + 170GB SSD 等待有需求時再掛載到系統當中 ::: :::success SSD1 (1T) 1. /var/lib/mysql : 配置1T 此目錄底下存放MySQL資料,考慮到讀寫太慢,故單獨從/var裡拉出來放在 SSD裡。 SSD2 (500G) 1. /var/www : 配置500G 因為網頁伺服器位於/var/www/html裡,且html中載入的js之類的資料夾和 index.html在同一資料夾裡,因題目說網頁相關的大量不特定檔案頻繁存取, 目前讀寫太慢,故單獨把他們拿出來放到SSD裡。 又因nginx優點為輕量級佔較少資源記憶體,故選擇把NGINX掛載到500g 的SSD上。 HDD (4T) 1. /var : 配置1T 因為此公司有提供郵件服務(會存放在/var/mail)等變數檔案,需要大量儲存空 間,故選擇掛在HDD。 2. /etc : 配置20G 存放設定檔的地方。 3. / :配置10G 4. /usr : 配置50G 5. /backup : 配置2T 因包含資料庫(/var/lib/mysql)、信件(/var/mail)、使用者上傳檔案 (/var/www/html、/var/log)的備份,且不常讀寫,故放在HDD。 6. /home : 配置20G 這是一台網頁伺服器,通常不會開系統帳號給外人,故不會在裡面放太多東 西。 ::: :::info 500G SSD *1: ● /var/lib/mysql : 500G ○ MySQL 資料庫檔案放置的所在處 ○ 因為需要快速讀寫,所以放SSD 1T SSD *1: ● /var/www : 900G ○ 網頁伺服器有大量不檔案頻繁存取,所以也放SSD ● / : 100G ○ 剩下留一點給根目錄 4T HDD * 1: ● /var/spool/mail ​:​ 1T ○ 郵件收受下來之後,每個使用者信件放置的目錄 ● /var/log/ : 10G ○ 為了避免 log 檔太大,所以給他一個空間,避免他一直長 ● /etc : 1G ○ 存放 nginx 及 mail 的設定檔 ● 備份檔 : ○ 需要備份的目錄 ■ /etc 設定檔很重要!! 100G ■ /var/lib/mysql 資料庫檔案 250G ■ /root 100G ■ /var/www 使用者上傳檔案 500G ■ /var/spool/mail 信件 500G ::: :::success 由 BT 一手創立的 MOLi 科技股份有限公司,專門提供迷因文字的管理服務,傳 承老魚的意志,只用一台個人電腦當作伺服器。 這台機器使用 Ubuntu Linux,上面的服務有用到 MySQL 資料庫跟 Nginx 網頁 伺服器,另外也有提供郵件服務讓他公司的人可以使用。各服務都使用預設路徑存 放檔案,Meme 服務的使用者上傳檔也放在網頁的預設路徑中的子目錄中。 最近午汗肺炎導致大家都要在家,人們過度無聊,導致公司服務人數暴增,系統出 現問題,包含「資料庫讀寫太慢」、「網頁相關的大量不特定檔案頻繁存取,目前 讀寫太慢」、「該規劃資料備份的空間,備份包含資料庫、信件、使用者上傳檔案 等」等,需要進行升級,決定裝一台新的機器。 你能幫他規劃新系統的硬碟嗎? - 500g ssd *1 - 1T ssd *1 - 4T hdd * 1 ˙500g SSD 用400g 放置資料庫 用20g 放置根目錄 / ˙1T SSD 用整顆1T SSD 來放置網頁伺服器 ˙4T HDD Swap 500g 3T 用來備份資料 參考資料 https://kknews.cc/zh-tw/digital/jbopkq6.html https://www.ubuntu-tw.org/modules/newbb/viewtopic.php?post_id=331872 ::: ​ ### Sister's part :::success 答案: 4T hdd: 250G /tmp 50G /opt 放垃圾(程式) 500G /usr 放程式 1T 給根/ 1T /home 10G /boot 給記憶體兩倍的 /swap 記憶體爆了可以使用 剩下的彈性使用 500g ssd : 450T 給/etc 其他彈性使用 1T ssd : 950G給/var 放這裡,可以啟動比較快 其他彈性使用 ::: :::info Linux 系統管理實務 hw3 500G SSD:放系統、網頁相關程式 1T SSD:放資料庫 4T HDD:(3T)放網頁伺服器或資料,(1T)放資料備份,包含資料庫、信件、使用者上傳檔案等 ::: :::success 由 BT 一手創立的 MOLi 科技股份有限公司,專門提供迷因文字的管理服務,傳承老魚的意志,只用一台個人電腦當作伺服器。 這台機器使用 Ubuntu Linux,上面的服務有用到 MySQL 資料庫跟 Nginx 網頁伺服器,另外也有提供郵件服務讓他公司的人可以使用。各服務都使用預設路徑存放檔案,Meme 服務的使用者上傳檔也放在網頁的預設路徑中的子目錄中。 最近午汗肺炎導致大家都要在家,人們過度無聊,導致公司服務人數暴增,系統出現問題,包含「資料庫讀寫太慢」、「網頁相關的大量不特定檔案頻繁存取,目前讀寫太慢」、「該規劃資料備份的空間,備份包含資料庫、信件、使用者上傳檔案等」等,需要進行升級,決定裝一台新的機器。 你能幫他規劃新系統的硬碟嗎? - 500g ssd *1 - 1T ssd *1 - 4T hdd * 1 500G SSD : Linux系統,資料庫 SSD解決讀寫慢的問題。 1T SSD : 網頁伺服器 SSD解決讀寫慢的問題。 使用者上傳檔放預設路徑的子目錄,整個SSD給網頁伺服器。 meme網頁會存放大量媒體,因此較大的SSD給網頁伺服器。 4T HDD : 分隔一個500G、一個1T作為系統跟網頁備份。 較慢但容量大的HDD作為備份。 ::: :::info 由 BT 一手創立的 MOLi 科技股份有限公司,專門提供迷因文字的管理服務,傳承老魚的意志,只用一台個人電腦當作伺服器。 這台機器使用 Ubuntu Linux,上面的服務有用到 MySQL 資料庫跟 Nginx 網頁伺服器,另外也有提供郵件服務讓他公司的人可以使用。各服務都使用預設路徑存放檔案,Meme 服務的使用者上傳檔也放在網頁的預設路徑中的子目錄中。 最近午汗肺炎導致大家都要在家,人們過度無聊,導致公司服務人數暴增,系統出現問題,包含「資料庫讀寫太慢」、「網頁相關的大量不特定檔案頻繁存取,目前讀寫太慢」、「該規劃資料備份的空間,備份包含資料庫、信件、使用者上傳檔案等」等,需要進行升級,決定裝一台新的機器。 你能幫他規劃新系統的硬碟嗎? - 500g ssd *1 給資料庫用 - 1T ssd *1 給資料備份用 - 4T hdd * 1 給網頁用 ::: :::success 500g ssd: 規劃給資料庫 加快讀寫速度 1T ssd: web server 有大量不特定的檔案讀寫,故配較大的ssd 4T hdd: 資料備份 /var/lib/mysql 資料庫 /var/spool/mail 信件 /var/www meme使用者上傳檔 ::: :::info 將/var 這個目錄掛在1T的SSD上,去放MySQL的紀錄檔、Nginx網頁的紀錄檔、不特定檔以及其他郵件,因為需要加快他的讀寫速度且資料量也算大,所以我把此目錄掛在1T的SSD上 將/etc這個目錄掛在500G的SSD上,去放MySQL資料庫的設定檔、Nginx的設定檔、其他服務項目 4 T 的HDD : /root 0.5T /home 0.8 T : 家目錄,放一些已下載的文件 剩下的切給 /usr 、/tmp ... : 在預設路徑(/usr/local目錄)下,放MySQL資料庫的檔案、Nginx網頁的檔案、使用者上傳的檔案、各種備份檔、一些暫存檔,因為需要備份大量的資料,且網頁伺服契友需要較大的空間,所以放在容量大的HDD上 ::: :::success 由 BT 一手創立的 MOLi 科技股份有限公司,專門提供迷因文字的管理服務,傳承老魚的意志,只用一台個人電腦當作伺服器。 這台機器使用 Ubuntu Linux,上面的服務有用到 MySQL 資料庫跟 Nginx 網頁伺服器,另外也有提供郵件服務讓他公司的人可以使用。各服務都使用預設路徑存放檔案,Meme 服務的使用者上傳檔也放在網頁的預設路徑中的子目錄中。 最近午汗肺炎導致大家都要在家,人們過度無聊,導致公司服務人數暴增,系統出現問題,包含「資料庫讀寫太慢」、「網頁相關的大量不特定檔案頻繁存取,目前讀寫太慢」、「該規劃資料備份的空間,備份包含資料庫、信件、使用者上傳檔案等」等,需要進行升級,決定裝一台新的機器。 你能幫他規劃新系統的硬碟嗎? - 500g ssd *1 - 1T ssd *1 - 4T hdd * 1 答: 因為資料庫要頻繁讀寫改,加上資料庫會有龐大的資料,故1T的SSD用來存放資料庫跟,那因為伺服器提供讓其他使用者可以使用,所以/home不能太小,因此規劃250gSSD放/home,網頁伺服器會存放有的沒的程式(可以稱之為亂七八糟程式),因此/opt放在hdd裡面,資料備份的空間很龐大,也較不會經常更動,所以備份資料放在4T的hdd裡面。 ::: :::info 500G SSD: /etc/ 400G,特定主機,系統範圍內的設定檔。 1T SSD: /var/ 900G,啟動比較快 4T HDD: / 根目錄500MB /home/ 500G,不會在裡面放太多東西。 /opt/ 1T,置各種雜七雜八的應用程式,加安裝一些遊戲。 /usr/ 1T,安裝的資料都在這。 /boot 80MB,非必要,視電腦及環境架構決定要不要切;若要切割,不要太小。 ::: :::success 由 BT 一手創立的 MOLi 科技股份有限公司,專門提供迷因文字的管理服務,傳承老魚的意志,只用一台個人電腦當作伺服器。 這台機器使用 Ubuntu Linux,上面的服務有用到 MySQL 資料庫跟 Nginx 網頁伺服器,另外也有提供郵件服務讓他公司的人可以使用。各服務都使用預設路徑存放檔案,Meme 服務的使用者上傳檔也放在網頁的預設路徑中的子目錄中。 最近午汗肺炎導致大家都要在家,人們過度無聊,導致公司服務人數暴增,系統出現問題,包含「資料庫讀寫太慢」、「網頁相關的大量不特定檔案頻繁存取,目前讀寫太慢」、「該規劃資料備份的空間,備份包含資料庫、信件、使用者上傳檔案等」等,需要進行升級,決定裝一台新的機器。 你能幫他規劃新系統的硬碟嗎? - 500g ssd *1 - 1T ssd *1 - 4T hdd * 1 伺服器不用常常開關機,所以開機磁碟不需要用到SSD,因此 /boot 也不用配太大容量,10GB的HDD就很夠了,只要在開機時能讀取OS即可。 再來是 /var 用於存放網頁伺服器的目錄,因有資料庫讀寫太慢的問題,所以將兩顆SSD都掛載於此目錄,確保Server的運行效率。 傳統硬碟則自由分配HDD於 /etc 與 /usr 等目錄,用於備份資料與檔案伺服器的Soft Link之用。 ::: :::info (1)4T HDD swap 96Gb(約取記憶體的1.5倍) /var/www 剩餘部份(網頁伺服器) (2)1T SSD /lib/mysql(資料庫檔案) (3)500Gb SSD /根目錄 5Gb /boot 250Mb /home 100Gb 剩餘空間:備份空間(資料庫,信件/var/spool/mail,使用者上傳檔案/home) 參考網址:Red Hat磁碟分割建議,共筆 ::: :::success 資料庫需要常常讀寫,放在500G SSD。 網頁伺服器不需要時常開關機,放在4T HDD。 /boot 不分割 /etc 設定檔放HDD,給100G /usr 放軟體,給1T /tmp 放暫存,重起後會清掉,給500G /opt 放不重要的檔案,給500G /var 系統紀錄檔,給100G /lib 給100G /bin 給100G ::: :::info 由 BT 一手創立的 MOLi 科技股份有限公司,專門提供迷因文字的管理服務,傳承老魚的意志,只用一台個人電腦當作伺服器。 這台機器使用 Ubuntu Linux,上面的服務有用到 MySQL 資料庫跟 Nginx 網頁伺服器,另外也有提供郵件服務讓他公司的人可以使用。各服務都使用預設路徑存放檔案,Meme 服務的使用者上傳檔也放在網頁的預設路徑中的子目錄中。 最近午汗肺炎導致大家都要在家,人們過度無聊,導致公司服務人數暴增,系統出現問題,包含「資料庫讀寫太慢」、「網頁相關的大量不特定檔案頻繁存取,目前讀寫太慢」、「該規劃資料備份的空間,備份包含資料庫、信件、使用者上傳檔案等」等,需要進行升級,決定裝一台新的機器。 SSD (500G):主要處理資料庫讀寫 (1)/var/log/mysql:/300G (2)/boot:掛載kernel,1G (3)/etc:放置設定檔,30G (4)/home:放置使用者的家目錄,30G (5)/media:掛載點,30G (7)/dev:硬體裝置檔案,20G (8)/tmp:暫存空間,10G (9)剩餘空間保留 SSD(1T):主要處理網頁相關的大量不特定檔案頻繁存取 (1)/var/log/apache2:放置網頁伺服器的記錄檔,500G (2)/var/log:除了網頁伺服器和資料庫的紀錄檔,100G (3)/var/mail:電子信箱,20G (4)/var/lock:跟蹤當前使用中資源的檔案,10G (5)/var/spool:等待處理的離線檔案,10G (4)/var:沒有額外區分的var,100G (7)/root:放置根目錄,20G (8)/lib:放library檔案,20G (9)剩餘空間保留 HDD(4T) 備份用硬碟:備份資料庫、信件、使用者上傳檔案等資料。 (1)備份:/var/log,2T (2)備份:/var/mail,1T (3)剩餘空間保留 ::: :::success 說明: 由 BT 一手創立的 MOLi 科技股份有限公司,專門提供迷因文字的管理服務,傳承老魚的意志,只用一台個人電腦當作伺服器。 這台機器使用 Ubuntu Linux,上面的服務有用到 MySQL 資料庫跟 Nginx 網頁伺服器,另外也有提供郵件服務讓他公司的人可以使用。各服務都使用預設路徑存放檔案,Meme 服務的使用者上傳檔也放在網頁的預設路徑中的子目錄中。 最近午汗肺炎導致大家都要在家,人們過度無聊,導致公司服務人數暴增,系統出現問題,包含「資料庫讀寫太慢」、「網頁相關的大量不特定檔案頻繁存取,目前讀寫太慢」、「該規劃資料備份的空間,備份包含資料庫、信件、使用者上傳檔案等」等,需要進行升級,決定裝一台新的機器。 Q1. 你能幫他規劃新系統的硬碟嗎? - 500g ssd *1 - 1T ssd *1 - 4T hdd * 1 A1. 硬碟 分割目錄 500GB SSD /var/lib/ - 500GB 1TB SSD /usr/share/nginx/ - 1TB 4TB HDD /var/spool/ - 1TB / - 500GB 備份 – 2.5TB 由於mysql資料庫放在/var/lib/mysql裡面, 需要處理大量存取, 所以選擇500GB SSD以提高此服器處理資料的速度 Nginx網頁資料通常儲存在/usr/share/nginx/html 裡面, 同樣需要處理大量存取, 所以選擇1TB SSD 郵件服務資料通常儲存在/var/spool/mail 裡面, 但處理速度的需求並沒有網頁相關那麼頻繁, 所以選擇用1TB的HDD空間內存放 剩下的500GB用來存放根目錄的其他資料, 沒有將不同目錄分割得太細, 希望將來維護或升級可以更彈性處理 網頁伺服器最重要的就是入面的資料, 所以剩下的2.5TB選擇用來備份, 容量剛好就是 “mysql資料庫 + 網頁資料 + 郵件服務資料”這三個資料夾的容量大小 Reference: MySQL database directory (https://stackoverflow.com/questions/6754944/where-is-my-database-saved-when-i-create-it-in-mysql) How can I find my local mail spool?(https://unix.stackexchange.com/questions/82910/how-can-i-find-my-local-mail-spool) Nginx 安裝架設Web伺服器(https://dotblogs.com.tw/grayyin/2017/05/18/183117) ::: :::info Linux系統管理實務 HW3 題目: 由 BT 一手創立的 MOLi 科技股份有限公司,專門提供迷因文字的管理服務,傳承老魚的意志,只用一台個人電腦當作伺服器。 這台機器使用 Ubuntu Linux,上面的服務有用到 MySQL 資料庫跟 Nginx 網頁伺服器,另外也有提供郵件服務讓他公司的人可以使用。各服務都使用預設路徑存放檔案,Meme 服務的使用者上傳檔也放在網頁的預設路徑中的子目錄中。 最近午汗肺炎導致大家都要在家,人們過度無聊,導致公司服務人數暴增,系統出現問題,包含「資料庫讀寫太慢」、「網頁相關的大量不特定檔案頻繁存取,目前讀寫太慢」、「該規劃資料備份的空間,備份包含資料庫、信件、使用者上傳檔案等」等,需要進行升級,決定裝一台新的機器。 你能幫他規劃新系統的硬碟嗎? - 500g ssd *1 - 1T ssd *1 - 4T hdd * 1 Ans : 由於資料庫與網頁相關的檔案讀取皆需要較快速的讀寫速度,所以我考慮將兩顆SSD 組成 RAID0 來提昇讀寫速度。 我會將電腦分割成以下幾個目錄: HDD的部份: / (70 g) /usr (100g) /var (100g) /boot (500mb) /var/spool/mail (mail的存放位置,1TB,mail應該不要求存取速度所以放在hdd) /home (100g) /backup (資料備份,2.5TB,備份包含資料庫、信件、使用者上傳檔案) swap (128g) RAID0的部份 (需較快讀寫速度的東西放在RAID 0 裡面): /var/lib/mysql (mysql的檔案,500g) /var/www/html(網頁檔案,1TB) ::: :::success 硬碟規劃 Ans : 4T DD1 / 1T : 根目錄。 /boot 200M : 給kernel 和開機需要用到的檔案的啦。 /home 20G : 使用者的家目錄。 /usr 100G : 給使用者安裝應用程式的空間。 /opt 30G : 放垃圾程式。 Swap : 假設memory是 16 GB,swap就給32GB,為了不佔用memory,而將不常用的資源移到swap中。 /backup 1T : 拿來備份檔案。 1T SSD /var 1T : 為了應付資料庫和網頁的大量讀寫,配一整顆SSD給他使用。 500G SSD 自由發揮 ::: :::info HW3-磁碟分割作業2 由 BT 一手創立的 MOLi 科技股份有限公司,專門提供迷因文字的管理服務,傳承老魚的意志,只用一台個人電腦當作伺服器。 這台機器使用 Ubuntu Linux,上面的服務有用到 MySQL 資料庫跟 Nginx 網頁伺服器,另外也有提供郵件服務讓他公司的人可以使用。各服務都使用預設路徑存放檔案,Meme 服務的使用者上傳檔也放在網頁的預設路徑中的子目錄中。 最近午汗肺炎導致大家都要在家,人們過度無聊,導致公司服務人數暴增,系統出現問題,包含「資料庫讀寫太慢」、「網頁相關的大量不特定檔案頻繁存取,目前讀寫太慢」、「該規劃資料備份的空間,備份包含資料庫、信件、使用者上傳檔案等」等,需要進行升級,決定裝一台新的機器。 你能幫他規劃新系統的硬碟嗎? - 500g ssd *1 - 1T ssd *1 - 4T hdd * 1 題目中提到的服務總共有:MySQL資料庫、Nginx網頁伺服器以及對內的郵件服務三種。 考量到資料庫本身搜尋、讀寫較為頻繁,將其放在1T ssd,希望能改善資料庫讀寫太慢的問題;而網頁伺服器放在500g ssd上,同樣希望能改善讀寫過慢的問題。 剩下的傳統硬碟中,切1T hdd的空間給對內的郵件服務,剩下的3T中留下2T做資料備份的空間,最後1T不做特別分割,以免後續有其他操作要求而無硬碟空間可以使用。 /root 掛於hdd上。 ::: :::success 500G SSD : 100G -> /var/lib/mysql 400G -> /var 1T SSD : 500G -> /var/www/html 200G -> /var/mail 4T HHD: 2.2T -> /backup 用來備份/var、/var/lib/mysql、/var/www/html、/var/mail、/var/www/html/image等內容 10G -> /home 10G -> swap 1T -> /var/www/html/image 專門儲存用戶上傳的圖片檔 ::: :::info 問題-- 資料庫讀寫太慢、網頁大量不特定檔案頻繁存取,讀寫慢、備份信件上傳檔案等等 1T SSD 掛載到MySQL資料庫上,因為資料庫是一個大完整系統 - /var/lib/mysql/ 500G SSD 掛載到Nginx網頁伺服器上,支援要開啟很多零碎大小檔案使用 - /var/www/ 檔案目錄 - /usr/sbin/ 存放WEB伺服器程式檔案與應用程式位置 4T HDD 負責去備份資料庫、信件、使用者上傳檔案等等 - /var/lib/ 由程式執行時維護的資料 Ex: MySQL - /var/mail/ 用戶電子信箱 - /var/log/ 大量紀錄檔檔案 ::: :::success 答: 規劃: 1. 針對資料庫讀寫太慢的情況,我認為MySQL資料庫可以放在1T ssd中。因為資料庫存有大量的數據,而且會日益新增,因此我們應給予較大的ssd以解決此情況。 2. 針對網頁相關的大量不特定檔案頻繁存取,目前讀寫太慢的情況,我認為Nginx 網頁伺服器可放在500g ssd中。由於網頁也出現讀寫太慢,因此使用ssd是最好的解決方法,但最大的 1Tssd以給MySQL資料庫使用,因此使用500g ssd,亦可解決此情況。 3. 針對該資料備份空間的情況,我們則可以把資料備份到 4T hdd中。首先窄慮到有大量的資料需要備份,此hdd的空間為3顆硬碟中最大,只作備份功能的話,亦不用時常存取資料使用,因此讀寫速度並不是第一考慮因素,所有使用4T hdd就已經可以解決此情況。 ::: :::info HW3-磁碟分割作業 500g ssd 存放資料庫(/etc) 放在/etc中的資料必須要備份,檔案被改掉就完了 1T ssd 網頁相關的大量不特定檔案因為要頻繁存取讀寫 存放置ssd中 存放需要備份的資料庫(/var/lib)、信件(/var/mail)、使用者上傳檔案(/var) /tmp是暫存的地方,需備份的東西不可存放在此 4T hdd 網頁伺服器 :::