[{"data":1,"prerenderedAt":66},["ShallowReactive",2],{"content-guides-serverless-crossplane-on-eks-introduction":3},{"markdown":4,"frontMatterAttributes":5,"bodyRaw":12,"contributorPaths":13,"menuType":15,"contentName":16,"slug":17,"readingTime":18,"menu":19,"nextDocItem":30,"previousDocItem":65},"\u003Cp>In this tutorial, we will walk you through deploying the serverless architecture depicted in the diagram using Crossplane on EKS. \u003Ca href=\"https:\u002F\u002Fwww.crossplane.io\u002F\">Crossplane\u003C\u002Fa> is a CNCF open source project that extends the capabilities of Kubernetes to include infrastructure resource management. If you are not familiar with the fundamentals of Crossplane, we recommend first completing the official \u003Ca href=\"https:\u002F\u002Fdocs.crossplane.io\u002Fmaster\u002Fgetting-started\u002Fprovider-aws-part-2\u002F\">Crossplane getting started guide\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cimg src=\"\u002Fassets\u002Fexternal\u002Fguides\u002Fserverless-crossplane-on-eks\u002Fassets\u002FServerlessTutorial.png\" \u002F>\n\n\n\u003Ch2>Prerequisites\u003C\u002Fh2>\n\u003Cp>Before starting this guide, you will need:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cp>An AWS account: if you don&#39;t already have one follow the \u003Ca href=\"https:\u002F\u002Faws.amazon.com\u002Fgetting-started\u002Fguides\u002Fsetup-environment\u002F\">Setup Your Environment\u003C\u002Fa> (Steps 1, 2, and 3) getting started guide for a quick overview.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Cp>The latest version of the AWS CLI: Visit our \u003Ca href=\"https:\u002F\u002Fdocs.aws.amazon.com\u002Fcli\u002Flatest\u002Fuserguide\u002Fgetting-started-install.html\">guide\u003C\u002Fa> to get started installing or updating the AWS CLI.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Cp>Kubectl: Visit Amazon EKS \u003Ca href=\"https:\u002F\u002Fdocs.aws.amazon.com\u002Feks\u002Flatest\u002Fuserguide\u002Finstall-kubectl.html\">guide\u003C\u002Fa> to get started installing or updating kubectl.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Cp>EKS cluster and Crossplane: follow this \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fawslabs\u002Fcrossplane-on-eks\u002Ftree\u002Fmain\u002Fbootstrap\u002Fterraform\">Readme\u003C\u002Fa> to create with \u003Ca href=\"https:\u002F\u002Fdeveloper.hashicorp.com\u002Fterraform\u002Ftutorials\u002Faws-get-started\u002Finstall-cli\">Terraform &gt;= 1.0.0\u003C\u002Fa>\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Cp>EKS cluster &gt;= 1.27\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Cp>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fcrossplane\u002Fcrossplane\u002Ftree\u002F3e8be642b37f3b6dfb9ed1cd08b96a1e16413398\u002Fcluster\u002Fcharts\u002Fcrossplane\">Crossplane\u003C\u002Fa> helm chart &gt;= 1.13\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Cp>Crossplane official \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fupbound\u002Fprovider-aws\">aws-provider\u003C\u002Fa> configured to access AWS API &gt;= 0.38\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Cp>Go: Find the installation instructions \u003Ca href=\"https:\u002F\u002Fgo.dev\u002Fdoc\u002Finstall\">here\u003C\u002Fa>.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Cp>Docker: Find the installation instructions \u003Ca href=\"https:\u002F\u002Fdocs.docker.com\u002Fengine\u002Finstall\u002F\">here\u003C\u002Fa>.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2>Modules\u003C\u002Fh2>\n\u003Cp>This tutorial is divided into the following short modules. You must complete each module before moving to the next one.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cp>\u003Ca href=\"\u002Fcontent\u002Fguides\u002Fserverless-crossplane-on-eks\u002Fdocker-image\">Build a docker image and push to ECR\u003C\u002Fa> (5 mins): Build a Docker image of a sample application, create an ECR repository, and upload the image to it.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Cp>\u003Ca href=\"\u002Fcontent\u002Fguides\u002Fserverless-crossplane-on-eks\u002Fdeployment\">Deploy the serverless application\u003C\u002Fa> (15 mins): Using the Kubernetes command line, deploy Crossplane Resource Definitions, Compositions, and Claims in order to create your resources for your serverless application.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Cp>\u003Ca href=\"\u002Fcontent\u002Fguides\u002Fserverless-crossplane-on-eks\u002Ftesting\">Test\u003C\u002Fa> (5 mins): Send a message to your newly created SQS queue and observe it triggering your Lambda function and publishing the result in your S3 bucket.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\u003Cp>\u003Ca href=\"\u002Fcontent\u002Fguides\u002Fserverless-crossplane-on-eks\u002Fcleanup\">Clean up resources\u003C\u002Fa> (5 mins): In this last part of the guide you learn how to clean after you are done.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n",{"title":6,"order":7,"learningGoals":8},"Overview",1,[9,10,11],"Create a Docker image and push it to ECR.","Set Crossplane underlying Compositions and XRDs, and use Claims.","Validate results with basic commands using kubectl and the AWS CLI.","In this tutorial, we will walk you through deploying the serverless architecture depicted in the diagram using Crossplane on EKS. [Crossplane](https:\u002F\u002Fwww.crossplane.io\u002F) is a CNCF open source project that extends the capabilities of Kubernetes to include infrastructure resource management. If you are not familiar with the fundamentals of Crossplane, we recommend first completing the official [Crossplane getting started guide](https:\u002F\u002Fdocs.crossplane.io\u002Fmaster\u002Fgetting-started\u002Fprovider-aws-part-2\u002F).\n\n\u003Cimg src=\"\u002Fassets\u002Fexternal\u002Fguides\u002Fserverless-crossplane-on-eks\u002Fassets\u002FServerlessTutorial.png\" \u002F>\n\n\n## Prerequisites\n\nBefore starting this guide, you will need:\n\n-   An AWS account: if you don't already have one follow the [Setup Your Environment](https:\u002F\u002Faws.amazon.com\u002Fgetting-started\u002Fguides\u002Fsetup-environment\u002F) (Steps 1, 2, and 3) getting started guide for a quick overview.\n-   The latest version of the AWS CLI: Visit our [guide](https:\u002F\u002Fdocs.aws.amazon.com\u002Fcli\u002Flatest\u002Fuserguide\u002Fgetting-started-install.html) to get started installing or updating the AWS CLI.\n-   Kubectl: Visit Amazon EKS [guide](https:\u002F\u002Fdocs.aws.amazon.com\u002Feks\u002Flatest\u002Fuserguide\u002Finstall-kubectl.html) to get started installing or updating kubectl.\n-   EKS cluster and Crossplane: follow this [Readme](https:\u002F\u002Fgithub.com\u002Fawslabs\u002Fcrossplane-on-eks\u002Ftree\u002Fmain\u002Fbootstrap\u002Fterraform) to create with [Terraform >= 1.0.0](https:\u002F\u002Fdeveloper.hashicorp.com\u002Fterraform\u002Ftutorials\u002Faws-get-started\u002Finstall-cli)\n\n-   EKS cluster >= 1.27\n-   [Crossplane](https:\u002F\u002Fgithub.com\u002Fcrossplane\u002Fcrossplane\u002Ftree\u002F3e8be642b37f3b6dfb9ed1cd08b96a1e16413398\u002Fcluster\u002Fcharts\u002Fcrossplane) helm chart >= 1.13\n-   Crossplane official [aws-provider](https:\u002F\u002Fgithub.com\u002Fupbound\u002Fprovider-aws) configured to access AWS API >= 0.38\n\n-   Go: Find the installation instructions [here](https:\u002F\u002Fgo.dev\u002Fdoc\u002Finstall).\n-   Docker: Find the installation instructions [here](https:\u002F\u002Fdocs.docker.com\u002Fengine\u002Finstall\u002F).\n\n## Modules\n\nThis tutorial is divided into the following short modules. You must complete each module before moving to the next one.\n\n- [Build a docker image and push to ECR](\u002Fcontent\u002Fguides\u002Fserverless-crossplane-on-eks\u002Fdocker-image) (5 mins): Build a Docker image of a sample application, create an ECR repository, and upload the image to it.\n\n- [Deploy the serverless application](\u002Fcontent\u002Fguides\u002Fserverless-crossplane-on-eks\u002Fdeployment) (15 mins): Using the Kubernetes command line, deploy Crossplane Resource Definitions, Compositions, and Claims in order to create your resources for your serverless application.\n\n- [Test](\u002Fcontent\u002Fguides\u002Fserverless-crossplane-on-eks\u002Ftesting) (5 mins): Send a message to your newly created SQS queue and observe it triggering your Lambda function and publishing the result in your S3 bucket.\n\n- [Clean up resources](\u002Fcontent\u002Fguides\u002Fserverless-crossplane-on-eks\u002Fcleanup) (5 mins): In this last part of the guide you learn how to clean after you are done.\n",[14],"content\u002Fcontributors\u002Fdavid-boyne.json","LIST","Deploy a Serverless Application using Crossplane on EKS","\u002Fcontent\u002Fguides\u002Fserverless-crossplane-on-eks\u002Fintroduction","2 min",[20,27],{"title":21,"content":22},"Introduction",[23],{"title":6,"order":7,"learningGoals":24,"time":18,"path":25,"id":26,"link":17},[9,10,11],"introduction","introduction.md",{"title":28,"content":29},"Modules",[30,39,48,57],{"title":31,"order":32,"learningGoals":33,"time":18,"path":36,"id":37,"link":38},"1. Build a docker image and push to ECR",2,[34,35],"Building a Docker image from a given application","Creating an ECR repo and uploading an image to it using the AWS CLI","docker-image","docker-image.md","\u002Fcontent\u002Fguides\u002Fserverless-crossplane-on-eks\u002Fdocker-image",{"title":40,"order":32,"learningGoals":41,"time":44,"path":45,"id":46,"link":47},"2. Deploy the serverless application",[42,43],"Deploying Crossplane XRDs and Compositions","Deploying a Claim to create serverless application","3 min","deployment","deployment.md","\u002Fcontent\u002Fguides\u002Fserverless-crossplane-on-eks\u002Fdeployment",{"title":49,"order":32,"learningGoals":50,"time":53,"path":54,"id":55,"link":56},"3. Test",[51,52],"Pushing messages to SQS using the AWS CLI.","Exploring the AWS SQS, Lambda, and S3 consoles.","1 min","testing","testing.md","\u002Fcontent\u002Fguides\u002Fserverless-crossplane-on-eks\u002Ftesting",{"title":58,"order":32,"learningGoals":59,"time":53,"path":62,"id":63,"link":64},"4. Clean up resources",[60,61],"How to remove Crossplane resources","How to destroy EKS cluster if created using the GitHub repository.","cleanup","cleanup.md","\u002Fcontent\u002Fguides\u002Fserverless-crossplane-on-eks\u002Fcleanup",null,1792665265120]