Installieren des Defender for Containers-Sensors mithilfe von Helm

In diesem Artikel wird beschrieben, wie Sie den Microsoft Defender for Containers-Sensor mithilfe von Helm auf AKS-, EKS- und GKE-Clustern installieren und konfigurieren.

Defender für Container unterstützt mehrere Bereitstellungsmodelle für die Bereitstellung des Sensors, einschließlich der automatischen Bereitstellung und der Helm-basierten Installation. Die Helm-basierte Bereitstellung bietet eine bessere Kontrolle über die Sensorversionierung und das Upgrade-Timing, verschiebt jedoch einige betriebliche Verantwortlichkeiten auf Sie. Berücksichtigen Sie bei der Verwendung der Helm-basierten Bereitstellung Folgendes:

  • Sensorupgrades: Mithilfe der Helm-basierten Bereitstellung verwalten Sie Sensorupgrades und den Upgradezeitpunkt. Die automatische Bereitstellung folgt microsoftverwalteten Rolloutplänen.

  • Automatische Installationsabläufe: Wenn Sie den Sensor mithilfe von Helm bereitstellen, überspringen Sie automatische Installationsaufforderungen und Empfehlungen im Azure-Portal, um Konflikte mit der vorhandenen Bereitstellung zu vermeiden.

Voraussetzungen

Stellen Sie vor der Installation des Sensors mithilfe von Helm folgendes sicher:

Installieren Sie das Helm-Chart

Defender for Containers Helm-Charts werden auf mcr.microsoft.com/azuredefender/microsoft-defender-for-containers veröffentlicht.

Das Diagramm erfordert Clusterbezeichnerwerte unter global.cloudIdentifiers. Sie können diese Werte inline mit --set bereitstellen, wie in den folgenden Beispielen dargestellt, oder mithilfe einer Wertedatei.

Um die neueste Chartversion zu installieren, verwenden Sie den Helm-Basisinstallationsbefehl. Stellen Sie die erforderlichen global.cloudIdentifiers-Werte durch Verwendung einer Wertedatei oder inline mit --set bereit, wie in den umgebungsspezifischen Beispielen gezeigt:

helm install defender-k8s oci://mcr.microsoft.com/azuredefender/microsoft-defender-for-containers

Sie können die veröffentlichten Versionen auflisten, indem Sie den folgenden Befehl ausführen:

curl https://mcr.microsoft.com/v2/azuredefender/microsoft-defender-for-containers/tags/list

Um eine bestimmte Version zu installieren, geben Sie das Versions-Tag an:

helm install defender-k8s oci://mcr.microsoft.com/azuredefender/microsoft-defender-for-containers:<tag>

Um konfigurierbare Diagrammwerte zu prüfen, z. B. Featurekennzeichnungen oder Pod-Ressourcenbeschränkungen, ziehen Sie das Diagramm, und überprüfen Sie die values.yaml Datei:

helm pull oci://mcr.microsoft.com/azuredefender/microsoft-defender-for-containers

So installieren Sie den Sensor für Ihre Umgebung:

Verwenden Sie für Standard-AKS-Cluster den mdc Namespace.

Verwenden Sie für automatische AKS-Cluster den kube-system Namespace.

Wenn Ihr AKS-Cluster bereits eine bestehende Defender für Container-Bereitstellung hat, deaktivieren Sie die vorhandene Bereitstellung, wie in Configure Defender for Containers for Azure beschrieben, und entfernen Sie alle übriggebliebenen Ressourcen, indem Sie die folgenden Befehle ausführen:

kubectl delete crd/policies.defender.microsoft.com || true
kubectl delete crd/runtimepolicies.defender.microsoft.com || true
kubectl delete crd/securityartifactpolicies.defender.microsoft.com || true
kubectl delete ClusterRole defender-admission-controller-cluster-role || true
kubectl delete ClusterRole defender-admission-controller-resource-cluster-role || true
kubectl delete ClusterRoleBinding defender-admission-controller-cluster-role-binding || true
kubectl delete ClusterRoleBinding defender-admission-controller-cluster-resource-role-binding || true

Installieren Sie den Sensor:

helm install defender-k8s oci://mcr.microsoft.com/azuredefender/microsoft-defender-for-containers \
    --create-namespace --namespace <namespace> \
    --set global.cloudIdentifiers.Azure.subscriptionId="<cluster-subscription-id>" \
    --set global.cloudIdentifiers.Azure.resourceGroupName="<cluster-resource-group>" \
    --set global.cloudIdentifiers.Azure.clusterName="<cluster-name>" \
    --set global.cloudIdentifiers.Azure.region="<cluster-region>"

Ersetzen durch <namespace> :

  • mdc für Standard-AKS-Cluster.
  • kube-system für AKS Automatic Cluster.

Überprüfen der Installation

Stellen Sie sicher, dass die Installation erfolgreich war, indem Sie den Namespace verwenden, den Sie während der Installation verwendet haben.

helm list --namespace mdc

Die Installation ist erfolgreich, wenn das Feld STATUSdeployed anzeigt.

Sicherheitsregeln für gesteuerte Bereitstellung konfigurieren

Hinweis

Kubernetes-Gated-Deployment wird nur auf AKS-automatischen Clustern unterstützt, wenn der Sensor mit Helm im kube-system-Namespace installiert ist. Die Add-On-Bereitstellung wird für dieses Szenario nicht unterstützt.

Von Bedeutung

Wenn Sie Regeln erstellen, wird das ausgewählte Abonnement möglicherweise als not supported for Gated deploymentangezeigt. Dieser Status tritt auf, da Sie die Defender for Containers-Komponenten mithilfe von Helm anstelle der automatischen Installation des Dashboards installiert haben.

Definieren Sie Sicherheitsregeln, um zu steuern, was Sie in Ihren Kubernetes-Clustern bereitstellen können. Diese Regeln helfen Ihnen, Containerimages basierend auf Sicherheitskriterien zu blockieren oder zu überwachen, z. B. Bilder mit zu vielen Sicherheitsrisiken.

  1. Melden Sie sich beim Azure-Portal an.

  2. Navigieren Sie zu Defender for Cloud>Umgebungseinstellungen.

  3. Wählen Sie Sicherheitsregeln aus.

  4. Wählen Sie Gated-Bereitstellung>Bewertung der Sicherheitsanfälligkeiten aus.

  5. Wählen Sie eine Regel aus, um sie zu bearbeiten, oder wählen Sie +Regel hinzufügen , um eine neue zu erstellen.

Verwaltung vorhandener Empfehlungen

Von Bedeutung

Wenn Sie den Sensor mithilfe von Helm installieren, verwenden Sie keine vorhandenen Defender for Cloud Empfehlungen, um das Defender Profil oder die Arc-Erweiterung für denselben Cluster zu installieren. Durch die Umsetzung dieser Empfehlungen kann eine widersprüchliche Bereitstellung entstehen.

Je nach Bereitstellungstyp werden die folgenden Empfehlungen möglicherweise weiterhin in Defender for Cloud angezeigt:

Upgrade einer vorhandenen Helm-basierten Bereitstellung

Mit der Helm-basierten Bereitstellung verwalten Sie Sensor-Aktualisierungen. Defender für Cloud wendet sie nicht automatisch an.

Führen Sie den folgenden Befehl aus, um eine vorhandene Helm-basierte Bereitstellung zu aktualisieren. Verwenden Sie den Namespace, den Sie während der Installation verwendet haben.

helm upgrade defender-k8s \
    oci://mcr.microsoft.com/azuredefender/microsoft-defender-for-containers \
    --namespace <namespace> \
    --reuse-values

Für <namespace>, verwenden Sie:

  • mdc für Standard-AKS-, EKS- und GKE-Cluster.
  • kube-system für AKS Automatic Cluster.

Wenn das Upgrade aufgrund von Ressourcenkonflikten fehlschlägt, fügen Sie dem Upgradebefehl die folgenden Optionen hinzu:

--server-side=true --resolve-conflicts