[英]Using complex exported resource tags in Puppet 7 - is it possible
我需要定義一個 Puppet 類並導出類似於https://serverfault.com/questions/559019/how-to-collect-tagged-exported-resources的資源,但我需要添加 class app_primary($datacenter_$ zone_$tenant_$role) 用於衛星服務器加入主服務器,然后使用相同的類標識符作為標簽,如標簽 => "$datacenter_$zone_$tenant_$role",請問是否可以使用這種復雜的標簽或者我應該堅持 KISS 原則。 謝謝。
從文檔中閱讀我應該瞄准最獨特的導出資源標簽類型或與 hiera 一起工作(暫時超出我的范圍和特權)。 因此決定在進一步深入研究之前先詢問一下
我需要為衛星服務器添加類 app_primary($datacenter_$zone_$tenant_$role)
那沒有意義。 class
關鍵字的出現表明這是類app_primary
的類定義的開始。 然后括號將包含類參數列表——名稱、可選的類型和可選的初始值。 $datacenter_$zone_$tenant_$role
不是有效的參數名稱。 可能您希望此類在此處具有四個不同的參數:
class app_primary($datacenter, $zone, $tenant, $role) {
# ...
}
加入主要的,然后使用相同的類標識符作為標簽 tag => "$datacenter_$zone_$tenant_$role",
類參數不標識類。 上面類的標識符是app_primary
。
但是,您可以形成一個連接參數值的字符串,並用它標記資源。 字符串的形式類似於: "${datacenter}_${zone}_${tenant}_${role}"
。 該標記會將此類使用一組參數值聲明的資源與此類(針對不同的節點)使用一組不同的參數值聲明的資源區分開來。
你能告訴我是否可以使用這樣復雜的標簽嗎
當然有可能。 而且我不確定我會將結果描述為“復雜”。
或者我應該堅持 KISS 原則。
簡單是相對的。 如果您有一個更簡單的選擇,那么 KISS 可能是需要考慮的東西,但在那之前,它是無關緊要的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.