Failed when follow the multi-cluster communication tutorial #6465
-
I am trying to follow the Multi-cluster communication tutorial. Here are my steps: # 1. Generate certificates
cd kubernetes/certificates
step certificate create root.linkerd.cluster.local root.crt root.key --profile=root-ca --no-password --insecure
step certificate create identity.linkerd.cluster.local issuer.crt issuer.key \
--profile=intermediate-ca --not-after=8760h --no-password --insecure \
--ca=root.crt --ca-key=root.key
# 2. Create clusters
cd ../..
# The two kind cluster config files can be found at https://github.com/Hongbo-Miao/hongbomiao.com/tree/b180a8216b0fc4376608553204c3c481d6f58bce/kubernetes/kind
kind create cluster --name=west --config=kubernetes/kind/west-cluster-config.yaml
kind create cluster --name=east --config=kubernetes/kind/east-cluster-config.yaml
# 3. Install Linkerd
linkerd install \
--identity-trust-anchors-file=kubernetes/certificates/root.crt \
--identity-issuer-certificate-file=kubernetes/certificates/issuer.crt \
--identity-issuer-key-file=kubernetes/certificates/issuer.key |
tee \
>(kubectl --context=kind-west apply --filename=-) \
>(kubectl --context=kind-east apply --filename=-)
# 4. Install Ingress
for ctx in kind-west kind-east; do
echo "Installing Ingress on ${ctx}"
VERSION=$(curl https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/stable.txt)
kubectl apply --filename="https://raw.githubusercontent.com/kubernetes/ingress-nginx/${VERSION}/deploy/static/provider/kind/deploy.yaml"
echo "-------------"
done
# 5. Patch Ingress
for ctx in kind-west kind-east; do
echo "Patching Ingress on ${ctx}"
# The two patch files mentioned below can be found at https://github.com/Hongbo-Miao/hongbomiao.com/tree/b180a8216b0fc4376608553204c3c481d6f58bce/kubernetes/patch
# What it does is meshing ingress-nginx-controller, which should be same with running
# kubectl get deployment ingress-nginx-controller -n=ingress-nginx -o=yaml | linkerd inject --ingress - | kubectl apply -f=-
kubectl patch configmap ingress-nginx-controller --namespace=ingress-nginx --patch "$(cat kubernetes/patch/ingress-nginx-controller-configmap-patch.yaml)"
kubectl patch deployment ingress-nginx-controller --namespace=ingress-nginx --patch "$(cat kubernetes/patch/ingress-nginx-controller-deployment-patch.yaml)"
echo "-------------"
done
# 6. Check Linkerd
for ctx in kind-west kind-east; do
echo "Checking cluster: ${ctx}"
linkerd --context=${ctx} check || break
echo "-------------"
done
# 7. Install Linkerd multicluster
for ctx in kind-west kind-east; do
echo "Installing on cluster: ${ctx}"
linkerd --context=${ctx} multicluster install |
kubectl --context=${ctx} apply -f - || break
echo "-------------"
done
# 8. Check Linkerd multicluster
for ctx in kind-west kind-east; do
echo "Checking gateway on cluster: ${ctx}"
kubectl --context=${ctx} -n linkerd-multicluster \
rollout status deploy/linkerd-gateway || break
echo "-------------"
done
# 9. Check load balancer
for ctx in kind-west kind-east; do
echo "Checking load balancer on cluster: ${ctx}"
while [ "$(kubectl --context=${ctx} -n linkerd-multicluster get service \
-o 'custom-columns=:.status.loadBalancer.ingress[0].ip' \
--no-headers)" = "<none>" ]; do
printf '.'
sleep 1
done
echo "-------------"
done
# 10. Link the cluster
linkerd --context=kind-east multicluster link --cluster-name=kind-east |
kubectl --context=kind-west apply -f - I first tried without “step 4 and 5: install Ingress and patch (mesh) Ingress”. However, I failed at checking load balancer at step 9, it stuck there forever with
If I continue next “step 10 Link the cluster“, I will get
I then tired all steps above with “step 4 and 5: install Ingress and patch (mesh) Ingress”, however, I got same the issue. Here are some extra info if it helps:
My first question is that I do need install Ingress, right? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 8 replies
-
Copy Charles Pretzer comment from Slack here.
Thanks for help! Will do more experiments and report back. |
Beta Was this translation helpful? Give feedback.
Copy Charles Pretzer comment from Slack here.
Thanks for help! Will do more experiments and report back.