ACP雲原生容器題目整理 -- 服務網關ASM 101~160

  1. ASM實例的運行基於kubernetes運行時,可以通過API Server定義執行各種網絡資源包括虛擬服務、目標規則、istio網關
  2. 通過服務網格ASM,將一個應用的服務組件部署在同VPC的兩個集羣上的前提條件:
  • 在同一VPC下創建兩個ACK集羣
  • 創建一個ASM實例
  1. 通過ASM管理外部註冊Kubernetes集羣應用的前提條件:
  • 一個可以訪問公網地址的外部Kubernetes集羣,並能夠通過容器服務控制檯進行註冊
  • 已開通服務網格功能
  1. ASM路由一個請求時,會根據固定查找過程查找DestinationRule去完成路由,查找過程包括:
  • 從服務命名空間查找(2)
  • 從ASM根命名空間查找(3)
  • 從客戶端命名空間查找(1)
  1. 部署DestinationRule時,需要將DestinationRule部署在以下命名空間中才可以避免定義的DestinationRule失效:
  • ASM根命名空間
  • 服務所在的命名空間
  • 發起調用的客戶端所在命名空間
  1. 一個託管了控制平面的ASM實例可以支持以下場景:
  • 來自多個kubernetes集羣的應用服務
  • 一些非kubernetes服務(例如運行於虛擬機或物理裸機中的服務)
  • 運行於ECI Pod上的應用服務
  1. Istio Mixer其他功能可以通過使用限流服務或者OPA策略集成實現

  2. 服務網格ASM的服務安全體現在:

  • 可以實現服務之間的雙向TLS認證
  • 可以實現密鑰管理
  • 可以實現服務之間的授權
  1. 網格實例一旦創建後,暫不支持的操作包括:
  • 變更網格所依賴的 VPC 與虛擬交換機
  • 如果創建時未開啓公網暴露 API Server,暫不支持增加公網 SLB 暴露 API Server
  • 如果創建時未開啓公網暴露 Istio Pilot,暫不支持增加公網 SLB 暴露 Istio Pilot

支持的操作:提交工單申請擴大配額

  1. 添加集羣到ASM實例需要注意:
  • 如果應用服務運行於單集羣或者同一VPC下的多集羣時,建議先選中與網格處於同一VPC的集羣
  • 確保添加集羣中運行的代理容器能訪問ASM實例暴露的istio pilot地址
  1. 定義虛擬服務、服務網關、目標規則三種istio資源,可以實現相應的流量路由策略。

  2. 訪問入口網關的方法:

  • 從ASM控制檯訪問
  • 從容器服務管理控制檯訪問
  1. 在ASM實例的詳情頁,可以看到基本信息、數據平面信息、控制平面信息三種信息
  2. 如果網格實例是由阿里雲賬號創建,並授權給RAM用戶使用,阿里雲賬號需要爲RAM用戶授予相應的RAM和RBAC權限
  3. 關於配置RAM用戶RBAC權限正確的有:
  • 需要擁有一個阿里雲賬戶,並有一個或多個RAM用戶
  • RAM用戶的授權需要阿里雲賬號,不支持RAM用戶給其他RAM用戶授權
  • 由於阿里雲RAM用戶的安全限制,當您通過ASM控制檯的授權配置涉及到RAM用戶RAM授權的修改時,需要您按照頁面上給出的參考策略內容和操作說明,在RAM控制檯進行目標RAM用戶的手動授權
  1. 服務網格可以獲得的訪問權限有:阿里雲容器服務ACK、專有網羅VPC、鏈路追蹤服務、負載均衡SLB、日誌服務SLS、應用實時監控服務ARMS、雲企業網CEN等訪問權限
  2. 服務關聯角色包含的權限策略由對應的雲服務定義和使用,你無法增傷改權限
  3. 使用AuthorizationPolicy實現訪問控制的前提條件:
  • 已創建ASM實例
  • 已創建ACK集羣
  • 已創建入口網關服務
  • 添加集羣到ASM實例
  1. 如何在ASM中設置路由規則? -- 登錄ASM控制檯,設置VirtualService
  2. 如何設置AuthorizationPolicy?
  • 設置AuthorizationPolicy實現指定的ip訪問應用
  • 設置AuthorizationPolicy實現請求的客戶端訪問應用
  • 設置AuthorizationPolicy實現指定的ip不可以訪問應用
  1. ASM支持通過CRD方式管理自定義網關,通過監聽該CRD資源變化事件對應的Controller可以在相應的Kubernetes集羣中同步對應的Service、Deployment、ServiceAccount
  2. 獲取入口網關服務的地址的方法:通過ASM控制檯查看、通過容器服務控制檯查看
  3. 通過服務網關啓用TLS透傳的前提條件:創建ACK集羣、部署入口網關服務、域名備案
  4. ASM網關啓用壓縮:ACK集羣中部署Nginx,ASM中創建VirtualService,ASM創建Gateway
  5. ASM網關高可用性:創建ASM實例,創建ACK或ASK集羣,將集羣添加進ASM實例
  6. 驗證EnvoyFilter是否生效:通過kubectl連接集羣、向網關發送請求、查看日誌中增加的user_id是否生效
  7. 在ASM中配置Gateway API的步驟:通過kubectl連接ASM實例,配置Gateway,配置HTTPRoute
  8. gRPC服務間調用的負載不均衡的前提條件:
  • 已創建至少一個Kubernetes集羣
  • 已設置通過kubectl連接該集羣
  1. 使用ASM實現負載均衡的前提條件:
  • 已創建至少一個服務網格ASM實例,並已經添加至少一個集羣到該實例中
  • 已設置通過kubectl連接到該集羣
  1. 應用列表頁面展示的關鍵指標包括健康度得分、本日請求數、本日錯誤數

  2. 查看鏈路追蹤數據的步驟:

  • 獲取Zipkin Service地址
  • 使用Zipkin Service地址:9411,訪問Zipkin控制檯,查看追蹤數據
  1. 在Kubernetes集羣頁面,單擊目標集羣右側可觀測性列下的查看報表,可以選擇查看工作負載統計、網格服務統計
  2. 創建Skywalking的服務中,在創建服務對話框中配置的參數包括:
  • 類型:選擇服務訪問的方式
  • 端口映射:添加服務端口和容器端口
  • 關聯:選擇服務要綁定的後端應用
  1. 請求Bookinfo應用的步驟:下載Siege壓測工具、配置環境變量、持續請求bookinfo應用,以便產生流量數據

  2. 通過Aliyun CLI對接一個Consul Server包括以下3個步驟:

  • 通過Aliyun CLI對接一個Consul Server"1.在瀏覽器中輸入Cloud Shell,或者在OpenAPI Explorer中打開命令行操作界面
  • 創建config.json
  • 執行以下命令,對接Consul註冊中心。aliyun servicemesh SetServiceRegistrySource --ServiceMeshId cf9e58cf8743748b3bd13867d6d87**** --Config
  1. 如何查看Concul註冊中心對接結果?
  • 查看ASM組件安裝情況
  • 查看Service Entry同步情況
  1. 對接Consul註冊中心時如何調用服務?
  • 啓用DNS代理後通過ServiceEntry中的hosts名稱和端口調用
  • 通過ServiceEntry中的addresses地址調用
  1. 如何查看Nacos註冊中心對接結果?
  • 查看ASM組件安裝情況
  • 查看Service Entry同步情況
  1. 如何啓用Sidecar注入?(Sidecar默認,對所有命名空間禁止Sidecar自動注入)
  • 更新Pod的kubernetes配置手動注入Envoy代理
  • 使用基於Webhook的機制自動接入
  1. Envoy是一個高效的L3、L4、L7代理
  2. 能實現Envoy Proxy-WASM SDK的語言:C++、Rust、AssemblyScript、Golang(測試中)
  3. 啓動WASM功能的方法:
  • 命令行啓用使用WASM功能
  • 控制檯選中啓用基於WebAssembly的服務網格擴展
  1. 啓用服務網格中的DNS代理的前提條件:
  • 創建ASM實例,ASM實例必須爲v1.8.3.17-g1399628c-aliyun或者以上版本
  • 添加集羣到ASM實例
  1. ASM數據平面熱升級Beta的前提條件:
  • 創建一個1.6.x版本的ASM實例
  • 添加集羣到ASM實例
  • 添加入口網關服務
  1. 在數據面集羣部署OpenKruise的步驟:
  • 安裝阿里雲Helm插件
  • 添加OpenKruise的Helm倉庫
  • 在集羣中安裝OpenKruise
  1. 創建ASM自定義資源的步驟:通過kubectl連接ASM實例,創建yaml文件,部署Gateway和VirtualService
  2. 配置Dubbo服務的DestinationRule需要重點注意的字段:Round Robin、LEAST_CONN、Random
  3. 集成自建Prometheus實現Dubbo服務可觀測性的前提條件:創建ASM專業版實例、創建ACK集羣、添加ACK集羣到ASM實例、部署入口網關服務
  4. ASM定位於以下場景中:混合雲、多集羣、多雲、非容器應用遷移
  5. 通過ASM實現的基於配置的流量管理包括:
  • 簡化服務級屬性的配置
  • 管理流量路由
  • 管理服務網格的服務發現
  • 管理負載均衡
  1. 使用AuthorizationPolicy實現訪問控制的前提條件:
  • 創建ASM實例
  • 創建ACK集羣
  • 添加ACK集羣到ASM實例
  • 部署入口網關服務
  1. 添加集羣到ASM實例的前提條件:
  • 已創建至少一份ASM實例
  • 已創建至少一個ACK集羣
  • 待添加的ACK集羣和ASM實例處於同一VPC
  • 該ACK集羣已開啓公網API Server以方便快速接入
  1. 通過AHAS對網格實例進行流量控制的前提條件:
  • 已創建至少一個ACK集羣
  • 已創建一個ASM實例,並已將ACK集羣添加到ASM實例中
  • 已爲ACK集羣部署入口網關
  • 已開通AHAS專業版
  1. 集成自建Skywalking實現網格可觀測性的前提條件:
  • 已創建ASM實例
  • 已創建ACK集羣
  • 添加集羣到ASM實例
  • 已在ACK集羣中創建SkyWalking
  1. 在ASM中部署啓用WASM Filter的步驟:
  • 創建一個configmap,用於保存WASM過濾器的二進制文件內容
  • 使用兩個annotation將WASM過濾器的二進制文件注入到應用程序對應的Kubernetes服務中
  • 更新productpage-v1
  • 更新details-v1,在istio-proxy容器中的路徑/var/local/lib/wasm-filters下,找到WASM過濾器的二進制文件
  • 使WASM過濾器在處理針對應用服務productpage的流量時,能夠以DEBUG
  1. 服務網格可以通過控制檯完成的操作:
  • 定義目標規則
  • 定義istio虛擬服務
  • 升級服務網格
  • 創建服務網格
  • 定義入口網關資源
  1. 通過ASM,可以輕鬆實現開箱即用的故障恢復功能,得益於分佈式系統提供了以下功能:
  • 異常檢測故障注入
  • 異常檢測實現熔斷能力
  • 基於istio的混沌工程能力
  • 如何使用連接池配置的能力
  1. 添加ECS虛擬機到ASM實例的前提條件:
  • 已創建ASM實例
  • 已創建ECS虛擬機
  1. 服務網格ASM支持對實例進行網絡診斷,診斷項目有:
  • 端口服務檢查
  • 服務關聯檢查
  • APP及Version標籤檢查
  • 目標地址檢查
  • 虛擬服務衝突檢查
  1. 在一個selector中,至少要配置namespaceSelector和objectSelector
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章