升級最新版本的 PostgreSQL、Redis 和 Salt 之後,需要將 RaaS 節點從先前版本升級至最新版本。
請注意,資料庫升級需要對資料重新建立索引。如果資料比較複雜,則資料庫升級可能需要幾個小時的時間。如需有關何時計劃升級和其他提示的討論,請參閱升級時的最佳做法。
重要:
升級 RaaS 節點之前,必須備份系統資料以避免資料遺失。有關升級前必須備份哪些檔案和目錄的說明,請參閱〈備份資料〉。
升級 RaaS 節點:
- 從 Customer Connect 下載升級檔案。
- 將對預設檔案系統、pillar 資料和工作進行的任何變更另存為新的檔案或工作。
- 注意對預設目標進行的任何 pillar 指派。升級後需要重新指派這些內容。
- 使用下列命令停止 RaaS 服務:
sudo systemctl stop raas
- 移除
/var/log/raas
目錄中的記錄檔。如果需要進行疑難排解,則清除記錄檔會提供一個乾淨的記錄檔。 - 使用下列命令移除目前安裝的 API (RaaS) 版本:
sudo yum remove raas
- 安裝最新的 RPM 以升級 RaaS 節點。使用以下範例命令,取代 RPM 的確切檔案名稱:
sudo yum install raas-rpm-file-name.rpm
- 重要事項:還原下列檔案的備份:
/etc/raas/raas
/etc/raas/raas.secconf
/etc/raas/pki/
- 使用下列命令更新
raas
使用者的權限:sudo chown -R raas:raas /etc/pki/raas/certs
- 可選:如果您有 SaltStack SecOps 授權,並且想要新增合規性程式庫,請在
/etc/raas/raas
檔案中新增以下區段:sec: ingest_override: true locke_dir: locke post_ingest_cleanup: true username: 'secops' content_url: 'https://enterprise.saltstack.com/secops_downloads' download_enabled: true download_frequency: 86400 stats_snapshot_interval: 3600 compile_stats_interval: 10 ingest_on_boot: True content_lock_timeout: 60 content_lock_block_timeout: 120
備註:此步驟是可選的,僅適用於擁有有效 SaltStack SecOps 授權的組織。此附加元件模組適用於 SaltStack Config 6.0 版及更新版本。
/etc/raas/raas
組態檔中的先前組態選項特定於這些附加元件模組。 - 可選:如果您有 SaltStack SecOps 授權,並且想要新增漏洞庫,請在
/etc/raas/raas
檔案中新增區段:vman: vman_dir: vman download_enabled: true download_frequency: 86400 username: vman content_url: 'https://enterprise.saltstack.com/vman_downloads' ingest_on_boot: true compile_stats_interval: 60 stats_snapshot_interval: 3600 old_policy_file_lifespan: 2 delete_old_policy_files_interval: 86400 tenable_asset_import_enabled: True tenable_asset_import_grains: ['fqdn', 'ipv4', 'ipv6', 'hostname', 'mac_address', 'netbios_name', 'bios_uuid', 'manufacturer_tpm_id', 'ssh_fingerprint', 'mcafee_epo_guid', 'mcafee_epo_agent_guid', 'symantec_ep_hardware_key', 'qualys_asset_id', 'qualys_host_id', 'servicenow_sys_id', 'gcp_project_id', 'gcp_zone', 'gcp_instance_id', 'azure_vm_id', 'azure_resource_id', 'aws_availability_zone', 'aws_ec2_instance_ami_id', 'aws_ec2_instance_group_name', 'aws_ec2_instance_state_name', 'aws_ec2_instance_type', 'aws_ec2_name', 'aws_ec2_product_code', 'aws_owner_id', 'aws_region', 'aws_subnet_id', 'aws_vpc_id', 'installed_software', 'bigfix_asset_id' ]
備註:此步驟是可選的,僅適用於擁有有效 SaltStack SecOps 授權的組織。此附加元件模組適用於 SaltStack Config 6.0 版及更新版本。
/etc/raas/raas
組態檔中的先前組態選項特定於這些附加元件模組。 - RaaS 目前存在一個與失效工作相關的已知問題。升級時,某些使用者可能會注意到一系列停滯在擱置中狀態的失效工作。除非先將這些工作清除,否則升級 RaaS 節點可能會導致這些工作執行。
若要防止發生此情況,請先檢查資料庫中是否儲存了任何舊命令。在 PostgreSQL 節點上,使用下列命令檢查是否有擱置中的工作:
select count(1) from commands where state='new';
結果顯示的是擱置中工作數目。如果工作數目為
0
,請繼續執行升級程序的其餘步驟。如果工作數目大於0
,請連絡支援以取得因應措施。 - 使用下列命令升級 RaaS 服務資料庫:
sudo su - raas raas upgrade
備註:根據資料庫的大小,升級可能需要數分鐘到一小時以上的時間。如果遇到錯誤,請查看
/var/log/raas/raas
記錄檔以瞭解更多資訊。 - 升級後,使用下列命令結束
raas
使用者的工作階段:exit
- 使用下列命令啟動 RaaS 服務:
sudo systemctl enable raas sudo systemctl start raas
確認 SaltStack Config 正常運作且執行的是最新版本。繼續前往下一節。
後續步驟
升級 RaaS 節點後,最後的工作是升級主節點外掛程式。如需詳細資訊,請參閱升級主節點外掛程式。