Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Develop MCP OU Structure, Cost Monitoring, and Cost Management Policies #15

Closed
jordanpadams opened this issue Mar 4, 2024 · 4 comments
Assignees
Labels
B15.0 Epic i&t.skip Skip I&T of this task/ticket theme

Comments

@jordanpadams
Copy link
Member

jordanpadams commented Mar 4, 2024

💡 Description

We need to detail out what our future OU structure will be and the cost monitoring policies surrounding that.

⚔️ Sub-tasks

Other TBD tickets

  • OU Structure
  • Individual application cost modeling requirements
  • Cost modeling roll-up to overall PDS cost model
  • Cost monitoring alerts
  • Application cost tagging data model
@jordanpadams jordanpadams added B15.0 task i&t.skip Skip I&T of this task/ticket Epic theme and removed task labels Mar 4, 2024
@jordanpadams jordanpadams transferred this issue from NASA-PDS/planetary-data-cloud Mar 4, 2024
@jordanpadams jordanpadams changed the title Develop MCP OU Structure and Cost Monitoring Policies Develop MCP OU Structure, Cost Monitoring, and Cost Management Policies Apr 26, 2024
@jordanpadams jordanpadams removed this from B15.0 Apr 29, 2024
@github-project-automation github-project-automation bot moved this to Release Backlog in B15.0 Apr 29, 2024
@jordanpadams
Copy link
Member Author

📆 05/2024 status: In work. On schedule

@jordanpadams jordanpadams moved this from Release Backlog to In Progress in B15.0 Jun 1, 2024
@jordanpadams
Copy link
Member Author

jordanpadams commented Jun 21, 2024

Some discussions about how to manage budget with MWAA and different AWS accounts:

Our original plan was each Node gets there own OU Project in MCP to clearly track their budget, but then we realized if we do that, there are going to be a few wrinkles we will need to work out for our Core Data Services (e.g. Nucleus) that will be deployed within our account:

  • We will need to be able to track processing costs, by DAG, in order to trace it to a each node
  • Would it be possible for the staging buckets, archiving buckets, and EFS to be in a separate account?

  1. We have not tested triggering a MWAA DAG from another AWS account. But if the MWAA is public, it seems it is possible to do so (https://docs.aws.amazon.com/mwaa/latest/userguide/samples-invoke-dag.html ). But I have to test this.
  2. We can have staging buckets, archiving buckets, and EFS to be in separate accounts if number 1 point above is feasible.
  3. ECS tasks should be executed in the same account that we have MWAA. However, we will not easily find which task execution was done by which PDS Node (unless we track it through task execution IDs). We will be able to find Harvest executions, since we have different harvest ECS Task per Node.
  4. If we have all DAGs in one MWAA, we will not have a DAG wise breakdown of costs. But we will be able to come up with a way to do so by,
  • Assigning a weight for each ECS task.
  • Deriving a weight for each DAG execution based on sum of ECS tasks weights.
  • Then dividing the monthly cost for PDS Nodes based on DAG execution counts and weight for each DAG execution.

If we do decided to go the separate account route, we'll need new IAM cross-account policies.


for #3, could we have a lambda in the account where MWAA will be deployed that gets triggered by an event in the ECS account? I think the event could be setup using eventbridge, the function then can read the task execution ID and fetch any relevant logs to update the workflows. The logs would be in S3.


@jordanpadams
Copy link
Member Author

📆 06/2024 status: In work. On schedule

@jordanpadams
Copy link
Member Author

jordanpadams commented Aug 9, 2024

closing for now. NASA-PDS/planetary-data-cloud#80 is still open but that is a separate theme.

@viviant100 can we make sure we have a wiki page on the Atlassian wiki start re:Cost Monitoring and add some documentation for how to create a budget reporting email and/or other cost triggers? It can just be a reference to AWS documentation and/or MCP documentation if they exist somewhere. It is just good for us to start documenting everything tenants may need in the future.

@github-project-automation github-project-automation bot moved this from In Progress to 🏁 Done in B15.0 Aug 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
B15.0 Epic i&t.skip Skip I&T of this task/ticket theme
Projects
No open projects
Status: 🏁 Done
Development

No branches or pull requests

2 participants