❶ RHEL7有多種安裝方式,以下幾種方式中哪種是本地安裝方式
RHEL7系統安裝方式包括:
1. 手動安裝(介質在本地):
此種方式你可以通過圖形界面操作定製你所需安裝系統的配置及所需軟體包等。
優點:直觀。
缺點:效率低下,配置的東西多時易犯錯。
此種方式僅適用於初次安裝時,熟悉下新系統。
2. 使用kickstart文件自動化安裝(介質在本地):
此種方式有分兩種:kickstart文件存放在本地安裝介質或遠端。
如果在本地需要修改原始鏡像主要是在鏡像中添加kickstart文件和修改isolinux/isolinux.cfg文件。
內容簡介
本書以紅帽公司的Red Hat Enterprise Linux 7為藍本,堅持理論夠用,側重實用的原則,用案例/示例來講解每個知識點。本書針對的是技術型讀者,主要是計算機及相關專業的學生。
本書共8章,主要內容包括:Linux簡介與安裝、Linux的用戶介面與文本編輯器、系統管理、磁碟與文件管理、軟體包管理、系統管理高級、Linux中的Shell編程、網路服務。
編輯推薦
Linux簡介
Linux是一種自由和開放源碼的類Unix操作系統。存在著許多不同的Linux,但它們都使用了Linux內核。Linux可安裝在各種計算機硬體設備中,從手機、平板電腦、路由器和視頻游戲控制台,到台式計算機、大型機和超級計算機。
Linux是一個領先的操作系統,世界上運算最快的10台超級計算機運行的都是Linux操作系統。
嚴格來講,Linux這個詞本身只表示Linux內核,但實際上人們已經習慣了用Linux來形容整個基於Linux內核,並且使用GNU 工程各種工具和資料庫的操作系統。
Linux得名於計算機業余愛好者Linus Torvalds。
以上內容參考:網路-Linux操作系統
❷ 運用RedHat的Kickstart升級Linux系統方法
本文簡要地介紹了使用 Red Hat Linux的 Kickstart 及網路安裝功能方便快捷地升級己有 Linux 系統,文中的例子是從 Red Hat 7.2 遠程升級到 Red Hat 9.0。
自從 5.2 版開始, Red Hat Linux 便 增加了一個稱為 Kickstart 的功能,其主要是為了減少安裝過程中需要jiao互式 (interactive)的系統參數輸入,提高安裝效率。將其運用於自動安裝 Linux,特別是需要在短時間迅速安裝至成百台 Linux 工作站這種特殊場合尤為適用,Stanford University 的 Menlo Park 已經有精彩的文章介紹。
1.升級前系統檢查
在開始升級系統之前,有一些容易忽視的問題容易中斷 Kickstart 過程,這些問題一般是系統配置達不到安裝最低要求,所以最好能在自動升級之前有實驗條件先進行充分的測試再實施。 Red Hat Linux 系統發展至今,已經不是低得386都可以跑得很流暢的了(Red Hat 9 已經不能在 586 以下的機器上運行),所以在升級之前有必要對系統進行充分的檢查,主要包括以下方面:
存儲空間是否足夠。Red Hat 9 最少需要32MB的內存和472MB的硬碟,內存一般是不會成問題的,但是我未能在一個500MB硬碟上裝好系統,當然現在大家的硬碟一般還是比較大,都可以進行完全安裝了。Linux 的系統文件主要集中於 /usr 下,/ 下面也有一部分,一般不安裝 X 系統和大型軟體的情況下,/usr 使用1GB空間、/ 使用500MB空間都可以工作得很好了。我的系統從 7.2 升級到 9.0 系統,/usr 和 / 的使用情況大約較升級前增加了30% 的樣子,所以如果大家的 /usr 和/使用率不是太高的話,磁碟空間 的限制一般是不會有什麼問題的。
jiao換分區空間是否足夠。Red Hat 9 與 7.2 的一個不易發現的區別便在此,7.2 系統是可以使用少於兩倍物理內存容量的jiao換分區,兩倍或者多於兩倍物理內存的jiao換分區只是建議大小;而 Red Hat 9 則必須使用兩倍或者多於兩倍物理內存大小的jiao換分區,所以如果你的Linux系統只有少於兩倍的jiao換分區,那就只有再劃分一個jiao換分區或者增加一個jiao換文件,或者撥下你的內存讓系統jiao換分區大於兩倍物理內存,我建議使用加一個jiao換分區的辦法,增加jiao換文件還無法在 Kickstart 中實現,至於撥下內存,遠程升級就根本沒有辦法撥下內存了。
其他雜項,系統在自動升級過程中會檢測一系列的硬體,如果選擇圖形界面安裝,但是沒有滑鼠,系統則會提示使用文本方式安裝;或者只有 32MB內存則系統也不能進行圖形界面安裝,這些都可以在自動安裝配置文件里進行修改以避免其發生,但是記下系統的所有硬體配置製成一個清單會對製作自動配置文件有較大的幫助。
2.如何啟動安裝程序
首先從 Red Hat Linux 的.啟動安裝程序開始。從 Red Hat Linux 的官方安裝裝手冊上我們可以看到主要的幾種啟動方式:CDROM、軟碟機及從 dos 環境運行光碟上的 dosutilsautoboot.bat 文件三種方式,對於我們來說這還是不夠的,我們的 Linux 工作站是沒有軟碟機和光碟機的,當然更加不會有 dos。通過分析各發行版第一張光碟的 /images目錄下的 boot*.img 文件我們發現,這些啟動鏡像文件其實只有兩個主要的文件:vmlinuz 內核和 initrd.img,initrd.img是一個壓縮的最小文件系統。將這兩個文件提取到己有的 Linux 系統 /boot 目錄下,在系統的 bootloader(一般是 LILO 或者 GRUB)配置文件中加入相應的配置行即可啟動安裝程序。以 Red Hat 7.2 和 GRUB 為例(使用 Red Hat 8.0 的網路啟動鏡像文件):
[root@client mnt]# mount -o loop -o ro
/mnt/nfs/psyche/cd1/images/bootnet.img bootnet
[root@client mnt]# cd bootnet/
[root@client bootnet]# ls
boot.msg initrd.img options.msgrescue.msgsplash.lsssysLinux.png
general.msgldLinux.sysparam.msgsnake.msgsysLinux.cfgvmlinuz
[root@client bootnet]# cp vmlinuz /boot/vmlinuz8
[root@client bootnet]# cp initrd.img /boot/initrd8
[root@client bootnet]# vi /boot/grub/menu.lst
添加如下三行:
title Upgrade to Psyche via NFS
kernel /boot/vmlinuz8 ro
initrd /boot/initrd8
注意:以上是沒有 /boot 分區的配置,有 /boot 分區則不需要前面的 /boot,見 GRUB 配置文件中 NOTICE 部分。
重新啟動後即可選擇網路升級,和用 bootnet 軟盤引導系統的效果是一樣的。在這里我們將使用 Red Hat 9 的另外一個啟動文件,這也是最近才在 Red Hat 發行版中出現的 boot.iso。將 Red Hat 9 發行版第一張光碟的 ISO 鏡像文件裝載後,我們發現其下的 images 目錄中較 7 系列發行版多了一個 boot.iso 文件(8.0 第一張光碟根目錄下也有類似目錄),將其裝載後發現其中包含一個比較大的內核和 initrd 文件,該initrd 包含了安裝系統時常見硬體的驅動,我使用該文件啟動時能自動識別出 PM133 主板的顯卡及比較少見的adaptec ANA-6911TX 網卡(starfire.o),所以強烈推薦使用 boot.iso 自動升級,可以省卻驅動的麻煩。值得一提的是 Red Hat 9 現在已經不在 boot.img 中自帶網卡驅動了,而 Red Hat 8 在 bootnet.img 中帶了一些常見網卡的驅動的(intel 55X系列、tulip、8139等),解壓一下 bootnet.img 中的 initrd.img 文件就可以在lib目錄中看到這些驅動模塊文件了。
3.從哪裡安裝
升級系統當然需要新系統的發行版源文件,發行版形式可以多樣化,即可以是光碟,也可以是光碟鏡像文件(ISO格式),同時也可以是光碟文件的拷貝集。在 Red Hat 9 中,可供選擇的安裝模式有本地 CDROM、本地硬碟、NFS 鏡像、FTP、HTTP。從光碟安裝具有最好的兼容性和易操作性,適合個人安裝,大批量和遠程升級則不適用;本地硬碟是一種比較好的方式,速度快,而且也不需要頻繁更換光碟,但是也不適合大批量安裝,每台工作站均保存一份發行版鏡像拷貝實在是很浪費存儲空間,而且要命的是我的那台機器已經沒有空間可以放下這么巨大的文件了;NFS 則是一種比較成熟的方式,通過 NFS 方式安裝系統只需要將 ISO 格式的光碟鏡像文件共享即可,不像 FTP 和 HTTP 方式需要考慮目錄樹結構,而且 NFS 方式可以選擇圖形界面安裝(FTP 和 HTTP 方式僅能使用文本界面),速度相對 FTP 和 HTTP 方式更快,所以網路安裝建議使用 NFS 方式。建立 NFS安裝鏡像伺服器的辦法很簡單,僅需通過 NFS 將發行版光碟鏡像文件共享即可。
[root@server root]$ cat /etc/exports /data/shrike 192.168.0.42/31(ro)
[root@server shrike]# ls
ks.cfgshrike-i386-disc1.isoshrike-i386-disc2.isoshrike-i386-disc3.iso
4.製作 Kickstart
接下來自然就是製作 Kickstart 文件了,Kickstart 技術從最早推出至今已經更新了許多次,配置的語法也是不盡相同,後來的版本也沒有做到完全兼容舊有版本語法,不能說這也是一個遺憾,在此我強烈建議使用 Red Hat 9 官方文檔來進行 Kickstart 的配置,這樣才能做到萬無一失。配置文件主要內容如下:
1)ks.cfg 文件位置。很明顯安裝程序需要讀取到 ks 配置文件才能進行自動安裝,ks 配置文件可以有以下幾種方式讀入:啟動軟盤、啟動光碟、硬碟、網路。
軟盤讀取 ks 配置文件相對較簡單,將 ks.cfg 置於軟盤根目錄下即可,啟動後輸入 Linux ks=floppy 即可開始 ks 安裝。
光碟讀取 ks 配置文件需要在製作啟動光碟時加入 ks.cfg 配置文件至根目錄下,啟動後輸入 Linux ks=cdrom:/ks.cfg 即可開始 ks 安裝。
硬碟讀取 ks 配置文件一般是從光碟機引導後,再讀硬碟中的 ks 配置文件(此時可能沒有軟碟機和網路支持),啟動後輸入 Linux ks=hd:fd0:/ks.cfg,限制條件是該硬碟分區必須是 VFAT 或者 EXT2。
網路讀取 ks 配置文件則用得非常多了,通常用到的是 NFS 方式和 HTTP 方式,格式分別是 ks=nfs:server:/path 和 ks=http://< server> /< path> 。需要注意的是網路方式讀取 ks.cfg 文件時,區域網能自動分配 IP,因為在內核未取得 ks.cfg 配置文件之前,系統是不知道如何配置 IP 地址的,這時就要先通過 DHCP 獲得一個 IP 地址,通過網路讀取 ks.cfg 配置文件。在具備網路條件的環境下,我強烈推薦使用網路方式提供 ks.cfg 配置文件,使用 DHCP 配合 ks 的參數置空功能可以為大量的工作站配置不同的 Kickstart 配置文件,自動安裝功能各異的系統。我是使用 NFS 方式讀取 ks.cfg 文件。
[root@server shrike]# ls
ks.cfgshrike-i386-disc1.isoshrike-i386-disc2.isoshrike-i386-disc3.iso
在待升級系統 GRUB 配置文件中加入 ks 配置語句:
kernel /boot/vmlinuz9 ro ks=nfs:192.168.0.19:/data/shrike/ks.cfg
2)經過測試,升級系統所需要的 ks 配置參數相對較少,具體配置參數就不再累述了, UNIX 的風格就是 KISS。以我的配置為例:
reboot
upgrade
lang en_US
keyboard us
mouse none
text
skipx
network --device=eth0 --bootproto=static --ip=192.168.0.42
--netmask=255.255.255.0--gateway=192.168.0.253
--nameserver=192.168.0.4 --hostname=huter.xtu.e.cn
nfs --server=192.168.0.19 --dir=/data/shrike
zerombr yes
bootloader --location=mbr
%post
chkconfig --level 345 sshd on
檢查一切配置無誤就可以開始遠程升級系統了!
❸ 同時快速部署100台linux伺服器,有什麼現成的解決方案嗎
說說我以前最常用的三種批量部署方案(有疑問接受私信):
第一:伺服器一般都會用兩塊磁碟做RAID1作為系統盤,手動安裝完第一台操作系統,RAID1的功能是兩塊盤中具有相等的數據,所以兩塊盤都存在了剛剛安裝好的linux系統,拔出一塊系統盤(伺服器認為你這塊盤壞了),再插入一塊新盤到剛剛拔出磁碟的位置,此時伺服器會再次向新磁碟自動同步數據,保持1:1備份。接下來剛剛拔出的那塊系統盤派上用場,把剛剛扒出來的那塊有系統的盤插到另外一台無系統的伺服器上,自動完成與另外一塊盤的同步,以此類推,1生2,2生4,4生8,8生16,16生32
第二種:刻錄無人值守光碟
第三種:PXE批量部署
PXE實例:
我3年前做過一套PXE部署系統(以下是當時用於機房部署系統的截圖界面)。可以部署windows+linux的各個版本,部署伺服器採用的windows系統(因為windows能通過easybcd製作syslinux引導),syslinux就可以成功引導起win和linux,引導成功後,調用kickstart製作的linux無人應答文件,wds &AKT製作的windows無人應答文件,完成系統安裝。你的需求只需要安裝統一的linux版本,所以相對來說比較容易,花兩天學習下kickstart基本就能在虛擬機上實踐成功,但是如果要應用到物理伺服器,還需要考慮驅動,raid,格式化等問題
解決辦法當然是PXE+Kickstart了,學會一次就能一直用很方便。
你需要准備:
1、交換機,用於連接Server和客戶機(必須臨時關閉DHCP)
2、部署用server主機(由此台主機接管DHCP服務)
3、其他一堆客戶機(需要調節至PXE引導模式)
然後按照教程
https://andyx.net/pxe_kickstart_automatic_deployment_of_linux_system/對Server
主機進行部署PXE+Kickstart,完成之後客戶端開機即可自動安裝。
沒有部署同時過100多台,但是曾經部署26台ECS集群,支撐1500左右tps。部署的方案是:阿里雲ECS+鏡像+彈性伸縮+負載均衡。開發測試環境用的是Vagrant直接控制多台虛擬機,曾經也使用過VMware ESXi和VMware VCenter管理虛擬機集群
騰訊有個藍鯨平台,只需要錄入你的伺服器ip就可以批量操作。
還有一個ansible的來源運維工具。
還可以通過pexpect腳本,自己用python結合ssh搭建一個運維平台。
如果是批量買機器的話,各個雲廠商都提供有介面,寫個簡單都shell就可以了。
阿里雲前天剛發布的,叫什麼servicefee,忘了,可視化部署,一鍵拉起,可設置拉起順序,定時彈性容災,服務之間的調用可視化,其他數據也是可監控
會 python 和 shell 可以搞搞 fabric ,我在用,還不錯!
看你部署應用還是系統,平台是什麼。
系統簡單,做個模板機,復制就行了。
應用也不麻煩,跟上邊的一樣做個鏡像就行,或者用批量管理工具ansible salt 這類的工具。雲伺服器的話,鏡像市場也有公用的。
ansible,puppet和chef是常用的自動化運維工具。你說的需求用這三個都能做
1.部署操作系統,製作系統模板,批量創建或調用api介面即可
2.部署應用軟體,可使用自動化工具如ansible或者編寫腳本來批量部署
linux有類似ghost那樣的克隆工具,推薦clonezilla。ghost for Linux也可以。
另外,Linux下的dd命令可以完成一個源驅動器對目標驅動器的鏡像操作。