aws / aws-app-mesh-examples

AWS App Mesh is a service mesh that you can use with your microservices to manage service to service communication.
MIT No Attribution
856 stars 397 forks source link

[BUG] aws-app-mesh-examples/walkthroughs/howto-k8s-mtls-sds-based/v1beta2/manifest.yaml.template has issue #588

Open cawcaw253 opened 4 months ago

cawcaw253 commented 4 months ago

Describe the bug when i try to ./deploy_app.sh on ubuntu machine, it return below error.

strict decoding error: unknown field "spec.backendDefaults.clientPolicy.tls.mode"

in result, the front pod and virtual node not provisioned to k8s.

Platform target kubernetes : EKS v1.25 run script on : EC2 (ami-00324b863a508e247 | Ubuntu Pro - Ubuntu Server Pro 22.04 LTS (HVM), SSD Volume Type)

To Reproduce Steps to reproduce the behavior:

  1. launch EC2 with ami-00324b863a508e247
  2. follow /walkthroughs/howto-k8s-mtls-sds-based/README.md step by step
  3. run ./deploy_app.sh
  4. See error

Expected behavior all resource provisioned like below

kubectl get all -n howto-k8s-mtls-sds-based
NAME                         READY   STATUS    RESTARTS   AGE
pod/blue-5ff858765d-rd4rx    2/2     Running   0          2m
pod/front-5f8757d4c-6nmj9    2/2     Running   0          2m
pod/green-7d6c78dfd8-tqrqz   2/2     Running   0          2m
pod/red-64c8887c8d-ccnr4     2/2     Running   0          2m

NAME                  TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)    AGE
service/color         ClusterIP   10.100.158.92    <none>        8080/TCP   2m
service/color-blue    ClusterIP   10.100.65.11     <none>        8080/TCP   2m
service/color-green   ClusterIP   10.100.91.203    <none>        8080/TCP   2m
service/color-red     ClusterIP   10.100.130.238   <none>        8080/TCP   2m
service/front         ClusterIP   10.100.56.110    <none>        8080/TCP   2m

NAME                    READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/blue    1/1     1            1           2m
deployment.apps/front   1/1     1            1           2m
deployment.apps/green   1/1     1            1           2m
deployment.apps/red     1/1     1            1           2m

NAME                               DESIRED   CURRENT   READY   AGE
replicaset.apps/blue-5ff858765d    1         1         1       2m
replicaset.apps/front-5f8757d4c    1         1         1       2m
replicaset.apps/green-7d6c78dfd8   1         1         1       2m
replicaset.apps/red-64c8887c8d     1         1         1       2m

NAME                                  ARN                                                                                                                         AGE
virtualrouter.appmesh.k8s.aws/color   arn:aws:appmesh:us-west-2:1111111111:mesh/howto-k8s-mtls-sds-based/virtualRouter/color_howto-k8s-mtls-sds-based   2m

NAME                                   ARN                                                                                                                                            AGE
virtualservice.appmesh.k8s.aws/color   arn:aws:appmesh:us-west-2:1111111111:mesh/howto-k8s-mtls-sds-based/virtualService/color.howto-k8s-mtls-sds-based.svc.cluster.local   2m

NAME                                ARN                                                                                                                       AGE
virtualnode.appmesh.k8s.aws/blue    arn:aws:appmesh:us-west-2:1111111111:mesh/howto-k8s-mtls-sds-based/virtualNode/blue_howto-k8s-mtls-sds-based    2m
virtualnode.appmesh.k8s.aws/front   arn:aws:appmesh:us-west-2:1111111111:mesh/howto-k8s-mtls-sds-based/virtualNode/front_howto-k8s-mtls-sds-based   2m
virtualnode.appmesh.k8s.aws/green   arn:aws:appmesh:us-west-2:1111111111:mesh/howto-k8s-mtls-sds-based/virtualNode/green_howto-k8s-mtls-sds-based   2m
virtualnode.appmesh.k8s.aws/red     arn:aws:appmesh:us-west-2:1111111111:mesh/howto-k8s-mtls-sds-based/virtualNode/red_howto-k8s-mtls-sds-based     2m

Note: "1111111111" is a dummy Account ID. You should see your Accoount ID in place of "1111111111"

Config files, and API responses If applicable config files and responses from our API.

Additional context When i tried remove mode: STRICT (line 47) on walkthroughs/howto-k8s-mtls-sds-based/v1beta2/manifest.yaml.template it provisioned well. but I'm not sure this is right approach. please check this issue.

https://github.com/aws/aws-app-mesh-examples/blob/5d9a248129e7da3b9cd37e868e491c134df87d20/walkthroughs/howto-k8s-mtls-sds-based/v1beta2/manifest.yaml.template#L47C9-L47C21