|
| 1 | +name: my-load-balancer |
| 2 | +# public ip, must be removed when ephemeral address option is true |
| 3 | +externalAddress: 123.123.123.123 |
| 4 | + |
| 5 | +# public listening interfaces of the loadbalancer |
| 6 | +listeners: |
| 7 | + - displayName: listener1 |
| 8 | + # for plain http the https block must be removed |
| 9 | + # http: {} |
| 10 | + https: |
| 11 | + certificateConfig: |
| 12 | + certificateIds: |
| 13 | + - cert-1 |
| 14 | + - cert-2 |
| 15 | + - cert-3 |
| 16 | + port: 443 |
| 17 | + # protocal may be PROTOCOL_HTTPS or PROTOCOL_HTTP |
| 18 | + protocol: PROTOCOL_HTTPS |
| 19 | + rules: |
| 20 | + # fqdn of the virtual host of the load balancer |
| 21 | + - host: front.facing.host |
| 22 | + http: |
| 23 | + subRules: |
| 24 | + - cookiePersistence: |
| 25 | + name: cookie1 |
| 26 | + ttl: 120s |
| 27 | + headers: |
| 28 | + - name: testheader1 |
| 29 | + exactMatch: X-test-header1 |
| 30 | + - name: testheader2 |
| 31 | + exactMatch: X-test-header2 |
| 32 | + - name: testheader3 |
| 33 | + exactMatch: X-test-header3 |
| 34 | + pathPrefix: /foo |
| 35 | + queryParameters: |
| 36 | + - name: query-param |
| 37 | + exactMatch: q |
| 38 | + - name: region |
| 39 | + exactMatch: region |
| 40 | + targetPool: my-target-pool |
| 41 | + webSocket: false |
| 42 | +networks: |
| 43 | + - networkId: 00000000-0000-0000-0000-000000000000 |
| 44 | + role: ROLE_LISTENERS_AND_TARGETS |
| 45 | + - networkId: 00000000-0000-0000-0000-000000000001 |
| 46 | + role: ROLE_LISTENERS_AND_TARGETS |
| 47 | +options: |
| 48 | + accessControl: |
| 49 | + # which host may access the loadbalancer in prefix notation |
| 50 | + allowedSourceRanges: |
| 51 | + - 10.100.42.0/24 |
| 52 | + ephemeralAddress: true |
| 53 | + privateNetworkOnly: true |
| 54 | + |
| 55 | + # Enable observability features. Appropriate credentials must be made |
| 56 | + # available using the credentials endpoint |
| 57 | + # observability: |
| 58 | + # logs: |
| 59 | + # credentialsRef: my-credentials |
| 60 | + # pushUrl: https://my.observability.host/<observability-instance-id>/loki/api/v1/push |
| 61 | + # metrics: |
| 62 | + # credentialsRef: my-credentials |
| 63 | + # pushUrl: https://my.observability.host/<observability-instance-id>/<argus-instance-id>/api/v1/receive |
| 64 | + |
| 65 | +planId: p10 |
| 66 | + |
| 67 | +# definition of the backend servers |
| 68 | +targetPools: |
| 69 | + - name: my-target-pool |
| 70 | + activeHealthCheck: |
| 71 | + healthyThreshold: 3 |
| 72 | + httpHealthChecks: |
| 73 | + okStatuses: |
| 74 | + - "200" |
| 75 | + path: /health |
| 76 | + interval: 10s |
| 77 | + intervalJitter: 3s |
| 78 | + timeout: 5s |
| 79 | + unhealthyThreshold: 1 |
| 80 | + targetPort: 5732 |
| 81 | + targets: |
| 82 | + # configuration of the backend servers |
| 83 | + - displayName: my-target1 |
| 84 | + ip: 192.11.2.5 |
| 85 | + # if the backend servers must be accessed via TLS the following block |
| 86 | + # allows defining the TLS configuration |
| 87 | + # tlsConfig: |
| 88 | + # # A PEM and base64 encoded certificate |
| 89 | + # customCa: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tDQpNSUlEbkRDQ0EwS2dBd0lCQWdJUkFNUmhrL3pZWkh5UUVDRjQwd3JrTHMwd0NnWUlLb1pJemowRUF3SXdPekVMDQpNQWtHQTFVRUJoTUNWVk14SGpBY0JnTlZCQW9URlVkdmIyZHNaU0JVY25WemRDQlRaWEoyYVdObGN6RU1NQW9HDQpBMVVFQXhNRFYwVXlNQjRYRFRJMU1ETXlNREV4TWpFeU0xb1hEVEkxTURZeE1qRXhNakV5TWxvd0ZqRVVNQklHDQpBMVVFQXd3TEtpNW5iMjluYkdVdVpHVXdXVEFUQmdjcWhrak9QUUlCQmdncWhrak9QUU1CQndOQ0FBUUtNUldLDQpyZTV2RUtkVkNVam9oSlJxSitZdnJ6Mmg2RlpwTGo4SkpHTUlEajh1VlNzY0MvNG9jOURtRDI1c0ZhWnhlUytRDQozcVpGU1FkamxLTGdaRTdPbzRJQ1NqQ0NBa1l3RGdZRFZSMFBBUUgvQkFRREFnZUFNQk1HQTFVZEpRUU1NQW9HDQpDQ3NHQVFVRkJ3TUJNQXdHQTFVZEV3RUIvd1FDTUFBd0hRWURWUjBPQkJZRUZHQVY3ekQvT0Nvd1RrTmhjNGN0DQpEM2lpZ0FnTE1COEdBMVVkSXdRWU1CYUFGSFcreEhldWlmWkVOMzNQc1dnZkhScnIzRFJaTUZnR0NDc0dBUVVGDQpCd0VCQkV3d1NqQWhCZ2dyQmdFRkJRY3dBWVlWYUhSMGNEb3ZMMjh1Y0d0cExtZHZiMmN2ZDJVeU1DVUdDQ3NHDQpBUVVGQnpBQ2hobG9kSFJ3T2k4dmFTNXdhMmt1WjI5dlp5OTNaVEl1WTNKME1DRUdBMVVkRVFRYU1CaUNDeW91DQpaMjl2WjJ4bExtUmxnZ2xuYjI5bmJHVXVaR1V3RXdZRFZSMGdCQXd3Q2pBSUJnWm5nUXdCQWdFd05nWURWUjBmDQpCQzh3TFRBcm9DbWdKNFlsYUhSMGNEb3ZMMk11Y0d0cExtZHZiMmN2ZDJVeUwyUlVUVE10TUdod1YyWkZMbU55DQpiRENDQVFVR0Npc0dBUVFCMW5rQ0JBSUVnZllFZ2ZNQThRQjNBRTUxb3lkY21oRERPRnRzMU44L1V1c2Q4T0NPDQpHNDFwd0xINlpMRmltam5mQUFBQmxiT0FTK29BQUFRREFFZ3dSZ0loQU1YWWVmZDZyNWZWUXpKRHRWQmNjcjdsDQpDZ3RyQi84NHY0MnRyMU1HbXFSRUFpRUE5RHRMNFpGK1RPN2Q1bWprUTNjc2NCUWwxY2xXMmp1eHlKTXVTeDFMDQp5TzRBZGdEZ2tyUDhEQjNJNTJnMkg5NWh1WlpOQ2xKNEdZcHkxbkxFc0UybGJXOVVCQUFBQVpXemdFendBQUFFDQpBd0JITUVVQ0lHNElvTjRHYW03RGgzeVR4MlF2aTA0dS9HRy9IRExTK2V0K21ycVdJQ1l5QWlFQWhHdkNjaFF2DQpCdFVHMDd0bHAvRzRrdkZ3eG01YklSUzJ5ZzBYNU5Obkl4b3dDZ1lJS29aSXpqMEVBd0lEU0FBd1JRSWhBTnpXDQptQU1Jbjl2dmQyN1Q0UVNBR0FkS2xUdDlncnNxa1dtbUxCcUM3Z1NqQWlBbzBjREZYbGFJZ3FqV0tFM043VmdPDQpqYWthT1lZcnZmdnVqT0pmTUxwNzlBPT0NCi0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0NCg== |
| 90 | + # enabled: true |
| 91 | + # skipCertificateValidation: false |
0 commit comments