Simple script to create a KinD cluster ready for Gateway API conformance test
Remember to:
- Change the address on metallb IPAddressPool to the right range
- Bump versions as required
Call it with: ./gwapi.sh BACKEND
being backend:
Simple script to create a KinD cluster ready for Gateway API conformance test
Remember to:
Call it with: ./gwapi.sh BACKEND
being backend:
| package main | |
| import ( | |
| "encoding/json" | |
| "fmt" | |
| crossplane "github.com/nginxinc/nginx-go-crossplane" | |
| ) | |
| func main() { |
| For the default backend, apparently it is using proxy_protocol. Proxy is not implemented yet, as NGINX does not support setting proxy using a variable. | |
| Probably need to create 2 segregated internal listeners, one with proxy and one without it. | |
| Maybe, if I can already pass inside what backend should be used (a dynamic variable with the script loaded globally? otherwise will have to query the shared map twice) |
| package main | |
| import ( | |
| "flag" | |
| "log" | |
| "net" | |
| "github.com/davecgh/go-spew/spew" | |
| "github.com/insomniacslk/dhcp/dhcpv4" | |
| client4 "github.com/insomniacslk/dhcp/dhcpv4/client4" |
| package main | |
| import ( | |
| "context" | |
| "encoding/base64" | |
| "flag" | |
| "fmt" | |
| "log" | |
| "math/rand" | |
| "time" |
| iptables-xml | |
| ldd /usr/bin/iptables-xml | |
| linux-vdso.so.1 (0x00007fff2c394000) | |
| libip4tc.so.2 => /usr/lib/x86_64-linux-gnu/libip4tc.so.2 (0x00007f5f0316c000) | |
| libip6tc.so.2 => /usr/lib/x86_64-linux-gnu/libip6tc.so.2 (0x00007f5f03162000) | |
| libxtables.so.12 => /usr/lib/x86_64-linux-gnu/libxtables.so.12 (0x00007f5f0314f000) | |
| libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f5f02f8a000) | |
| libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f5f02f84000) | |
| /lib64/ld-linux-x86-64.so.2 (0x00007f5f031fb000) | |
| { | |
| "annotations": { | |
| "list": [ | |
| { | |
| "builtIn": 1, | |
| "datasource": "-- Grafana --", | |
| "enable": true, | |
| "hide": true, | |
| "iconColor": "rgba(0, 211, 255, 1)", | |
| "name": "Annotations & Alerts", |
| Initial startup | |
| ===================================== | |
| ***************** | |
| Service: &{Service:Namespace:"default" Name:"hello-world1" Type:"ClusterIP" IPs:{ClusterIP:"10.107.43.121" ExternalIPs:{}} Ports:{Name:"management" Protocol:TCP Port:15672 TargetPort:15672} Ports:{Name:"amqp" Protocol:TCP Port:5672 TargetPort:5672} Endpoints:[IPs:{V4:"172.16.104.14"}]} | |
| ***************** | |
| ***************** | |
| Service: &{Service:Namespace:"default" Name:"hello-world1-nodes" Type:"ClusterIP" IPs:{ClusterIP:"None" ExternalIPs:{}} Ports:{Name:"epmd" Protocol:TCP Port:4369 TargetPort:4369} Ports:{Name:"cluster-rpc" Protocol:TCP Port:25672 TargetPort:25672} Endpoints:[Hostname:"hello-world1-server-0" IPs:{V4:"172.16.104.14"}]} | |
| ***************** | |
| ***************** | |
| Service: &{Service:Namespace:"default" Name:"kubernetes" Type:"ClusterIP" IPs:{ClusterIP:"10.96.0.1" ExternalIPs:{}} Ports:{Name:"https" Protocol:TCP Port:443 TargetPort:6443} Endpoints:[IPs:{V4:"192.168.0.150"}]} |
| package main | |
| import ( | |
| "context" | |
| "fmt" | |
| monitoring "cloud.google.com/go/monitoring/apiv3/v2" | |
| monitoringpb "google.golang.org/genproto/googleapis/monitoring/v3" | |
| "google.golang.org/protobuf/types/known/durationpb" | |
| ) |
| Expected combined: | |
| +--------+-----+-----+-----+-----+-----+-----+-----+-----+-----+ | |
| | TCP/80 | X/A | X/B | X/C | Y/A | Y/B | Y/C | Z/A | Z/B | Z/C | | |
| | TCP/81 | | | | | | | | | | | |
| | UDP/80 | | | | | | | | | | | |
| | UDP/81 | | | | | | | | | | | |
| +--------+-----+-----+-----+-----+-----+-----+-----+-----+-----+ | |
| | x/a | X | X | X | . | . | X | . | . | X | | |
| | | X | X | X | X | X | X | X | X | X | | |
| | | X | X | X | X | X | X | X | X | X | |