Backstage Templates with Terraform to create an EKS cluster and deploy a Node.js app

  Рет қаралды 6,884

TeKanAid

TeKanAid

Күн бұрын

Пікірлер: 44
@ReneeLv-xe2fq
@ReneeLv-xe2fq 5 ай бұрын
Hi Sam, thanks so much. What backstage terraform plugin do you use in this demo? It really helpful.
@TeKanAid
@TeKanAid 5 ай бұрын
Thank you, I’m using Terraform modules for AWS like the EKS one and Backstage is just calling a GitHub action to build everything. You can find more info in the blog post: tekanaid.com/posts/backstage-software-templates
@mophez
@mophez 6 ай бұрын
thanks, great video. But where is the part where you deploy Node JS app on k8? i can only see from tutorial that you are dumping NodeJS files in user-defined repo, then running a terraform pipeline. When and where do you deploy the app on top?
@TeKanAid
@TeKanAid 6 ай бұрын
I think I missed that part but I created a two-part series that go into this in more detail. The second part deploys a go API on kubernetes with Argo CD all with backstage as the portal. Here are the two videos. kzbin.info/www/bejne/n3WynJqsr5dqn68 kzbin.info/www/bejne/epCWomd-mqarpposi=VGdkeMgG1S5h-_Z7
@geethareddy2213
@geethareddy2213 7 ай бұрын
@TeKanAid : Require you help as Iam facing below issue in terraform. I am building windows VM in vmware using Terraform . Issue 1: Sometimes my VM is taking time to boot and during that it is skipping the domain joining customization process. Is there any way to hold the customization process untill the VM boots up completely. Issue 2 : I want to move my VM to specific OU in AD after build
@TeKanAid
@TeKanAid 7 ай бұрын
here's a decent answer from ChatGPT, although I don't prefer using provisioners in terraform and rather use a configuration manager tool like ansible For Issue 1: If your VM is taking time to boot and it’s skipping the domain joining process because of that, you might want to add a delay or check within your Terraform configuration. One way to handle this is by using a provisioner that can pause until the VM is fully booted. Here’s a basic example using a remote-exec provisioner that simply waits before proceeding: resource "vsphere_virtual_machine" "vm" { # your existing config provisioner "remote-exec" { inline = [ "while ! timeout 30 ping -c 1 -n YOUR_VM_IP; do sleep 10; done" ] } } This snippet tries to ping the VM until it's responsive, ensuring it's up before moving forward. You might need to tweak the timeout and sleep values based on your environment's specifics. For Issue 2: To move your VM to a specific Organizational Unit (OU) in Active Directory, you’ll need to script this out as part of your deployment process, either through initial provisioning with Terraform using a remote-exec provisioner or through a configuration management tool like Ansible, which you might be using. Here’s a pseudo way to do it using PowerShell that you can call via remote-exec provisioner "remote-exec" { inline = [ "powershell.exe -Command \"Add-Computer -DomainName 'yourdomain.com' -OUPath 'OU=YourOU,DC=yourdomain,DC=com'\"" ] } This PowerShell command adds the computer to the domain and specifies the OU during the join process. Make sure the account used has permissions to join computers to the domain and move them in AD.
@yogithakakarla1716
@yogithakakarla1716 7 ай бұрын
After deploying eks cluster, how do we get cluster details as output . Like how we get in terraform
@TeKanAid
@TeKanAid 7 ай бұрын
This is something I'm thinking about at the moment. It probably would be a good idea to store that in a Secrets management tool such as akeyless or hashicorp vault. I think we would need to create a backstage plug-in that listens to a job that is completed. It needs to give some feedback to the operator in the front end. Currently I'm integrating GitHub actions as part of the cicd section in backstage so you could monitor the progress there.
@tomasferrari92
@tomasferrari92 9 ай бұрын
Hey Sam, thank you for the great tutorial! One question. Where can I find the template.yaml you use in the video? I can't seem to find it in the samgabrail/backstage repo
@TeKanAid
@TeKanAid 9 ай бұрын
Hi Tomas, you'll find it in this folder my-backstage-app/packages/backend/templates/eks-cluster
@miraccan00
@miraccan00 6 ай бұрын
@@TeKanAid you could send link directly lol :D
@parthbhargava-0703
@parthbhargava-0703 10 ай бұрын
Where did you provide aws details ? (ami) where EKS is going to be made?
@TeKanAid
@TeKanAid 10 ай бұрын
They were not exposed to the developer. The platform engineer has the option to do that depending on company policies. You see more variable details in the Terraform configuration
@parthbhargava-0703
@parthbhargava-0703 10 ай бұрын
There is a issue "not found" when triggerring github action . Please help me through the process
@TeKanAid
@TeKanAid 10 ай бұрын
it typically means there's a misconfiguration or a missing piece in your setup. Did you follow the video? Here's a step-by-step guide to troubleshoot this: Check Your Workflow File: First, make sure your .github/workflows directory contains the correct workflow file (usually a .yml or .yaml file). Ensure the file name and path are correct. YAML Syntax: YAML can be finicky. Double-check for syntax errors like incorrect indentation, missing colons, or typos. YAML linters can help with this. Repository Settings: Verify that GitHub Actions is enabled in your repository settings. Sometimes it’s disabled by default, especially in forked repositories. Action Versions: If you're using third-party actions in your workflow, ensure that you're pointing to a valid version of these actions. Sometimes, if an action is outdated or the version number is wrong, it can cause issues. Branch Names: If your workflow is triggered on push or pull requests, ensure the branch names in the workflow file match the actual branches in your repo. Secrets and Environment Variables: If your workflow requires secrets (like API keys) or environment variables, make sure they are correctly set up in your repository settings. Permissions: Check if the GitHub token or any custom PAT (Personal Access Token) you are using has the necessary permissions. Dependencies: If your action relies on external scripts or packages, ensure they are accessible and not causing the "not found" error. Check GitHub Status: Sometimes the issue might be on GitHub's end. Check GitHub Status to see if there are any ongoing issues with GitHub Actions. Logs: Lastly, dive into the execution logs of the failed run. They can provide more specific clues as to what's going wrong.
@vinodsahi
@vinodsahi Жыл бұрын
Good One.. I am facing this error Error: Apply not allowed for workspaces with a VCS connection │ │ A workspace that is connected to a VCS requires the VCS-driven workflow to │ ensure that the VCS remains the single source of truth.
@TeKanAid
@TeKanAid Жыл бұрын
Thanks, you will need to use CLI driven workflow in your workspace.
@vinodsahi
@vinodsahi 11 ай бұрын
@@TeKanAid I have tested the destroy action also ..it works like a champ.. thanks a lot
@vinodsahi
@vinodsahi 11 ай бұрын
Is nodeJs app will be deployed with this?
@TeKanAid
@TeKanAid 11 ай бұрын
It creates a repo with the node.js app and deploys an eks cluster. I didn't include the deployment manifest for the app on the eks cluster. But this should be pretty straightforward to implement. I may add it when I get some time. You can also add it to the github workflow to get it deployed on the cluster. The idea is to get an eks cluster ready for a developer to work with.
@parthbhargava-0703
@parthbhargava-0703 10 ай бұрын
I am facing the error while making the cluster "No matching integration configuration for host https, please check your integrations config" please help if possible
@TeKanAid
@TeKanAid 10 ай бұрын
It is very difficult to troubleshoot without some better context. Where did you get this error? in terraform? Did you follow all the instructions in the video? Where are you stuck?
@rishikakhajuria2802
@rishikakhajuria2802 4 ай бұрын
@TeKanAid i need to implement this is my backstage app but only the example node.js template is available and i cant see the Node.js app on AWS EKS cluster. can u tell me how to configure that and what am I missing..? and how to do this if i want to use GCPA instead...?
@TeKanAid
@TeKanAid 4 ай бұрын
In this video I actually don't deploy the node.js app. I recommend you watch this video which is part 2 of a two-part series where I show you how to deploy. kzbin.info/www/bejne/epCWomd-mqarppo
@karkenikhil
@karkenikhil Жыл бұрын
can you provide the module access which you are using in this video for testing @tekanaid
@TeKanAid
@TeKanAid Жыл бұрын
Just added it and here it is again github.com/samgabrail/terraform-aws-eks
@User-m3p2z
@User-m3p2z 3 ай бұрын
Hi @TeKanAid, Thank you for the awesome tutorial. Could you share the source code? I have already tried subscribing to your newsletter as indicated in the blog post, but I didn’t receive a confirmation email to complete the subscription. I would appreciate it if you could share the source code with me. Thank you so much!
@TeKanAid
@TeKanAid 3 ай бұрын
Hi, did you check your spam folder ?
@User-m3p2z
@User-m3p2z 3 ай бұрын
@@TeKanAid Hi, yes. I checked again and I didn't receive any email. I used my gmail.
@TeKanAid
@TeKanAid 3 ай бұрын
@@User-m3p2z ok pls send me an email to info@tekanaid.com and I'll send it to you
@User-m3p2z
@User-m3p2z 3 ай бұрын
@@TeKanAid Hi, I tried again using another email address, and it looks good now. However, I can't find the source code for the tutorial "Backstage Templates with Terraform to Create an EKS Cluster and Deploy a Node.js App." I can only see "Building an Internal Developer Platform with GitOps: Part 1 - Automating GKE Clusters." I hope you can also share the deployment of a Node.js app.
@User-m3p2z
@User-m3p2z 3 ай бұрын
@@TeKanAid Hi, thank you for your reply. I already sent you an email. Please check. 😊
@JoshuaC-w3m
@JoshuaC-w3m 9 ай бұрын
Can you put a video in tec docs please
@TeKanAid
@TeKanAid 9 ай бұрын
Yes i have it on my list, thank you for the suggestion
@Skkhan940
@Skkhan940 4 ай бұрын
i need you create my own back stage how create me please help me any one
@TeKanAid
@TeKanAid 4 ай бұрын
I recommend you watch this video and also part 2 of it. kzbin.info/www/bejne/n3WynJqsr5dqn68
@salmanshaik-s2k
@salmanshaik-s2k Жыл бұрын
Good job @tekanaid
@TeKanAid
@TeKanAid Жыл бұрын
Thank you!
@cdenneen
@cdenneen 11 ай бұрын
Creating a cluster per app seems a little inefficient. Would be nice to show platform engineering template to create clusters (not available to developers) and then create nodejs app component that you select a cluster from registered clusters. So platform engineers can self service creating clusters that register and then those clusters are available to developers to deploy their apps to. Bit of RBAC to hide EKS template from developers but expose to PE.
@TeKanAid
@TeKanAid 11 ай бұрын
Yes I completely agree. Great suggestion. I still need to investigate the kubernetes plugin. I want to see how much I can get away with not having to build my own plugins. I'll definitely keep this in mind for a future video. Thanks again for the suggestion.
Terraform for Platform Engineers
11:22
HashiCorp
Рет қаралды 4,2 М.
Quilt Challenge, No Skills, Just Luck#Funnyfamily #Partygames #Funny
00:32
Family Games Media
Рет қаралды 25 МЛН
The IMPOSSIBLE Puzzle..
00:55
Stokes Twins
Рет қаралды 191 МЛН
How Much Tape To Stop A Lamborghini?
00:15
MrBeast
Рет қаралды 247 МЛН
What is Backstage.io in 10 minutes | Backstage Introduction
9:12
Do NOT Learn Kubernetes Without Knowing These Concepts...
13:01
Travis Media
Рет қаралды 326 М.
Software Templates - Backstage with OrkoHunter
1:26:00
OrkoHunter
Рет қаралды 8 М.
Backstage.io - An Open Source Portal for Taming Developer Chaos
6:21
IBM Technology
Рет қаралды 13 М.
How We Migrated Over 1000 Services to Backstage Using GitOps and Survived to... - Shmaram & Mansoor
38:34
CNCF [Cloud Native Computing Foundation]
Рет қаралды 3,1 М.
Backstage Plugin Development: Tales from the Trenches | Debabrata Panigrahi
25:46
Kubernetes Community Days Bengaluru
Рет қаралды 392
Backstage Permissions Demo
18:54
Backstage Community
Рет қаралды 10 М.
Using templatefile in Terraform
21:43
Ned in the Cloud
Рет қаралды 13 М.
OpenTelemetry Course - Understand Software Performance
1:08:48
freeCodeCamp.org
Рет қаралды 256 М.
Quilt Challenge, No Skills, Just Luck#Funnyfamily #Partygames #Funny
00:32
Family Games Media
Рет қаралды 25 МЛН