All Projects → superwerker → Superwerker

superwerker / Superwerker

Licence: mit
Open-source solution to automate the setup of an AWS Cloud environment with prescriptive best practices.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Superwerker

Aws Serverless Data Lake Framework
Enterprise-grade, production-hardened, serverless data lake on AWS
Stars: ✭ 179 (+11.18%)
Mutual labels:  aws, best-practices
Cloud Reports
Scans your AWS cloud resources and generates reports. Check out free hosted version:
Stars: ✭ 255 (+58.39%)
Mutual labels:  aws, best-practices
Org Formation Cli
Better than landingzones!
Stars: ✭ 471 (+192.55%)
Mutual labels:  aws, best-practices
Aws Amplify Workshop React
Building Serverless React Applications with AWS Amplify
Stars: ✭ 155 (-3.73%)
Mutual labels:  aws
Java Specialagent
Automatic instrumentation for 3rd-party libraries in Java applications with OpenTracing.
Stars: ✭ 156 (-3.11%)
Mutual labels:  aws
Aws Serverless Cicd Workshop
Learn how to build a CI/CD pipeline for SAM-based applications
Stars: ✭ 158 (-1.86%)
Mutual labels:  aws
Aws Serverless Appsync App
This workshop shows you how to build a Web Application that demonstrates how easy it is to create data driven web applications all with no servers. You will build a serverless web application that lets users search for popular tourist destinations. The application will use AWS AppSync and the AWS Serverless platform to provide real-time weather analysis of the indexed destinations.
Stars: ✭ 162 (+0.62%)
Mutual labels:  aws
Kube Secret Syncer
A Kubernetes operator to sync secrets from AWS Secrets Manager
Stars: ✭ 154 (-4.35%)
Mutual labels:  aws
Terraform Aws Devops
Info about many of my Terraform, AWS, and DevOps projects.
Stars: ✭ 159 (-1.24%)
Mutual labels:  aws
Justsaying
A light-weight message bus on top of AWS services (SNS and SQS).
Stars: ✭ 157 (-2.48%)
Mutual labels:  aws
Webfundamentals
Best practices for modern web development
Stars: ✭ 12,335 (+7561.49%)
Mutual labels:  best-practices
Clean Code Java
Clean Code concepts adapted for Java. Based on @ryanmcdermott repository.
Stars: ✭ 155 (-3.73%)
Mutual labels:  best-practices
Aws Step Functions Data Science Sdk Python
Step Functions Data Science SDK for building machine learning (ML) workflows and pipelines on AWS
Stars: ✭ 158 (-1.86%)
Mutual labels:  aws
Php Conventions
Рекомендации по написанию PHP кода
Stars: ✭ 156 (-3.11%)
Mutual labels:  best-practices
Okta Awscli
Provides Okta authentication for awscli
Stars: ✭ 161 (+0%)
Mutual labels:  aws
Deep Learning Containers
AWS Deep Learning Containers (DLCs) are a set of Docker images for training and serving models in TensorFlow, TensorFlow 2, PyTorch, and MXNet.
Stars: ✭ 152 (-5.59%)
Mutual labels:  aws
Certbot Route53
Helping create Let's Encrypt certificates for AWS Route53
Stars: ✭ 159 (-1.24%)
Mutual labels:  aws
Tensorflowkr 2017 Talk Bestpractice
💬 Slides and Tutorial Codes for the talk 'Toward Best Practices of TensorFlow Code Patterns' (2017)
Stars: ✭ 157 (-2.48%)
Mutual labels:  best-practices
Domain Driven Hexagon
Guide on Domain-Driven Design, software architecture, design patterns, best practices etc.
Stars: ✭ 4,417 (+2643.48%)
Mutual labels:  best-practices
Cartoonify
Deploy and scale serverless machine learning app - in 4 steps.
Stars: ✭ 157 (-2.48%)
Mutual labels:  aws

superwerker - automated best practices for AWS

The superwerker open source solution by AWS Advanced Partners kreuzwerker and superluminar automates the setup of an AWS Cloud environment with prescriptive best practices. It enables startups and SMBs to focus on their core business - by saving setup and maintenance time and money.

superwerker

Project state / Roadmap

This project is currently under heavy development. We are currently completing the 1.0 milestone and working towards 1.1.

Quick install

You can install the current main branch via CloudFormation in the following AWS regions:

Installation Next steps
🇪🇺 eu-west-1 Documentation / next steps
🇪🇺 eu-central-1 Documentation / next steps
🇪🇺 eu-north-1 Documentation / next steps
🇬🇧 eu-west-2 Documentation / next steps
🇨🇦 ca-central-1 Documentation / next steps
🇺🇸 us-east-1 Documentation / next steps
🇺🇸 us-east-2 Documentation / next steps
🇺🇸 us-west-2 Documentation / next steps
🇸🇬 ap-southeast-1 Documentation / next steps
🇦🇺 ap-southeast-2 Documentation / next steps

Installation video

Installation in a nutshell

What's included in the setup?

In the initial release, superwerker configures the following AWS services and features in a fully automated way:

  • AWS Control Tower and AWS Single Sign-On as the basis for a future-proof multi-account setup
  • Amazon GuardDuty for automatic detection of possible threats breaches
  • AWS Security Hub to ensure established security standards
  • AWS Backup for automated creation of backups
  • Budget alarms for cost control
  • Service control policies to protect the infrastructure from intentional or unintentional mistakes, e.g. deny use of non allowed AWS regions, deletion of backup copies, deactivation of security features
  • AWS Systems Manager OpsCenter/Items notification aggregation and incident response handling
  • Secure mailboxes and service catalogue aliases for all root accounts
  • Feature flippers to gradually opt into functionality
  • A dashboard with more information and deep-links to resources, e.g. setting up SSO with existing identity providers, GuardDuty/Security Hub dashboards, AWS account setup

Say what again? (the non-technical what's included)

AWS provides all the building blocks. superwerker adds the wiring and "how to" so you can start right ahead with a well-architected AWS foundation:

  • Manage multiple AWS accounts and perform access management
  • Sign in to your AWS accounts with your existing login provider (usually your email infrastructure provider, e.g. Office 365 or Google Workspace)
  • Security built-in:
    • Protect superuser ("root") access to your AWS accounts
    • Scanning for best practise violations and active threats against your infrastructure
    • Backups enabled for all database and file systems
  • Billing best practices built-in:
    • Automatic cost control and budget alarms
    • Prevents your from using inappropriate AWS regions
  • Low total cost of ownership: native and maintenance-free AWS service are used (no third-party tooling required)
  • Notification centre: aggregates notifications from several services in a single place
  • Gradual roll-out: features can be enabled/disabled individually
  • Living quickstart dashboard with status overview (which features are active?) and actionable links to e.g. the notification center, or your security findings

Help & Feedback

FAQ

Should I use superwerker?

superwerker is ideal for quickly getting started with the AWS Cloud with preconceived decisions based on years of experience. Start-ups and small to medium-sized companies, where time-to-market and financial aspects play an especially important role, can benefit in particular.

As a rule of thumb: if you have no dedicated AWS team or cloud centre of excellence in-house, you should use superwerker.

But also large companies can use superwerker as a basis. Since superwerker is open source, it can also be tailored to individual needs.

What does superwerker cost?

superwerker itself is free and open source under an MIT licence. Costs may be incurred by the AWS services you set up. Smaller set-ups and test set-ups cost less than $10/month.

You can find more information about the costs on the detailed pricing pages for the services used, e.g. Control Tower, Security Hub, GuardDuty, AWS Backup

How do I install superwerker?

superwerker uses the proven infrastructure-as-code service AWS CloudFormation for installation. Here installation can be launched with a click.

Can I activate and deactivate the features of superwerker individually?

superwerker features can be activated individually. This enables a gradual roll-out and also facilitates installation into an existing AWS set-up.

How do I receive updates?

We plan to roll-out releases via GitHub releases. The update is then deployed via the current CloudFormation template.

Can I use superwerker for existing AWS set-ups?

superwerker is primarily designed for new AWS set-ups and can be used if AWS Control Tower is available in the respective region or was previously installed. superwerker will then try to set up services including Security Hub and GuardDuty. Depending on whether you already have them, you may need to clear the set-up accordingly beforehand.

Which regions is superwerker available in?

Since superwerker uses AWS Control Tower as a basis, it is available in all regions where Control Tower is supported.

What is the difference compared to Control Tower/Landing Zone?

AWS Control Tower and Landing Zone also use AWS fundamentally, but leave a lot of free scope. Building on AWS Control Tower, superwerker provides further guide rails and facilitates a quick-start with AWS even further.

What is the difference compared to AWS Proton, AWS Amplify or AWS Copilot, for example?

AWS Proton, Amplify, and Copilot are tools for developing workloads. superwerker provides a secure AWS foundation in which these tools can be used.

How can I expand superwerker?

superwerker deliberately offers few parameters for adjustment. It has been designed to coexist with solutions like AWS Control Tower (+ Customizations) or with CloudFormation StackSets. These can be used to customise the AWS set-up.

If I no longer want to use superwerker, will my AWS set-up stop working?

superwerker uses AWS CloudFormation for installation and updates. If the CloudFormation stack is deleted, the superwerker templates will also be deleted. This can negatively affect the running AWS set-up.

How does superwerker differ from the Well-Architected Framework?

It’s complementary. You can consider superwerker a “well set-up”. At the same time, the underlying design decisions take into account the pillars of WAF. superwerker pushes the workloads into the Well-Architected direction using certain guardrails.

Do you have access to our AWS account?

No, superwerker runs exclusively in your AWS account and does not communicate with the internet.

What happens if AWS offers features of superwerker itself?

superwerker always aims to build on AWS services and features. If a superwerker feature becomes obsolete because AWS releases it as a service or feature itself, we will adapt superwerker.

Can using superwerker break existing workloads?

Some of the infrastructure that superwerker sets up carries out changes to existing set-ups, for example Control Tower and Service Control Policies, which restrict services and regions. For this reason, we cannot rule out the possibility of impacting existing workloads. We will be happy to help you when evaluating this issue.

Can superwerker also handle network/VPC and workloads?

superwerker is initially specialised in a basic AWS set-up. An extension to best practices in the network and workload area is planned. Please send us feedback/feature requests in our GitHub repository.

Design decisions

Forward compability and adoption

As soon as AWS releases a feature/service which makes parts of superwerker obsolete, we will adopt. In an ideal world this project would not have to exist.

Low total cost of ownership

  • use native AWS services when possible
  • use functionless / managed runtimes when possible
  • whenever the cost of a service or option (e.g. logging to S3 as opposed to logging to CloudWatch Logs) is negligible it will be added without opt-out

Preferred services: CloudFormation, Systems Manager Parameter Store / Automation, Lambda, CodePipeline / Build

Tested code

All features need to have tests. We prefer integration tests which tests the correct end state. This usually results in the use of real AWS APIs for tests and no mocks.

Idempotent and convergent

All code has to be idempotent so we ensure that tasks can be re-run without breaking and without changing the result. All code has to be convergent so we ensure that tasks which have been interrupted formerly can re-run and converge to the final state.

Event-driven

We use CloudWatch Events where possible in order to decouple architecture. We acknowledge this decision makes end-to-end testing harder sometimes.

Thanks

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].