In the same terminal window that you exported your GH_USER
and GH_REPO
to, we will be enabling the appmesh
eksctl profile.
Run the eksctl profile command:
eksctl enable profile appmesh \
--profile-revision=demo \
--cluster=gitopssdlcworkshop \
--region=us-west-2 \
--git-user="fluxcd" \
--git-email="${GH_USER}@users.noreply.github.com" \
--git-url="git@github.com:${GH_USER}/${GH_REPO}"
Run the fluxctl sync command to install the App Mesh control plane on your cluster:
fluxctl sync --k8s-fwd-ns flux
Inspect the components that were installed:
kubectl get helmreleases --all-namespaces
You should see the following:
NAMESPACE NAME RELEASE PHASE STATUS MESSAGE AGE
appmesh-system appmesh-controller appmesh-controller Succeeded deployed Release was successful for Helm release 'appmesh-controller' in 'appmesh-system'. 19h
appmesh-system appmesh-grafana appmesh-grafana Succeeded deployed Release was successful for Helm release 'appmesh-grafana' in 'appmesh-system'. 19h
appmesh-system appmesh-inject appmesh-inject Succeeded deployed Release was successful for Helm release 'appmesh-inject' in 'appmesh-system'. 19h
appmesh-system appmesh-prometheus appmesh-prometheus Succeeded deployed Release was successful for Helm release 'appmesh-prometheus' in 'appmesh-system'. 19h
appmesh-system flagger flagger Succeeded deployed Release was successful for Helm release 'flagger' in 'appmesh-system'. 19h
demo appmesh-gateway appmesh-gateway Succeeded deployed Release was successful for Helm release 'appmesh-gateway' in 'demo'. 19h
kube-system metrics-server metrics-server Succeeded deployed Release was successful for Helm release 'metrics-server' in 'kube-system'. 19h
Verify that the mesh was created successfully:
kubectl describe mesh
The mesh was created and is active if you see the following:
Name: appmesh
API Version: appmesh.k8s.aws/v1beta1
Kind: Mesh
Spec:
Service Discovery Type: dns
Status:
Mesh Condition:
Status: True
Type: MeshActive