GithubHelp home page GithubHelp logo

shotaromatsuya / minecraft-server-automation Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 0.0 102.64 MB

Building minecraft server on ecs fargate via terraform

HCL 75.72% Dockerfile 2.11% Lua 0.83% Shell 12.02% Python 9.31%
docker ecs-fargate minecraft-server terraform tflint tfsec fluentbit

minecraft-server-automation's People

Contributors

renovate[bot] avatar shotaromatsuya avatar

Stargazers

 avatar

Watchers

 avatar  avatar

minecraft-server-automation's Issues

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Repository problems

These problems occurred while renovating this repository. View logs.

  • WARN: Use matchDepNames instead of matchPackageNames
  • WARN: Invalid hashicorp constraint

Rate-Limited

These updates are currently rate-limited. Click on a checkbox below to force their creation now.

  • chore(deps): update actions/checkout digest to 692973e
  • chore(deps): update secretlint monorepo to v8.2.4 (@secretlint/secretlint-rule-preset-recommend, secretlint)
  • 🔐 Create all rate-limited PRs at once 🔐

Edited/Blocked

These updates have been manually edited so Renovate will no longer make changes. To discard all commits and start over, click on a checkbox.

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

docker-compose
docker-compose.yml
dockerfile
docker/fluentbit/Dockerfile
  • amazon/aws-for-fluent-bit sha256:f89e4ab5ef51eead950717b99932414ffb1ca01aeb18084ec4314f9c32382b64
docker/fluentbit/Dockerfile.local
  • amazon/aws-for-fluent-bit sha256:f89e4ab5ef51eead950717b99932414ffb1ca01aeb18084ec4314f9c32382b64
docker/minecraft/Dockerfile
  • itzg/minecraft-server sha256:9d3d3d2bf46c7dcbb31001078407b4555f7759869f3d35eda4cfe36d660899ce
docker/minecraft/Dockerfile.local
  • itzg/minecraft-server sha256:9d3d3d2bf46c7dcbb31001078407b4555f7759869f3d35eda4cfe36d660899ce
docker/minecraft/Dockerfile.restore
  • itzg/minecraft-server sha256:9d3d3d2bf46c7dcbb31001078407b4555f7759869f3d35eda4cfe36d660899ce
github-actions
.github/workflows/action_lint.yml
  • actions/checkout v4
.github/workflows/apply.yml
  • actions/checkout v4
  • aws-actions/configure-aws-credentials v4
  • hashicorp/setup-terraform v3
.github/workflows/auto-approve.yml
  • hmarr/auto-approve-action v3
.github/workflows/auto-assign-author.yml
  • technote-space/assign-author v1
.github/workflows/backup.yml
  • actions/checkout v4
  • aws-actions/configure-aws-credentials v4
.github/workflows/build_image.yml
  • actions/checkout v4
  • aws-actions/configure-aws-credentials v4
  • actions/setup-go v5
  • docker/setup-buildx-action v3
  • technote-space/get-diff-action v6.1.2
  • actions/github-script v7
  • aws-actions/amazon-ecr-login v2
.github/workflows/drift.yml
  • actions/checkout v4
  • aws-actions/configure-aws-credentials v4
  • hashicorp/setup-terraform v3
  • rtCamp/action-slack-notify v2
  • rtCamp/action-slack-notify v2
.github/workflows/release-drafter.yml
  • release-drafter/release-drafter v5
.github/workflows/release-to-branch.yml
  • actions/checkout v4@b4ffde65f46336ab88eb53be808477a3936bae11
.github/workflows/retore-and-set-recoverypoint.yml
  • actions/checkout v4
  • aws-actions/configure-aws-credentials v4
  • hashicorp/setup-terraform v3
  • rtCamp/action-slack-notify v2
  • rtCamp/action-slack-notify v2
.github/workflows/schedule_job.yml
  • actions/checkout v4
  • aws-actions/configure-aws-credentials v4
  • hashicorp/setup-terraform v3
  • rtCamp/action-slack-notify v2
  • rtCamp/action-slack-notify v2
.github/workflows/secret_lint.yml
  • actions/checkout v4
  • actions/setup-node v4
.github/workflows/terraform_ci.yml
  • actions/checkout v4
  • technote-space/get-diff-action v6.1.2
  • aws-actions/configure-aws-credentials v4
  • hashicorp/setup-terraform v3
  • actions/github-script v7
  • actions/github-script v7
  • actions/github-script v7.0.1
  • aquasecurity/tfsec-pr-commenter-action v1.3.1
  • aquasecurity/tfsec-sarif-action v0.1.4
  • github/codeql-action v3
  • actions/github-script v7
jenkins
docker/minecraft/plugins.txt
npm
package.json
  • @secretlint/secretlint-rule-preset-recommend ^8.0.0
  • secretlint ^8.0.0
pip_requirements
terraform/modules/slash_command/fixtures/python3.9/requirements.txt
  • urllib3 <2
terraform
terraform/keeping/main.tf
terraform/keeping/versions.tf
  • aws 5.41.0
  • null 3.2.2
  • hashicorp/terraform ~> 1.2
terraform/modules/chatbot/chatbot.tf
  • waveaccounting/chatbot-slack-configuration/aws 1.1.0
terraform/modules/lambda/lambda.tf
  • terraform-aws-modules/lambda/aws 6.5.0
terraform/modules/nlb/nlb.tf
  • terraform-aws-modules/alb/aws 8.7.0
terraform/modules/slash_command/lambda.tf
  • terraform-aws-modules/lambda/aws 6.5.0
terraform/modules/vpc/security_group.tf
  • terraform-aws-modules/security-group/aws 5.1.0
  • terraform-aws-modules/security-group/aws 5.1.0
terraform/modules/vpc/vpc.tf
  • terraform-aws-modules/vpc/aws 5.5.2
terraform/scheduling/main.tf
terraform/scheduling/versions.tf
  • aws 5.41.0
  • null 3.2.2
  • hashicorp/terraform ~> 1.2

  • Check this box to trigger a request for Renovate to run again on this repository

EFSのassume roleの修正

バックアップジョブがfailしていたので権限の修正が必要と思われる
ログ詳細
assumed-role/AWSServiceRoleForBackup/AWSBackup-AWSServiceRoleForBackup is not authorized to perform: elasticfilesystem:DescribeTags on the specified resource

リソースの仕分け

persistするリソースとrecreateするリソースを分離し、それぞれ別のstateで管理する

EventiBrdigeからCodeBuildを呼び出す

cron式でeventbridegeトリガーを定義し、codebuildプロジェクトを呼び出す
codebuildプロジェクトでは、ecs task definitionの更新やs3バケットへのworld dataのバックアップ、リストアjobを定義する (terraformコマンドを実行する)
アーティファクト用s3とecrレジストリはterraformの管理下には含めない(誤ってdestoryされないようにするため予め手動作成する)

Dockerfileビルドとプッシュのプロセスを自動化したい

現状Dockerfileのbuildは手動で行われており、ベースイメージがローカルのキャッシュを使っている場合もあり、最新であることが保証されていない。CIの中にdockerfileイメージpushのプロセスを追加し、ベースイメージを最新に保つ必要がある。

Backup処理をEFSからS3へ

コストの観点からEFSを使うのではなく、Cluster起動時にS3から最新のbackupをrestoreし、Cluster停止時に現在のworldデータをbackupする機構に変更し、EFSを使わない方針にした

ECS リソースの要件調査

新ワールド作成時1人検証で、1vCPUコアを軽く使い果たしているので、既存ワールドで複数人の使用を検討すると2倍以上のスペックは必要そう
既存ワールドを構築しベンチマーク取ってみる

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.