Optionale Features in der verwalteten Steuerungsebene aktivieren
Auf dieser Seite wird beschrieben, wie Sie optionale Features in verwaltetem Cloud Service Mesh aktivieren. Informationen zur Steuerungsebene im Cluster finden Sie unter Optionale Features auf der Steuerungsebene im Cluster aktivieren.
Wenn Sie verwaltetes Cloud Service Mesh bereitstellen, unterscheiden sich die unterstützten Funktionen je nach Implementierung der Steuerungsebene. Bestimmte Funktionen sind nur über eine Zulassungsliste verfügbar. Weitere Informationen finden Sie unter Unterstützte Funktionen.
Wenn Sie heute eine IstioOperator
-basierte Konfiguration verwenden, kann das Tool zur Migration von IstioOperator bei der Konvertierung in eine Konfiguration hilfreich sein, die von der verwalteten Steuerungsebene unterstützt wird.
Proxy-Image löschen
Wenn Sie Cloud Service Mesh direkt mit einer verwalteten
TRAFFIC_DIRECTOR
Steuerungsebene eingerichtet haben, wird nur der Imagetyp ohne Distribution unterstützt. Sie können sie nicht ändern.Wenn für Ihre Flotte ursprünglich die
ISTIOD
-Steuerungsebene verwendet wurde und sie zurTRAFFIC_DIRECTOR
-Implementierung migriert wurde, blieb der Image-Typ während der Migration unverändert. Sie können ihn aber selbst in „distroless“ ändern.
Als Best Practice sollten Sie den Inhalt einer Containerlaufzeit auf die erforderlichen Pakete beschränken. Dieser Ansatz verbessert die Sicherheit und das Signal-Rausch-Verhältnis von CVE-Scannen (Common Vulnerabilities and Exposures). Istio stellt Proxy-Images bereit, die auf Distroless-Basis-Images basieren.
Das Distroless-Proxy-Image enthält keine anderen Binärdateien als den Proxy.
Daher ist es nicht möglich, eine Shell mit exec
zu versehen oder curl
, ping
oder andere Fehlerbehebungsfunktionen im Container zu verwenden. Sie können jedoch sitzungsspezifische Container verwenden, um einen laufenden Workload-Pod anzuhängen, um ihn zu prüfen und benutzerdefinierte Befehle auszuführen. Weitere Informationen finden Sie beispielsweise unter Cloud Service Mesh-Protokolle erfassen.
Die folgende Konfiguration aktiviert Distributions-Images für das gesamte Cloud Service Mesh. Bei einer Änderung des Image-Typs muss jeder Pod neu gestartet und neu eingefügt werden, um wirksam zu werden.
apiVersion: v1
kind: ConfigMap
metadata:
name: istio-release-channel
namespace: istio-system
data:
mesh: |-
defaultConfig:
image:
imageType: distroless
Sie können imageType
mit der folgenden Pod-Anmerkung überschreiben.
sidecar.istio.io/proxyImageType: debug
Nachdem Sie den Image-Typ einer Bereitstellung über die Annotation geändert haben, sollte die Bereitstellung neu gestartet werden.
kubectl rollout restart deployment -n NAMESPACE DEPLOYMENT_NAME
Da für gcloud beta container fleet mesh debug proxy-status / proxy-config
kein Debug-Basis-Image erforderlich ist, sollte es für die meisten Arten von Proxy-Debugging verwendet werden (Details).
Richtlinie für ausgehenden Traffic
Standardmäßig ist outboundTrafficPolicy
auf ALLOW_ANY
festgelegt. In diesem Modus ist der gesamte Traffic zu externen Diensten zulässig. Wenn Sie den Traffic nur auf die externen Dienste beschränken möchten, für die Diensteinträge definiert sind, können Sie das Standardverhalten von ALLOW_ANY
in REGISTRY_ONLY
ändern.
Mit der folgenden Konfiguration wird
outboundTrafficPolicy
aufREGISTRY_ONLY
konfiguriert:apiVersion: v1 kind: ConfigMap metadata: name: istio-release-channel namespace: istio-system data: mesh: |- outboundTrafficPolicy: mode: REGISTRY_ONLY
Dabei ist release-channel Ihre Release-Version (
asm-managed
,asm-managed-stable
oderasm-managed-rapid
).Sie können die erforderlichen Konfigurationsänderungen in der ConfigMap mit dem folgenden Befehl vornehmen:
kubectl edit configmap istio-release-channel -n istio-system -o yaml
Führen Sie den folgenden Befehl aus, um die ConfigMap aufzurufen:
kubectl get configmap istio-release-channel -n istio-system -o yaml
Prüfen Sie, ob
outboundTrafficPolicy
mitREGISTRY_ONLY
aktiviert ist. Dazu müssen die folgenden Zeilen im Abschnittmesh:
angezeigt werden.... apiVersion: v1 data: mesh: | outboundTrafficPolicy: mode: REGISTRY_ONLY ...
Endnutzerauthentifizierung
Sie können die verwaltete Cloud Service Mesh-Nutzerauthentifizierung für die browserbasierte Endnutzerauthentifizierung und Zugriffssteuerung für Ihre bereitgestellten Arbeitslasten konfigurieren. Weitere Informationen finden Sie unter Cloud Service Mesh-Nutzerauthentifizierung konfigurieren.
TLS-Mindestversion für Ihre Arbeitslasten konfigurieren
Wenn Sie Cloud Service Mesh direkt mit einer verwalteten TRAFFIC_DIRECTOR
Steuerungsebene eingerichtet haben, können Sie diese Einstellung nicht ändern.
Sie können das Feld minProtocolVersion
verwenden, um die Mindest-TLS-Version für die TLS-Verbindungen Ihrer Arbeitslasten anzugeben. Weitere Informationen zum Festlegen der Mindest-TLS-Version und zum Prüfen der TLS-Konfiguration Ihrer Arbeitslasten finden Sie unter Konfiguration der Mindest-TLS-Version von Istio-Arbeitslasten.
Im folgenden Beispiel wird eine ConfigMap
-Datei gezeigt, in der die TLS-Mindestversion für Arbeitslasten auf 1.3 festgelegt ist:
apiVersion: v1
kind: ConfigMap
metadata:
name: istio-release-channel
namespace: istio-system
data:
mesh: |-
meshMTLS:
minProtocolVersion: TLSV1_3