Check everything in

Signed-off-by: Miek Gieben <miek@miek.nl>
This commit is contained in:
Miek Gieben
2020-01-15 17:26:09 +01:00
parent 5f2d5788b0
commit 1652395efa
22 changed files with 3735 additions and 19 deletions

View File

@@ -6,14 +6,13 @@ Repos used:
: implements control plane, has testing stuff in pkg/test/main (iirc).
<https://github.com/grpc/grpc-go/tree/master/xds/internal/client>
: implements client for xDS - can probably list all code out from there.
: implements client for xDS - much of this code has been reused here.
To see if things are working start the testing control plane from go-control-plane:
https://github.com/envoyproxy/envoy/blob/master/api/API_OVERVIEW.md
https://github.com/envoyproxy/learnenvoy/blob/master/_articles/service-discovery.md
* https://github.com/envoyproxy/envoy/blob/master/api/API_OVERVIEW.md
* https://github.com/envoyproxy/learnenvoy/blob/master/_articles/service-discovery.md
* This was really helpful: https://www.envoyproxy.io/docs/envoy/v1.11.2/api-docs/xds_protocol
Cluster: A cluster is a group of logically similar endpoints that Envoy connects to. In v2, RDS
routes points to clusters, CDS provides cluster configuration and Envoy discovers the cluster
@@ -22,19 +21,25 @@ members via EDS.
# Testing
~~~ sh
$ cd ~/src/github.com/envoyproxy/go-control-plane
% make integration.xds
% cd ~/src/github.com/envoyproxy/go-control-plane/pkg/test/main
% go build
% ./main --xds=ads --runtimes=2 -debug
~~~
This runs a binary from pkg/test/main. Now we're testing aDS.
This runs a binary from pkg/test/main. Now we're testing aDS. Everything is using gRPC with TLS,
`grpc.WithInsecure()`. The binary runs on port 18000 on localhost; all these things are currently
hardcoded in the *traffic* plugin. This will be factored out into config as some point.
The script stops, unless you have Envoy installed (which I haven't), but you can run it manually:
Then for CoreDNS, check out the `traffic` branch, create a Corefile:
~~~ sh
./bin/test --xds=ads --runtimes=2 -debug # for ads
~~~ Corefile
example.org {
traffic
debug
}
~~~
This fails with `timeout waiting for the first request`, means you're consumer wasn't quick enough
in asking for xDS assignments.
Start CoreDNS, and see logging/debugging flow by; the test binary should also spew out a bunch of
things. CoreDNS willl build up a list of cluster and endpoints. Next you can query it.
Use insecure.
TODO