The FederatedServiceEntry will allow egress to the global scope httpbin DNS names.
apiVersion: primitives.federation.k8s.io/v1alpha1
kind: FederatedServiceEntry
metadata:
name: httpbin-ext
spec:
template:
spec:
The FederatedServiceEntry will allow egress to the global scope httpbin DNS names.
apiVersion: primitives.federation.k8s.io/v1alpha1
kind: FederatedServiceEntry
metadata:
name: httpbin-ext
spec:
template:
spec:
| apiVersion: extensions/v1beta1 | |
| kind: Deployment | |
| metadata: | |
| name: istio-sidecar-injector | |
| namespace: istio-system | |
| labels: | |
| app: sidecarInjectorWebhook | |
| chart: sidecarInjectorWebhook-1.0.3 | |
| release: istio | |
| heritage: Tiller |
kubefed2 federate enable CustomResoureDefinition works with v0.0.3 but not master:
$ git checkout master
Switched to branch 'master'
Your branch is up-to-date with 'origin/master'.
$ git pull origin master
From https://github.com/kubernetes-sigs/federation-v2
* branch master -> FETCH_HEAD
Already up-to-date.
(reverse-i-search)`docker.': ./scripts/deploy-federation.sh docker.io/danehans/federation-v2:test cluster2
| root@dev:~/go/src/github.com/kubernetes-sigs/federation-v2# kubectl get federatedtypeconfigs -n federation-system | |
| NAME AGE | |
| configmaps 48s | |
| customresourcedefinitions.apiextensions.k8s.io 4s | |
| deployments.apps 48s | |
| ingresses.extensions 48s | |
| jobs.batch 48s | |
| namespaces 47s | |
| replicasets.apps 47s | |
| secrets 47s |
| apiVersion: primitives.federation.k8s.io/v1alpha1 | |
| kind: FederatedCustomResourceDefinition | |
| metadata: | |
| name: serviceentries.networking.istio.io | |
| annotations: | |
| "helm.sh/hook": crd-install | |
| labels: | |
| app: istio-pilot | |
| spec: | |
| template: |
kubectl patch virtualservice/ \
--type=merge -p '{"spec":{"clusterNames": ["cluster1"]}}'
kubectl patch federatedgatewayplacement/bookinfo-gateway --type=merge -p '{"spec":{"clusterNames":["cluster1"]}}'
kubectl patch federatedvirtualserviceplacement/bookinfo --type=merge -p '{"spec":{"clusterNames":["cluster1"]}}'
kubectl patch federatedserviceplacement/productpage --type=merge -p '{"spec":{"clusterNames":["cluster1"]}}'
I followed the steps in the nginx-ingress tutorial with one difference. I already had the nginx ingress controller deployed to my 2 k8s clusters using the official guide.
My Ingresses work by setting the host header for curl:
$ curl -I -HHost:nginx.external.daneyon.com http://35.233.196.28:30778
HTTP/1.1 200 OK
Server: nginx/1.15.3
Date: Wed, 03 Oct 2018 18:13:31 GMT
Content-Type: text/html
| # After e2e test "Create". Notice that all the prop versions are correct: | |
| $ kubectl get clusterpropagatedversion/clusterrole-test-crud-nfshf -o yaml | |
| apiVersion: core.federation.k8s.io/v1alpha1 | |
| kind: ClusterPropagatedVersion | |
| metadata: | |
| creationTimestamp: 2018-09-26T18:26:23Z | |
| generation: 1 | |
| name: clusterrole-test-crud-nfshf | |
| resourceVersion: "112821" |
The following use cases are in the context of a k8s operator managing a large number of k8s clusters:
image: "docker.io/istio/galley:1.0.0" to image: "docker.io/istio/galley:1.0.1"