You can add IP addresses to a trustlist or blocklist to control access to a listener of a LoadBalancer ingress.
This example explains only key parameters for configuring blocklist/trustlist access policies. You can configure other parameters as required. For details, see Creating a LoadBalancer Ingress on the Console.
Parameter |
Description |
Example |
|---|---|---|
Name |
Enter an ingress name. |
ingress-test |
Load Balancer |
Select a load balancer to be associated with the ingress or automatically create a load balancer. A load balancer can be dedicated or shared. |
Dedicated |
Listener |
|
|
Forwarding Policy |
|
|
vi ingress-test.yaml
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: ingress-test
annotations:
kubernetes.io/elb.id: <your_elb_id> # Load balancer ID. Replace it with the actual value.
kubernetes.io/elb.class: performance # Load balancer type
kubernetes.io/elb.port: '80' # External port of the load balancer listener
kubernetes.io/elb.acl-id: <your_acl_id> # ID of an IP address group for accessing a load balancer
kubernetes.io/elb.acl-status: 'on' # Enable access control.
kubernetes.io/elb.acl-type: 'white' # Trustlist for access control
spec:
rules:
- host: ''
http:
paths:
- path: '/'
backend:
service:
name: <your_service_name> # Replace it with the name of your target Service.
port:
number: 80 # Replace the number with that of your target Service.
property:
ingress.beta.kubernetes.io/url-match-mode: STARTS_WITH
pathType: ImplementationSpecific
ingressClassName: cce
Parameter |
Type |
Description |
|---|---|---|
kubernetes.io/elb.acl-id |
String |
|
kubernetes.io/elb.acl-status |
String |
This parameter is mandatory when you configure an IP address blocklist or trustlist for a load balancer. Options:
|
kubernetes.io/elb.acl-type |
String |
This parameter is mandatory when you configure an IP address blocklist or trustlist for a load balancer. Options:
|
kubectl create -f ingress-test.yaml
If information similar to the following is displayed, the ingress has been created:
ingress/ingress-test created
kubectl get ingress
If information similar to the following is displayed, the ingress has been created:
NAME CLASS HOSTS ADDRESS PORTS AGE ingress-test cce * 121.**.**.** 80 10s