centos7使用cobbler(2.8)批量部署操作系統之一

来源:http://www.cnblogs.com/mfyang/archive/2017/05/04/6808953.html
-Advertisement-
Play Games

一.cobbler簡介 運維自動化包括標準化、工具化、Web化、服務化、智能化等幾個不同的層級,在一家規模稍大、擁有伺服器上千台甚至是幾萬台的生產環境中,想要真正實現運維自動化,工具化系統安裝流程、統一系統安裝規範,是其中最不能忽略的重要環節。普通的自動化部署可以採用pxe+dhcp+tftp配合k ...


一.cobbler簡介

運維自動化包括標準化、工具化、Web化、服務化、智能化等幾個不同的層級,在一家規模稍大、擁有伺服器上千台甚至是幾萬台的生產環境中,想要真正實現運維自動化,工具化系統安裝流程、統一系統安裝規範,是其中最不能忽略的重要環節。普通的自動化部署可以採用pxe+dhcp+tftp配合kickstart實現,但是面對多版本、多部署需求的情況下,這種普通的部署方式可能達不到我們的要求;這時候就需要藉助cobbler開源自動化部署工具來實現。

Cobbler是一款快速的網路系統部署工具,其最大的特點是集合了所有系統部署所需服務,如DHCP、DNS、TFTP,這樣你在部署一臺操作系統的時候不需要在各個服務之前協調切換,Cobbler都可以替你來管理,Cobbler內部集成了一個鏡像版本倉庫,你可以自定義相關配置文件,實現不同系統不同安裝需求的選擇;當然,Cobbler還提供了包括yum源管理、Web界面管理、API介面、電源管理等功能,方便你自定義開發管理。

cobbler設計方式

 

    • 發行版(Distribution):
       表示一個操作系統。它承載了內核和 initrd 的信息,以及內核參數等其他數據
  • 配置文件(Profile):
               包含一個發行版、一個 kickstart 文件以及可能的存儲庫,還包含更多特定的內核參數等其他數據
  • 系統(System):
               表示要配給的機器。它包含一個配置文件或一個鏡像,還包含 IP 和 MAC 地址、電源管理(地址、憑據、類型)以及更為專業的數據等信息
  • 存儲庫(Repository):
               保存一個 yum 或 rsync 存儲庫的鏡像信息
  • 鏡像(Image):
               可替換一個包含不屬於此類別的文件的發行版對象(例如,無法分為內核和 initrd 的對象)

二.cobbler安裝

1.cobbler在epel源中,如果系統中沒有EPELi源,要先安裝

[root@sharestore py-9]# yum search epel-release
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* epel: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
============================ N/S matched: epel-release ============================
epel-release.noarch : Extra Packages for Enterprise Linux repository configuration

  Name and summary matches only, use "search all" for everything.
[root@sharestore py-9]# yum -y install epel-release

2.安裝cobbler

[root@sharestore py-9]# yum -y install cobbler

查看安裝了哪些文件到什麼位置

[root@sharestore py-9]# rpm -ql cobbler

下麵是一些重要的配置文件及說明:

/etc/cobbler                  # 配置文件目錄
/etc/cobbler/settings         # cobbler主配置文件
/etc/cobbler/dhcp.template    # DHCP服務的配置模板
/etc/cobbler/tftpd.template   # tftp服務的配置模板
/etc/cobbler/rsync.template   # rsync服務的配置模板
/etc/cobbler/iso              # iso模板配置文件目錄
/etc/cobbler/pxe              # pxe模板文件目錄
/etc/cobbler/power            # 電源的配置文件目錄
/etc/cobbler/users.conf       # Web服務授權配置文件
/etc/cobbler/users.digest     # web訪問的用戶名密碼配置文件
/etc/cobbler/dnsmasq.template # DNS服務的配置模板
/etc/cobbler/modules.conf     # Cobbler模塊配置文件
/var/lib/cobbler              # Cobbler數據目錄
/var/lib/cobbler/config       # 配置文件
/var/lib/cobbler/kickstarts   # 預設存放kickstart文件
/var/lib/cobbler/loaders      # 存放的各種引導程式
/var/www/cobbler              # 系統安裝鏡像目錄
/var/www/cobbler/ks_mirror    # 導入的系統鏡像列表
/var/www/cobbler/images       # 導入的系統鏡像啟動文件
/var/www/cobbler/repo_mirror  # yum源存儲目錄
/var/log/cobbler              # 日誌目錄
/var/log/cobbler/install.log  # 客戶端系統安裝日誌
/var/log/cobbler/cobbler.log  # cobbler日誌


 

三.cobbler初始配置

1.啟動cobbler服務

   cobbler依賴httpd服務,所以要先啟動httpd,否則會報錯。

   [root@sharestore]# systemctl start cobbler

2.運行cobbler check根據提示修改配置

[root@sharestore]# cobbler check

[root@sharestore ~]# cobbler check
The following are potential configuration items that you may want to fix:

1 : The 'server' field in /etc/cobbler/settings must be set to something other than localhost, or kickstarting features will not work.  This should be a resolvable hostname or IP for the boot server as reachable by all machines that will use it.

      #這個提示是需要修改/etc/cobbler/settings 文件中server: 後面的IP地址,這個地址預設是127.0.0.1需要修改成可以通信的本機真實的網卡地址,以便提供DHCP等服務。

2 : For PXE to be functional, the 'next_server' field in /etc/cobbler/settings must be set to something other than 127.0.0.1, and should match the IP of the boot server on the PXE network.

      #這個提示是說要想讓PXE工作起來,需要設置/etc/cobbler/settings中next_server的ip地址,同樣要求能夠通信的IP地址。
3 : SELinux is enabled. Please review the following wiki page for details on ensuring cobbler works correctly in your SELinux environment:
    https://github.com/cobbler/cobbler/wiki/Selinux

       #這個提示要求關閉selinux
4 : change 'disable' to 'no' in /etc/xinetd.d/tftp

       #提示要求啟用tftp
5 : some network boot-loaders are missing from /var/lib/cobbler/loaders, you may run 'cobbler get-loaders' to download them, or, if you only want to handle x86/x86_64 netbooting, you may ensure that you have installed a *recent* version of the syslinux package installed and can ignore this message entirely.  Files in this directory, should you want to support all architectures, should include pxelinux.0, menu.c32, elilo.efi, and yaboot. The 'cobbler get-loaders' command is the easiest way to resolve these requirements.

       #提示要求使用cobbler get-loaders從網上下載引導程式
6 : enable and start rsyncd.service with systemctl

       #提示要求啟動 rsyncd服務
7 : debmirror package is not installed, it will be required to manage debian deployments and repositories
8 : ksvalidator was not found, install pykickstart

       #提示要求安裝pykickstart,使用yum –y pykickstart即可
9 : The default password used by the sample templates for newly installed machines (default_password_crypted in /etc/cobbler/settings) is still set to 'cobbler' and should be changed, try:default_password_crypted "openssl passwd -1 -salt 'random-phrase-here' 'your-password-here'" to generate new one

       #提示要求修改預設密碼"openssl passwd -1 -salt 'random-phrase-here' 'your-password-here'"並替換settings中default_password_crypted引號中的內容

10 : fencing tools were not found, and are required to use the (optional) power management features. install cman or fence-agents to use them

Restart cobblerd and then run 'cobbler sync' to apply changes.

           #提示如果使用電源管理模塊,安裝cman 或者 fence-agents

以上步驟全部執行完成後,重啟cobbler服務,並使用cobbler sync保存修改,也可以每修改一個提示執行一下。直到沒有提示,或可以忽略某些提示為止。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • cp命令使用: 功能說明:複製文件和目錄 語法: cp [OPTION]... [-T] SOURCE DEST cp [OPTION]... SOURCE... DIRECTORY cp [OPTION]... -t DIRECTORY SOURCE... 詳解:1)SOURCE為單個文件 目標不 ...
  • 如果訪問或執行一個文件顯示Permission deny,一般是許可權問題。 使用"ls -l"可以查看該目錄下文件的詳細信息。 1、讀懂許可權 第一列就是許可權信息,形如: drwxr-xr-x 或者 -rwx 等等。 其中,第一個字元代表這個文件為目錄或文件,d為目錄,-為文件,還有其他的如b、c、s ...
  • 點進來的基本都是遇到liunx變礦機的小伙伴吧(cpu運載300%) 卡的連終端都很難打開 開下來之後提示 大意是, 到xxx網站給錢了事, 不過基本這個網站基本也上不去, 要麼是暴力破解, 要麼是通過 redis 6379埠 詳情瞭解redis安全漏洞 遇到這種問題毫無疑問: 先要把突然出現的亂 ...
  • 找到版本庫目錄(在安裝svnserver時指定的目錄),如下圖指定了一個版本庫的hooks 在其中創建post-cmmit.bat文件(可先創建post-cmmit.txt再修改尾碼名為bat)。 其中內容寫入: @echo off "C:\Program Files\VisualSVN Serve ...
  • 前言: 糾正網上一些錯誤的博文,真的害人不淺,按照他們的說法,dubbo-admin在jdk1.8的版本下無法啟動註冊中心,需要去github下載阿裡提供的源碼,然後install進本地倉庫並打包成war。然後才能搬去centos系統下結合tomcat運行起來。 照著上面那種方法做了整整兩個晚上,一 ...
  • 目標: Tomcat+Nginx+Memcached Ubuntu 16.04 64位測試通過 動靜分類、負載均衡、集群、Javolution序列化、高性能、高可用 配置環境(目前均為最新穩定版): jdk-8u131-linux-x64 apache-tomcat-8.5.14 nginx-1.1 ...
  • 根據自己的理解繪製了存儲管理的知識體系圖,其中的一些演算法沒有詳細介紹,之後有時間會補上 ...
  • 這是前兩天做的Linux 面試題 第一部分:選擇題(每題2分 共50分) 1.在創建Linux分區時,一定要創建( D )兩個分區 A. FAT/NTFS B. FAT/SWAP C. NTFS/SWAP D.SWAP/根分區 2. 當登錄Linux時,一個具有唯一進程ID號的shell將被調用,這 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...