日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

控制OPA Sidecar代理注入的范圍

開放策略代理(OPA)插件通過為應用注入OPA Sidecar代理來定義訪問控制策略。當您需要對特定命名空間的應用程序進行精細化授權和訪問控制時,可以啟用OPA注入范圍控制功能,僅添加了opa-istio-injection=enabled標簽的命名空間下的Pod會注入OPA Sidecar代理,實現更細粒度的訪問控制。

前提條件

  • 已添加集群到ASM實例,且ASM實例為1.12.4.19及以上版本。具體操作,請參見添加集群到ASM實例

  • 已創建default和develop命名空間。具體操作,請參見管理命名空間與配額

  • 已在default命名空間下部署Nginx應用,在develop命名空間下部署Sleep應用。更多信息,請參見創建無狀態工作負載Deployment

    展開查看如何創建Nginx和Sleep應用

    1. 使用以下內容,創建nginx.yaml和sleep.yaml。

      nginx.yaml

      apiVersion: apps/v1 # for versions before 1.9.0 use apps/v1beta2
      kind: Deployment
      metadata:
        name: nginx-deployment
      spec:
        selector:
          matchLabels:
            app: nginx
        replicas: 1
        template:
          metadata:
            labels:
              app: nginx
              sidecarset-injected: "true"
          spec:
            containers:
            - name: nginx
              image: nginx:1.14.2
              ports:
              - containerPort: 80
      ---
      apiVersion: v1
      kind: Service
      metadata:
        name: nginx
      spec:
        ports:
          - name: http
            port: 80
            protocol: TCP
            targetPort: 80
        selector:
          app: nginx
        type: ClusterIP

      sleep.yaml

      apiVersion: v1
      kind: ServiceAccount
      metadata:
        name: sleep
      ---
      apiVersion: v1
      kind: Service
      metadata:
        name: sleep
        labels:
          app: sleep
          service: sleep
      spec:
        ports:
        - port: 80
          name: http
        selector:
          app: sleep
      ---
      apiVersion: apps/v1
      kind: Deployment
      metadata:
        name: sleep
      spec:
        replicas: 1
        selector:
          matchLabels:
            app: sleep
        template:
          metadata:
            labels:
              app: sleep
          spec:
            terminationGracePeriodSeconds: 0
            serviceAccountName: sleep
            containers:
            - name: sleep
              image: curlimages/curl
              command: ["/bin/sleep", "infinity"]
              imagePullPolicy: IfNotPresent
              volumeMounts:
              - mountPath: /etc/sleep/tls
                name: secret-volume
            volumes:
            - name: secret-volume
              secret:
                secretName: sleep-secret
                optional: true
      ---
    2. 執行以下命令,在default命名空間下部署Nginx應用,在develop命名空間下部署Sleep應用。

      kubectl apply -f nginx.yaml -n default
      kubectl apply -f sleep.yaml -n develop

步驟一:啟用OPA插件和注入范圍控制

本文啟用OPA插件和注入范圍控制后,為default命名空間添加opa-istio-injection=enabled標簽,develop命名空間則不添加opa-istio-injection=enabled標簽,查看Nginx應用和Sleep應用是否都注入OPA Sidecar代理,從而驗證控制OPA Sidecar代理注入范圍是否成功。

  1. 登錄ASM控制臺,在左側導航欄,選擇服務網格 > 網格管理

  2. 網格管理頁面,單擊目標實例名稱,然后在左側導航欄,選擇網格安全中心 > OPA策略

  3. OPA策略頁面,選中啟用開放策略代理OPA插件啟用OPA注入范圍控制,單擊開啟OPA功能,在提示對話框,單擊確定

步驟二:為命名空間添加標簽

下文介紹如何在ACK控制臺上為default命名空間添加opa-istio-injection=enabled標簽。您也可以通過kubectl工具連接集群,執行kubectl label namespace default opa-istio-injection=enabled --overwrite命令,為命名空間添加標簽。關于連接集群的具體操作,請參見獲取集群KubeConfig并通過kubectl工具連接集群

  1. 登錄容器服務管理控制臺,在左側導航欄選擇集群

  2. 集群列表頁面,單擊目標集群名稱,然后在左側導航欄,選擇命名空間與配額

  3. 命名空間頁面,單擊default命名空間右側操作列下的編輯

  4. 編輯命名空間對話框,設置標簽名稱為opa-istio-injection,值為enabled,單擊添加,然后單擊確定

步驟三:重啟應用

通過刪除Pod的方式使應用重啟。重啟應用后,會自動注入OPA Sideacr代理。

  1. 登錄容器服務管理控制臺,在左側導航欄選擇集群

  2. 集群列表頁面,單擊目標集群名稱,然后在左側導航欄,選擇工作負載 > 容器組

  3. 容器組頁面頂部,設置命名空間default,單擊Nginx應用Pod右側操作列下的更多 > 刪除,在提示對話框,單擊確定

    如果應用下有多個Pod,您需要刪除多個Pod,使應用重啟。Pod狀態顯示為Running,說明Pod重啟成功。

  4. 重復執行以上操作,重啟develop命名空間下Sleep應用的Pod。

步驟四:驗證控制OPA注入范圍是否成功

  1. 登錄容器服務管理控制臺,在左側導航欄選擇集群

  2. 集群列表頁面,單擊目標集群名稱,然后在左側導航欄,選擇工作負載 > 容器組

  3. 容器組頁面,查看Nginx和Sleep應用是否注入OPA Sidecar代理。

    • 設置命名空間default,單擊Nginx應用的名稱,在容器頁簽下可以看到opa-istio,說明Nginx應用注入OPA Sidecar代理。注入OPA

    • 設置命名空間develop,單擊Sleep應用的名稱,在容器頁簽下沒有看到opa-istio,說明Sleep應用未注入OPA Sidecar代理。sleep

    通過以上操作,可以看到啟用OPA注入范圍控制功能后,添加opa-istio-injection=enabled標簽的命名空間下的應用注入了OPA Sidecar代理,沒有添加opa-istio-injection=enabled標簽的命名空間下的應用未注入了OPA Sidecar代理,說明控制OPA注入范圍成功。