Pod安全性
Astra Control Center透過pod安全性原則(ASP)和pod安全性許可(Ps)來支援權限限制。這些架構可讓您限制哪些使用者或群組能夠執行容器、以及這些容器可以擁有哪些權限。
部分Kubernetes發佈版本的預設Pod安全性組態可能過於嚴加限制、因此在安裝Astra Control Center時會發生問題。
您可以使用此處提供的資訊和範例來瞭解Astra Control Center所做的Pod安全性變更、並使用pod安全方法來提供所需的保護、而不會干擾Astra Control Center功能。
由Astra Control Center執行的SSA
Astra Control Center 可將下列標籤新增至安裝 Astra 的命名空間( NetApp-acc 或自訂命名空間)、以及為備份建立的命名空間、藉此強制執行 Pod 安全許可。
pod-security.kubernetes.io/enforce: privileged
由Astra Control Center安裝的PSPS
當您在Kubernetes 1.23或1.24上安裝Astra Control Center時、會在安裝期間建立數個Pod安全性原則。其中有些是永久性的、有些是在特定作業期間建立、一旦作業完成、就會移除。當主機叢集執行Kubernetes 1.25或更新版本時、Astra Control Center不會嘗試安裝ASP、因為這些版本不支援這些應用程式。
在安裝期間建立PSPS
在Astra Control Center安裝期間、Astra Control Center營運者會安裝自訂的Pod安全性原則A Role
物件和 RoleBinding
用於支援Astra Control Center命名空間中Astra Control Center服務部署的物件。
新原則和物件具有下列屬性:
kubectl get psp NAME PRIV CAPS SELINUX RUNASUSER FSGROUP SUPGROUP READONLYROOTFS VOLUMES netapp-astra-deployment-psp false RunAsAny RunAsAny RunAsAny RunAsAny false * kubectl get role -n <namespace_name> NAME CREATED AT netapp-astra-deployment-role 2022-06-27T19:34:58Z kubectl get rolebinding -n <namespace_name> NAME ROLE AGE netapp-astra-deployment-rb Role/netapp-astra-deployment-role 32m
在備份作業期間建立PSPS
在備份作業期間、Astra Control Center會建立動態Pod安全性原則 ClusterRole
物件和 RoleBinding
物件:這些支援在個別命名空間中執行的備份程序。
新原則和物件具有下列屬性:
kubectl get psp NAME PRIV CAPS SELINUX RUNASUSER FSGROUP SUPGROUP READONLYROOTFS VOLUMES netapp-astra-backup false DAC_READ_SEARCH RunAsAny RunAsAny RunAsAny RunAsAny false * kubectl get role -n <namespace_name> NAME CREATED AT netapp-astra-backup 2022-07-21T00:00:00Z kubectl get rolebinding -n <namespace_name> NAME ROLE AGE netapp-astra-backup Role/netapp-astra-backup 62s
叢集管理期間建立的PSPS
當您管理叢集時、Astra Control Center會在託管叢集中安裝NetApp監控操作員。這位營運者會建立一個Pod安全性原則、a ClusterRole
物件和 RoleBinding
在Astra Control Center命名空間中部署遙測服務的物件。
新原則和物件具有下列屬性:
kubectl get psp NAME PRIV CAPS SELINUX RUNASUSER FSGROUP SUPGROUP READONLYROOTFS VOLUMES netapp-monitoring-psp-nkmo true AUDIT_WRITE,NET_ADMIN,NET_RAW RunAsAny RunAsAny RunAsAny RunAsAny false * kubectl get role -n <namespace_name> NAME CREATED AT netapp-monitoring-role-privileged 2022-07-21T00:00:00Z kubectl get rolebinding -n <namespace_name> NAME ROLE AGE netapp-monitoring-role-binding-privileged Role/netapp-monitoring-role-privileged 2m5s