AWS: MySQL running on ECS vs RDS Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30 pm US/Eastern) Come Celebrate our 10 Year Anniversary!Amazon RDS Pros/Cons of Multiple DBs per instanceAmazon RDS MySQL limitationsStatic IP on an AWS RDS Instance/ Opening port 3306 to DNS Endpoint?Is a single RDS instance acceptable for multi-geo locations?AWS RDS: random spikes in Freeable Memory and Swap UsageRunning a CodeDeploy hook on just one instance in a groupConnect an AWS Lambda function triggered by API Gateway to Aurora Serverless MySQL databaseHTTPS in applications running on Docker in EC2/ECSAutoscaling with Amazon ECS

What is ls Largest Number Formed by only moving two sticks in 508?

Why did Israel vote against lifting the American embargo on Cuba?

Is there a possibility to generate a list dynamically in Latex?

What helicopter has the most rotor blades?

Raising a bilingual kid. When should we introduce the majority language?

How to translate "red flag" into Spanish?

Is a self contained air-bullet cartridge feasible?

What is /etc/mtab in Linux?

France's Public Holidays' Puzzle

Why doesn't the university give past final exams' answers?

What is a 'Key' in computer science?

How to compute a Jacobian using polar coordinates?

Was there ever a LEGO store in Miami International Airport?

What's the difference between using dependency injection with a container and using a service locator?

When I export an AI 300x60 art board it saves with bigger dimensions

Writing a T-SQL stored procedure to receive 4 numbers and insert them into a table

My admission is revoked after accepting the admission offer

What is the ongoing value of the Kanban board to the developers as opposed to management

Co-worker works way more than he should

Why I cannot instantiate a class whose constructor is private in a friend class?

Eigenvalues of the Laplacian of the directed De Bruijn graph

false 'Security alert' from Google - every login generates mails from 'no-reply@accounts.google.com'

Has a Nobel Peace laureate ever been accused of war crimes?

What does the black goddess statue do and what is it?



AWS: MySQL running on ECS vs RDS



Announcing the arrival of Valued Associate #679: Cesar Manara
Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30 pm US/Eastern)
Come Celebrate our 10 Year Anniversary!Amazon RDS Pros/Cons of Multiple DBs per instanceAmazon RDS MySQL limitationsStatic IP on an AWS RDS Instance/ Opening port 3306 to DNS Endpoint?Is a single RDS instance acceptable for multi-geo locations?AWS RDS: random spikes in Freeable Memory and Swap UsageRunning a CodeDeploy hook on just one instance in a groupConnect an AWS Lambda function triggered by API Gateway to Aurora Serverless MySQL databaseHTTPS in applications running on Docker in EC2/ECSAutoscaling with Amazon ECS



.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;








2















I'm working on a project where we will be using ECS to run the API of each client, it will start with one but it will eventually grow. We will also need a database for each client and the Project Manager decided that we should have an instance of both API and MySQL for each client. It would be a lot more simple if we used multiple databases inside a MySQL instance but that is not the case.



I've looked at RDS and we can't really have multiple instances of a MySQL database inside an on-demand instance, which makes which leads to a single on-demand instance for each client. On the other hand, running each MySQL instance on a container (while integrating with EFS) in ECS does not feel safe and perhaps troublesome to run backups.



What would you advise me to do in this scenario? Thanks!










share|improve this question






















  • Project managers making technical decisions doesn't always work out well. You should explain the cost implications of this to him of having many instances. RDS reduces administration and increases reliability, though it is more expensive than running MySQL yourself. I run MySQL, Nginx, PHP on a t2.nano, it works fine for a lightly loaded system and costs basically nothing, but the smallest RDS instance is (from memory) $10 per month.

    – Tim
    Apr 17 at 9:10











  • The clients will be the ones paying for the expenses though, @Tim. I've already explained that to him and that's exactly why we thought about the ECS + EFS to run MySQL with persistent data, I'm just not sure if that's any good of an approach.

    – Tomás Fonseca
    Apr 17 at 9:18











  • My understanding is containers are generally ephemeral, so you can lose them any time, so the idea to use EFS sounds ok... the problem is EFS is fairly low performance which could handicap your applications. If you can do persistent containers and use EBS you'd be ok, but I'd keep very regular backups or exports to S3.

    – Tim
    Apr 17 at 20:06

















2















I'm working on a project where we will be using ECS to run the API of each client, it will start with one but it will eventually grow. We will also need a database for each client and the Project Manager decided that we should have an instance of both API and MySQL for each client. It would be a lot more simple if we used multiple databases inside a MySQL instance but that is not the case.



I've looked at RDS and we can't really have multiple instances of a MySQL database inside an on-demand instance, which makes which leads to a single on-demand instance for each client. On the other hand, running each MySQL instance on a container (while integrating with EFS) in ECS does not feel safe and perhaps troublesome to run backups.



What would you advise me to do in this scenario? Thanks!










share|improve this question






















  • Project managers making technical decisions doesn't always work out well. You should explain the cost implications of this to him of having many instances. RDS reduces administration and increases reliability, though it is more expensive than running MySQL yourself. I run MySQL, Nginx, PHP on a t2.nano, it works fine for a lightly loaded system and costs basically nothing, but the smallest RDS instance is (from memory) $10 per month.

    – Tim
    Apr 17 at 9:10











  • The clients will be the ones paying for the expenses though, @Tim. I've already explained that to him and that's exactly why we thought about the ECS + EFS to run MySQL with persistent data, I'm just not sure if that's any good of an approach.

    – Tomás Fonseca
    Apr 17 at 9:18











  • My understanding is containers are generally ephemeral, so you can lose them any time, so the idea to use EFS sounds ok... the problem is EFS is fairly low performance which could handicap your applications. If you can do persistent containers and use EBS you'd be ok, but I'd keep very regular backups or exports to S3.

    – Tim
    Apr 17 at 20:06













2












2








2








I'm working on a project where we will be using ECS to run the API of each client, it will start with one but it will eventually grow. We will also need a database for each client and the Project Manager decided that we should have an instance of both API and MySQL for each client. It would be a lot more simple if we used multiple databases inside a MySQL instance but that is not the case.



I've looked at RDS and we can't really have multiple instances of a MySQL database inside an on-demand instance, which makes which leads to a single on-demand instance for each client. On the other hand, running each MySQL instance on a container (while integrating with EFS) in ECS does not feel safe and perhaps troublesome to run backups.



What would you advise me to do in this scenario? Thanks!










share|improve this question














I'm working on a project where we will be using ECS to run the API of each client, it will start with one but it will eventually grow. We will also need a database for each client and the Project Manager decided that we should have an instance of both API and MySQL for each client. It would be a lot more simple if we used multiple databases inside a MySQL instance but that is not the case.



I've looked at RDS and we can't really have multiple instances of a MySQL database inside an on-demand instance, which makes which leads to a single on-demand instance for each client. On the other hand, running each MySQL instance on a container (while integrating with EFS) in ECS does not feel safe and perhaps troublesome to run backups.



What would you advise me to do in this scenario? Thanks!







amazon-web-services amazon-rds amazon-ecs






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Apr 17 at 8:15









Tomás FonsecaTomás Fonseca

252




252












  • Project managers making technical decisions doesn't always work out well. You should explain the cost implications of this to him of having many instances. RDS reduces administration and increases reliability, though it is more expensive than running MySQL yourself. I run MySQL, Nginx, PHP on a t2.nano, it works fine for a lightly loaded system and costs basically nothing, but the smallest RDS instance is (from memory) $10 per month.

    – Tim
    Apr 17 at 9:10











  • The clients will be the ones paying for the expenses though, @Tim. I've already explained that to him and that's exactly why we thought about the ECS + EFS to run MySQL with persistent data, I'm just not sure if that's any good of an approach.

    – Tomás Fonseca
    Apr 17 at 9:18











  • My understanding is containers are generally ephemeral, so you can lose them any time, so the idea to use EFS sounds ok... the problem is EFS is fairly low performance which could handicap your applications. If you can do persistent containers and use EBS you'd be ok, but I'd keep very regular backups or exports to S3.

    – Tim
    Apr 17 at 20:06

















  • Project managers making technical decisions doesn't always work out well. You should explain the cost implications of this to him of having many instances. RDS reduces administration and increases reliability, though it is more expensive than running MySQL yourself. I run MySQL, Nginx, PHP on a t2.nano, it works fine for a lightly loaded system and costs basically nothing, but the smallest RDS instance is (from memory) $10 per month.

    – Tim
    Apr 17 at 9:10











  • The clients will be the ones paying for the expenses though, @Tim. I've already explained that to him and that's exactly why we thought about the ECS + EFS to run MySQL with persistent data, I'm just not sure if that's any good of an approach.

    – Tomás Fonseca
    Apr 17 at 9:18











  • My understanding is containers are generally ephemeral, so you can lose them any time, so the idea to use EFS sounds ok... the problem is EFS is fairly low performance which could handicap your applications. If you can do persistent containers and use EBS you'd be ok, but I'd keep very regular backups or exports to S3.

    – Tim
    Apr 17 at 20:06
















Project managers making technical decisions doesn't always work out well. You should explain the cost implications of this to him of having many instances. RDS reduces administration and increases reliability, though it is more expensive than running MySQL yourself. I run MySQL, Nginx, PHP on a t2.nano, it works fine for a lightly loaded system and costs basically nothing, but the smallest RDS instance is (from memory) $10 per month.

– Tim
Apr 17 at 9:10





Project managers making technical decisions doesn't always work out well. You should explain the cost implications of this to him of having many instances. RDS reduces administration and increases reliability, though it is more expensive than running MySQL yourself. I run MySQL, Nginx, PHP on a t2.nano, it works fine for a lightly loaded system and costs basically nothing, but the smallest RDS instance is (from memory) $10 per month.

– Tim
Apr 17 at 9:10













The clients will be the ones paying for the expenses though, @Tim. I've already explained that to him and that's exactly why we thought about the ECS + EFS to run MySQL with persistent data, I'm just not sure if that's any good of an approach.

– Tomás Fonseca
Apr 17 at 9:18





The clients will be the ones paying for the expenses though, @Tim. I've already explained that to him and that's exactly why we thought about the ECS + EFS to run MySQL with persistent data, I'm just not sure if that's any good of an approach.

– Tomás Fonseca
Apr 17 at 9:18













My understanding is containers are generally ephemeral, so you can lose them any time, so the idea to use EFS sounds ok... the problem is EFS is fairly low performance which could handicap your applications. If you can do persistent containers and use EBS you'd be ok, but I'd keep very regular backups or exports to S3.

– Tim
Apr 17 at 20:06





My understanding is containers are generally ephemeral, so you can lose them any time, so the idea to use EFS sounds ok... the problem is EFS is fairly low performance which could handicap your applications. If you can do persistent containers and use EBS you'd be ok, but I'd keep very regular backups or exports to S3.

– Tim
Apr 17 at 20:06










1 Answer
1






active

oldest

votes


















1














Choose the right service for the job.



RDS



  • Managed service

  • Automatic fail-over

  • Automatic backup, easy restore

  • Automatic disk space management (in case of Aurora)

  • Detailed performance stats in CloudWatch

  • Little more expensive, however you get a lot more for the money

MySQL on EC2



  • Cheaper than RDS

  • You have full control of the setup (do you really need it?)

  • All management is up on you - backup, restore, fail over, etc.

MySQL in an ECS container



  • Pros ... ehm ... none?

  • Cons - containers are not meant to store stateful data. That workaround with EFS is just that - a workaround.


The bottom line is to convince your project manager that RDS is the best suited service for storing data. If his worry is the appropriation of the RDS costs to your customers you can charge them some flat fee for "database service" and that with N customers will cover the cost of RDS and with >N customers will contribute to your profit.



Hope that helps :)






share|improve this answer























    Your Answer








    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "2"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader:
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    ,
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );













    draft saved

    draft discarded


















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f963430%2faws-mysql-running-on-ecs-vs-rds%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    1














    Choose the right service for the job.



    RDS



    • Managed service

    • Automatic fail-over

    • Automatic backup, easy restore

    • Automatic disk space management (in case of Aurora)

    • Detailed performance stats in CloudWatch

    • Little more expensive, however you get a lot more for the money

    MySQL on EC2



    • Cheaper than RDS

    • You have full control of the setup (do you really need it?)

    • All management is up on you - backup, restore, fail over, etc.

    MySQL in an ECS container



    • Pros ... ehm ... none?

    • Cons - containers are not meant to store stateful data. That workaround with EFS is just that - a workaround.


    The bottom line is to convince your project manager that RDS is the best suited service for storing data. If his worry is the appropriation of the RDS costs to your customers you can charge them some flat fee for "database service" and that with N customers will cover the cost of RDS and with >N customers will contribute to your profit.



    Hope that helps :)






    share|improve this answer



























      1














      Choose the right service for the job.



      RDS



      • Managed service

      • Automatic fail-over

      • Automatic backup, easy restore

      • Automatic disk space management (in case of Aurora)

      • Detailed performance stats in CloudWatch

      • Little more expensive, however you get a lot more for the money

      MySQL on EC2



      • Cheaper than RDS

      • You have full control of the setup (do you really need it?)

      • All management is up on you - backup, restore, fail over, etc.

      MySQL in an ECS container



      • Pros ... ehm ... none?

      • Cons - containers are not meant to store stateful data. That workaround with EFS is just that - a workaround.


      The bottom line is to convince your project manager that RDS is the best suited service for storing data. If his worry is the appropriation of the RDS costs to your customers you can charge them some flat fee for "database service" and that with N customers will cover the cost of RDS and with >N customers will contribute to your profit.



      Hope that helps :)






      share|improve this answer

























        1












        1








        1







        Choose the right service for the job.



        RDS



        • Managed service

        • Automatic fail-over

        • Automatic backup, easy restore

        • Automatic disk space management (in case of Aurora)

        • Detailed performance stats in CloudWatch

        • Little more expensive, however you get a lot more for the money

        MySQL on EC2



        • Cheaper than RDS

        • You have full control of the setup (do you really need it?)

        • All management is up on you - backup, restore, fail over, etc.

        MySQL in an ECS container



        • Pros ... ehm ... none?

        • Cons - containers are not meant to store stateful data. That workaround with EFS is just that - a workaround.


        The bottom line is to convince your project manager that RDS is the best suited service for storing data. If his worry is the appropriation of the RDS costs to your customers you can charge them some flat fee for "database service" and that with N customers will cover the cost of RDS and with >N customers will contribute to your profit.



        Hope that helps :)






        share|improve this answer













        Choose the right service for the job.



        RDS



        • Managed service

        • Automatic fail-over

        • Automatic backup, easy restore

        • Automatic disk space management (in case of Aurora)

        • Detailed performance stats in CloudWatch

        • Little more expensive, however you get a lot more for the money

        MySQL on EC2



        • Cheaper than RDS

        • You have full control of the setup (do you really need it?)

        • All management is up on you - backup, restore, fail over, etc.

        MySQL in an ECS container



        • Pros ... ehm ... none?

        • Cons - containers are not meant to store stateful data. That workaround with EFS is just that - a workaround.


        The bottom line is to convince your project manager that RDS is the best suited service for storing data. If his worry is the appropriation of the RDS costs to your customers you can charge them some flat fee for "database service" and that with N customers will cover the cost of RDS and with >N customers will contribute to your profit.



        Hope that helps :)







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Apr 18 at 0:52









        MLuMLu

        9,95722445




        9,95722445



























            draft saved

            draft discarded
















































            Thanks for contributing an answer to Server Fault!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid


            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.

            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f963430%2faws-mysql-running-on-ecs-vs-rds%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Wikipedia:Vital articles Мазмуну Biography - Өмүр баян Philosophy and psychology - Философия жана психология Religion - Дин Social sciences - Коомдук илимдер Language and literature - Тил жана адабият Science - Илим Technology - Технология Arts and recreation - Искусство жана эс алуу History and geography - Тарых жана география Навигация менюсу

            Bruxelas-Capital Índice Historia | Composición | Situación lingüística | Clima | Cidades irmandadas | Notas | Véxase tamén | Menú de navegacióneO uso das linguas en Bruxelas e a situación do neerlandés"Rexión de Bruxelas Capital"o orixinalSitio da rexiónPáxina de Bruselas no sitio da Oficina de Promoción Turística de Valonia e BruxelasMapa Interactivo da Rexión de Bruxelas-CapitaleeWorldCat332144929079854441105155190212ID28008674080552-90000 0001 0666 3698n94104302ID540940339365017018237

            What should I write in an apology letter, since I have decided not to join a company after accepting an offer letterShould I keep looking after accepting a job offer?What should I do when I've been verbally told I would get an offer letter, but still haven't gotten one after 4 weeks?Do I accept an offer from a company that I am not likely to join?New job hasn't confirmed starting date and I want to give current employer as much notice as possibleHow should I address my manager in my resignation letter?HR delayed background verification, now jobless as resignedNo email communication after accepting a formal written offer. How should I phrase the call?What should I do if after receiving a verbal offer letter I am informed that my written job offer is put on hold due to some internal issues?Should I inform the current employer that I am about to resign within 1-2 weeks since I have signed the offer letter and waiting for visa?What company will do, if I send their offer letter to another company