4.3. 已離線的 Satellite

在高度安全性的環境中(例如當主機需要在一個封閉的網路中運作時)並且未連上網際網路的情況下,Red Hat Satellite 伺服器能為系統佈建最新的安全性更新、勘誤和套件。這是透過使用兩項重要元件來達成的:katello-disconnected 工具程式和一部同步化主機。
以下圖示描述了離線的 Satellite 如何在不使用網際網路的情況下讓其內容維持最新狀態。您需要使用一部連上網際網路的中繼系統來作為同步化主機。這部同步化主機位在於一個與 Satellite 伺服器不同的網路中。
這部同步化主機會透過 pulp 從 Red Hat Content Delivery Network(CDN)匯入內容。這些內容接著將會被匯入至一個媒介上(例如 DVD、CD 或是外部硬碟)並傳輸至離線的 Satellite 伺服器上。本章節中的下列部分將會指示您如何完成所有程序。
Disconnected Satellite

圖形 4.1. 已離線的 Satellite

22921%2C+User+Guide-6.008-10-2014+13%3A34%3A52Red+Hat+Satellite+6Docs+User+Guide回報錯誤

4.3.1. 配置同步化主機

先決條件

若要從 Red Hat CDN(Content Distribution Network)匯入內容,同步化主機(Synchronization Host)需要:

過程 4.10. 若要配置一部主機以使其與 Red Hat CDN 同步和匯出內容:

  1. 在同步化主機上使用「Red Hat 訂閱管理員」(Subscription Manager)向 RHN 註冊。
  2. 列出所有可用的訂閱,尋找正確的 Red Hat Satellite 產品,並分配到您的系統上:
    # subscription-manager list --available --all
    這項指令會顯示類似以下的輸出:
    +-------------------------------------------+
        Available Subscriptions
    +-------------------------------------------+
    
    
    ProductName:        Red Hat Satellite
    ProductId:          SKU123456
    PoolId:             e1730d1f4eaa448397bfd30c8c7f3d334bd8b
    Quantity:           10
    Multi-Entitlement:  No
    Expires:            08/20/2013
    MachineType:        physical
    

    注意

    SKU 與 Pool ID 會根據 Red Hat Satellite 的產品類型而定,而產品類型又對應至系統版本與系統的產品類型。
  3. 使用以下指令訂閱集區:
    # subscription-manager subscribe --pool=Red_Hat_Satellite_Pool_Id
    # subscription-manager subscribe --pool=Red_Hat_Enterprise_Linux_Pool_Id
    # subscription-manager subscribe --pool=Red_Hat_Enterprise_Linux_Software_Collections_Pool_Id
    
  4. 停用所有現有軟體庫:
    # subscription-manager repos --disable "*"
    
  5. 啟用 Red Hat Satellite、Red Hat Enterprise Linux、以及 Red Hat Software Collections 軟體庫。請確定 Red Hat Enterprise Linux 符合您所使用的特定版本。
    # subscription-manager repos --enable rhel-6-server-rpms \
    --enable rhel-server-rhscl-6-rpms \
    --enable rhel-6-server-satellite-6.0-rpms
    

    注意

    以上指令乃基於 Red Hat Enterprise Linux 6。若您使用不同版本的 Red Hat Enterprise Linux,請根據您的特定版本來更改軟體庫。
  6. 安裝 katello-utils 與相關的 RPM:
    # yum install python-qpid-qmf python-qpid qpid-cpp-server-store katello-utils
    
    katello-utils 包含了設定軟體庫以進行匯入所需的 katello-disconnected 工具程式,而 qpid 的相關套件則為進行 pulp 配置所需的套件。
  7. /etc/pulp/server.conf 檔案中的 oauth_secret 項目產生一組私密的 32 字元文數字字串:
    # tr -dc "[:alnum:]" < /dev/urandom | head -c 32 
    randomly_generated_value
  8. 請在 /etc/pulp/server.conf 中,反註解 [oauth] 項目並加入先前步驟中隨機產生的值(上述 randomly_generated_value)來作為 oauth_secret 的值:
    [oauth]
    enabled: true
    oauth_key: katello
    oauth_secret: randomly_generated_value
  9. 停用 /etc/qpid/qpidd.conf 中的認證:
    # Configuration file for qpidd. Entries are of the form: 
    #   name=value 
    #
    # (Note: no spaces on either side of '=').
    # Run "qpidd --help" or see "man qpidd" for more details.
    
    auth=no
    
    所有連入的連線認證皆使用 Satellite 的預設領域。
  10. 配置由 katello-disconnected 至 Pulp 的連線,並以先前產生的值來作為您的 --oauth-secret 選項:
    # katello-disconnected setup --oauth-key=katello --oauth-secret=randomly_generated_value
    這會在 ~/.katello-disconnected 中儲存一個配置值。
  11. 配置同步伺服器上的 Pulp:
    sudo service qpidd start
    sudo chkconfig qpidd on
    sudo service mongod start
    sleep 10
    sudo chkconfig mongod on
    sudo -u apache pulp-manage-db
    sudo service httpd restart
    sudo chkconfig pulp_workers on
    sudo service pulp_workers start
    sudo chkconfig pulp_celerybeat on
    sudo service pulp_celerybeat start
    sudo chkconfig pulp_resource_manager on
    sudo service pulp_resource_manager start
    
  12. 匯入清單:
    # katello-disconnected import -m ./manifest.zip
    
    匯入清單將會根據您所選擇的訂閱,設定將進行同步的可用軟體庫清單。
同步化主機現在已準備好從 Red Hat CDN 同步內容。
〈22921%2C+User+Guide-6.008-10-2014+13%3A34%3A52Red+Hat+Satellite+6Docs+User+Guide回報錯誤