Live data from Hacker News

AWS Copilot

aws.amazon.com

31–40 of 97 posts

Re: AWS Copilot

#31

Hi!! I’m a developer on AWS Copilot! We’d love your feedback! Homebrew: brew install aws/tap/copilot-cli Docs: https://aws.github.io/copilot-cli/ Feedback & Requests: https://github.com/aws/copilot-cli/issues/new

We currently use Beanstalk, which seems to share a bit with this - in terms of offering a CLI they abstracts a lot of AWS specifics, deploying to ECS, the application/environment split, the deploy command fitting in a CD pipeline. Can you share a bit about how your team thinks about Beanstalk and this? We’re quite unhappy with Beanstalk from the perspective of trying to define it with Cloudformation for reproducibility and I’ve been unsure what we should be looking at next.

Re: AWS Copilot

#32
post #2

This really seems like it could be a future replacement for Elastic Beanstalk. Especially when they finalize the ability to provision storage infrastructure.

Hopefully. Elastic Beanstalk is a product that "works" and is "maintained", but when it fails it crashes hard. At least for the PHP environment, updating the environment variable configuration can take 2+ minutes, and non-immutable app deployments with 2 hosts can take over 10 minutes to pass health checks. And finally, if it fails to do something (eg. a deploy command fails on the instance), it will be stuck in the…

Amen I thought I was just doing something wrong! What is the best alternative to Elastic Beanstalk on AWS? Is Kubernetes overkill?

Re: AWS Copilot

#33

Earlier quoted context omitted.

Copilot can also help set up HTTPS/ACM Certs/Subdomains: https://github.com/aws/copilot-cli/wiki/Applications#additio... I love the cloudrun style service too - but one thing I think is cool about running on ECS/Fargate is that once you outgrow the constraints of CloudRun style services - you can drop down to the more granular infrastructure to make tweaks and adjustments. Just my 2c :)

> Copilot can also help set up HTTPS/ACM Certs/Subdomains Oh yeah for sure! I was really excited about this for that reason when I found it because of recent Fargate pains. The irrational part of me just wishes that the "magic" from tools that AWS publishes like Copilot, Cloud Development Kit, Fargate CLI, etc could abstract it away in more of my interactions with AWS ;^) > once you outgrow the constraints of CloudRu…

> Don't interact with provisioning/managing infra raw, use the CDK or other tooling you publish haha.

I've moved pretty much all my sandbox exploration to CDK. A one-shot destroy when I'm done to clean everything up is great. I also appreciate the documented types in Typescript. But beyond that, I've found that there's really no easy way to manage permissions manually. Doing ` bucket.grantRead(service.taskDefinition.taskRole);` is so much simpler than any of the policy generators in the aws console.

Re: AWS Copilot

#34
post #6

I happened to catch this on the Github daily trending list a week or so back, really cool. For similar tools (though this one is ECS + Fargate), also see: https://somanymachines.com/fargate https://github.com/awslabs/fargatecli I'm pretty particular to Pulumi, and defining infra in typed programming languages with full IDE tooling. AWS CDK is the AWS-centric equivalent, and that's a great and under-represented tool a…

I believe it's possible to write the ECS task definition as a JSON file, include environment variables, commit it to a repo, then use AWS CodeDeploy/CodePipeline to update ECS with a new task revision whenever the repo changes...

...which kinda proves your point. This stuff is not well documented and it's ever more complexity.

Re: AWS Copilot

#35
post #6

I happened to catch this on the Github daily trending list a week or so back, really cool. For similar tools (though this one is ECS + Fargate), also see: https://somanymachines.com/fargate https://github.com/awslabs/fargatecli I'm pretty particular to Pulumi, and defining infra in typed programming languages with full IDE tooling. AWS CDK is the AWS-centric equivalent, and that's a great and under-represented tool a…

Initial infrastructure setup may take a few extra steps but what really disappoints me about the Fargate platform is lack of inspection capability.

Quite often I want to strace, tcpdump, etc. Cloudwatch logs is a little anemic. Want to see an adjacent line in a log search? Good luck.

Re: AWS Copilot

#36
Not directly related to copilot but in context of ever increasing yml/json configurations for cloud apps, am I the only one who feels overwhelmed with the configuration options? I see tons of articles with just drop this json here and that yml there and run this cli command - where is the reference for these json/ymls? Does everyone fully know/understands the structure/options? How do people keep track of the changes to that between upgrades? I feel increasingly dumb the more I see these configs.

Re: AWS Copilot

#38
post #6

I happened to catch this on the Github daily trending list a week or so back, really cool. For similar tools (though this one is ECS + Fargate), also see: https://somanymachines.com/fargate https://github.com/awslabs/fargatecli I'm pretty particular to Pulumi, and defining infra in typed programming languages with full IDE tooling. AWS CDK is the AWS-centric equivalent, and that's a great and under-represented tool a…

It's nice that AWS services tend to do one thing.

But it does sometimes mean that there's always just one more AWS service you need. One more service with a different web console UI, varied support in the different infrastructure tools... and now we have another one of those.

All I seem to do these days is AWS infrastructure, sometimes as code. I'm not sure one more new tool is going to improve that.

Re: AWS Copilot

#39

Not directly related to copilot but in context of ever increasing yml/json configurations for cloud apps, am I the only one who feels overwhelmed with the configuration options? I see tons of articles with just drop this json here and that yml there and run this cli command - where is the reference for these json/ymls? Does everyone fully know/understands the structure/options? How do people keep track of the changes…

There's definitely room for config-viewer plugins in VSCode, Sublime, etc. to help write and maintain the 100's of config files we have to be knowledgeable about in DevOps these days.

Does anyone have good suggestions in this space? Or do I just have to google docs and reference documentation when I need to figure out what the hell all these parameters mean?

Re: AWS Copilot

#40
having tried everything from convox to fargatecli, deployfish ,etc. in the end i just ended up using pulumi to set up the basic infrastructure components and writing my own bash scripts to deploy tasks and services to ECS using the AWS cli.

there was way too much magic going on and i wasn't confident i could easily roll back or do modifications if the CLI didn't like something in particular. deployments based on terraform or cloudformation were particular susceptible to this.

Post reply on HN