Sebelum menggunakan Ingress ALB untuk mengakses layanan dalam kluster khusus ACK, Anda harus memberikan izin yang diperlukan kepada pengontrol Ingress ALB. Topik ini menjelaskan cara memberikan izin kepada komponen pengontrol Ingress ALB dalam kluster khusus ACK.
Prasyarat
Catatan Penggunaan
Anda hanya perlu memberikan izin akses ke pengontrol Ingress ALB untuk kluster khusus ACK. Untuk kluster ACK yang dikelola dan kluster ACK Serverless, Anda dapat menggunakan Ingress ALB tanpa memberikan izin tambahan kepada pengontrol Ingress ALB.
Prosedur
Buat kebijakan kustom.
Masuk ke Konsol RAM sebagai pengguna RAM yang memiliki hak administratif.
Di panel navigasi sebelah kiri, pilih .
Pada halaman Policies, klik Create Policy.

Pada halaman Create Policy, klik tab JSON.

Masukkan dokumen kebijakan berikut. Lalu, pada halaman Create Policy, klik OK.
{ "Version": "1", "Statement": [ { "Action": [ "alb:EnableLoadBalancerIpv6Internet", "alb:DisableLoadBalancerIpv6Internet", "alb:CreateAcl", "alb:DeleteAcl", "alb:ListAcls", "alb:ListAclRelations", "alb:AddEntriesToAcl", "alb:AssociateAclsWithListener", "alb:ListAclEntries", "alb:RemoveEntriesFromAcl", "alb:DissociateAclsFromListener", "alb:TagResources", "alb:UnTagResources", "alb:ListServerGroups", "alb:ListServerGroupServers", "alb:AddServersToServerGroup", "alb:RemoveServersFromServerGroup", "alb:ReplaceServersInServerGroup", "alb:CreateLoadBalancer", "alb:DeleteLoadBalancer", "alb:UpdateLoadBalancerAttribute", "alb:UpdateLoadBalancerEdition", "alb:EnableLoadBalancerAccessLog", "alb:DisableLoadBalancerAccessLog", "alb:EnableDeletionProtection", "alb:DisableDeletionProtection", "alb:ListLoadBalancers", "alb:GetLoadBalancerAttribute", "alb:ListListeners", "alb:CreateListener", "alb:GetListenerAttribute", "alb:UpdateListenerAttribute", "alb:ListListenerCertificates", "alb:AssociateAdditionalCertificatesWithListener", "alb:DissociateAdditionalCertificatesFromListener", "alb:DeleteListener", "alb:CreateRule", "alb:DeleteRule", "alb:UpdateRuleAttribute", "alb:CreateRules", "alb:UpdateRulesAttribute", "alb:DeleteRules", "alb:ListRules", "alb:UpdateListenerLogConfig", "alb:CreateServerGroup", "alb:DeleteServerGroup", "alb:UpdateServerGroupAttribute", "alb:UpdateLoadBalancerAddressTypeConfig", "alb:AttachCommonBandwidthPackageToLoadBalancer", "alb:DetachCommonBandwidthPackageFromLoadBalancer", "alb:UpdateServerGroupServersAttribute", "alb:MoveResourceGroup", "alb:DescribeZones", "alb:ListAScripts", "alb:CreateAScripts", "alb:UpdateAScripts", "alb:DeleteAScripts" ], "Resource": "*", "Effect": "Allow" }, { "Action": "ram:CreateServiceLinkedRole", "Resource": "*", "Effect": "Allow", "Condition": { "StringEquals": { "ram:ServiceName": [ "alb.aliyuncs.com", "audit.log.aliyuncs.com", "nlb.aliyuncs.com", "logdelivery.alb.aliyuncs.com" ] } } }, { "Action": [ "log:GetProductDataCollection", "log:OpenProductDataCollection", "log:CloseProductDataCollection" ], "Resource": "acs:log:*:*:project/*/logstore/alb_*", "Effect": "Allow" }, { "Action": [ "yundun-cert:DescribeSSLCertificateList", "yundun-cert:DescribeSSLCertificatePublicKeyDetail", "yundun-cert:CreateSSLCertificateWithName", "yundun-cert:DeleteSSLCertificate" ], "Resource": "*", "Effect": "Allow" }, { "Action": "vpc:DescribeVSwitches", "Resource": "*", "Effect": "Allow" }, { "Action": "ecs:DescribeNetworkInterfaces", "Resource": "*", "Effect": "Allow" } ] }CatatanPisahkan beberapa pernyataan kebijakan dengan koma (,).
Pada kotak dialog Create Policy, masukkan Policy Name dan Note, lalu klik OK.
Berikan izin kepada peran RAM worker kluster.
Masuk ke Konsol ACK. Di panel navigasi kiri, klik Clusters.
Pada halaman Clusters, klik nama kluster target, lalu klik tab Basic Information.
Pada tab Basic Information, klik tautan di sebelah kanan Worker RAM Role untuk membuka Konsol RAM.
Pada tab Permissions, klik Grant Permission. Pada panel Grant Permission, cari dan pilih kebijakan kustom yang telah Anda buat pada langkah sebelumnya di bagian Select Policy.
Klik OK.
Klik Close.
Konfirmasi status peran RAM instans.
Di panel navigasi sisi kiri halaman detail, pilih .
Pada halaman Nodes, klik ID instans node target, misalnya,
i-2ze5d2qi9iy90pzb****.Pada halaman detail instans, klik tab Instance Details. Di bagian Other Information, periksa apakah peran RAM ditampilkan di sebelah kanan RAM Role.
Jika tidak ada peran RAM yang ditautkan, sambungkan peran RAM ke instance ECS. Untuk informasi selengkapnya, lihat Melepas atau mengubah instance RAM role.
Hapus dan buat ulang pod alb-ingress-controller untuk memastikan komponen berfungsi dengan benar.
PentingLakukan operasi ini di luar jam sibuk.
Kueri nama pod alb-ingress-controller.
kubectl -n kube-system get pod | grep alb-ingress-controllerOutput yang diharapkan:
NAME READY STATUS RESTARTS AGE alb-ingress-controller-*** 1/1 Running 0 60sHapus pod alb-ingress-controller.
Ganti
alb-ingress-controller-***dengan nilai yang Anda peroleh pada langkah sebelumnya.kubectl -n kube-system delete pod alb-ingress-controller-***Output yang diharapkan:
pod "alb-ingress-controller-***" deletedSetelah beberapa menit, periksa status pod yang dibuat ulang.
kubectl -n kube-system get podOutput yang diharapkan:
NAME READY STATUS RESTARTS AGE alb-ingress-controller-***2 1/1 Running 0 60sOutput menunjukkan bahwa status pod yang dibuat ulang adalah Running dan komponen berfungsi dengan benar.
Langkah Selanjutnya
Untuk mempelajari cara menggunakan Ingress ALB guna mengakses layanan dalam kluster khusus ACK, lihat Membuat dan menggunakan Ingress ALB untuk mengekspos layanan.