Understanding Amazon RDS Blue/Green Deployment. Creation to Switchover !!

แชร์
ฝัง
  • เผยแพร่เมื่อ 13 ต.ค. 2024
  • Learn AWS from the certified solution architect.
    Understanding Amazon Blue/Green Deployment. Creation to Switchover !!
    You can also refer to this blog if you prefer written format
    dev.to/girishm...
    A blue/green deployment copies a production database environment to a separate, synchronized staging environment. By using Amazon RDS Blue/Green Deployments, you can make changes to the database in the staging environment without affecting the production environment. For example, you can upgrade the major or minor DB engine version, change database parameters, or make schema changes in the staging environment. When you are ready, you can promote the staging environment to be the new production database environment, with downtime typically under one minute.
    Currently, blue/green deployments are supported only for RDS for MariaDB and RDS for MySQL.
    This tutorial helps to understand -
    What is Blue/Green Deployment w.r.t. Amazon RDS?
    How to create blue/green deployment ?
    How to switchover?
    What are the changes to the environment post switchover ?
    How much downtime is expected, in general using this method?
    Refer this shared document for commands and script used in this tutorial -
    drive.google.c...
    Guys, Please subscribe if you like such technical content. Don't hesitate if you would like to share the content. Knowledge shared is knowledge squared.
    -~-~~-~~~-~~-~
    Please watch: "Integrate Amazon Bedrock Foundation Models with Lambda function @AWSLearn #ai #aws #awsbedrock"
    • Integrate Amazon Bedro...
    ~-~~-~~~-~~-~

ความคิดเห็น • 55

  • @saravananthambi5978
    @saravananthambi5978 5 หลายเดือนก่อน +1

    This is a great video,
    After successfully creating the green environment, we proceed with stage testing in that environment. During this phase, are production data synced to this green environment?
    In this deployment process, I would like to incorporate adding a new column to the production database. When should we schedule this step?"

    • @AWSLearn
      @AWSLearn  5 หลายเดือนก่อน

      hi, sorry for late reply. Let us know your testing experience if you attempted changes on green environment. That will help others as well.
      In general, AWS suggests to avoid any changes to green environment which are not replication compatible. That could break replication. You may find these best practices handy docs.aws.amazon.com/AmazonRDS/latest/UserGuide/blue-green-deployments-overview.html#blue-green-deployments-best-practices

  • @sumankafle9808
    @sumankafle9808 8 หลายเดือนก่อน +2

    Hello Girish. Thank you for the Video. Can we follow the same to upgrade MySQL 5.7 to MySQL 8.0?

    • @theanatomyofreliability2168
      @theanatomyofreliability2168 หลายเดือนก่อน

      Were you able to do it ? I'm planning to do the same and since it is a major upgrade. Want to know any hiccup that might come up

    • @shik4ri
      @shik4ri หลายเดือนก่อน

      @@theanatomyofreliability2168 Even I need to do it today. And I have another question, after a switchover, can we do a rollback?

  • @pramodpunnuche5426
    @pramodpunnuche5426 3 หลายเดือนก่อน +2

    Appreciate your efforts!!! but Is background music required, not getting your clear voice, so please make videos without music

    • @AWSLearn
      @AWSLearn  3 หลายเดือนก่อน

      Thank you Pramod. Absolutely. I understand and next time, will take care . I appreciate your feedback.

  • @nandipatinagabrahmachari6812
    @nandipatinagabrahmachari6812 หลายเดือนก่อน +1

    Hi Girish,
    i believe you were part of PepsiCo, How are you?

    • @AWSLearn
      @AWSLearn  หลายเดือนก่อน

      Hey yes I was. I’m doing good. How are you doing? Can you please send email to girish.mukim@gmail.com

    • @AWSLearn
      @AWSLearn  หลายเดือนก่อน

      Would love to connect

  • @arunmanglick
    @arunmanglick 7 หลายเดือนก่อน +1

    Thank you. This is awesome

    • @AWSLearn
      @AWSLearn  7 หลายเดือนก่อน

      Thanks for your feedback.

  • @shik4ri
    @shik4ri หลายเดือนก่อน

    I am upgrading from 5.x to 8.x.
    Since after switchover I cannot rollback the DB to older version, I should test first on green. But how? My service is still connecting to blue DB, right? By just being able to connect (the green db) from command line doesn't prove that my application won't fail on the upgraded DB.

  • @ashutoshdange9167
    @ashutoshdange9167 7 หลายเดือนก่อน

    Cam you please cover further part of blue green depolyment. Like can we reuse the blue green after switch over or we have to again create a new blue green depolyment.

    • @AWSLearn
      @AWSLearn  7 หลายเดือนก่อน

      You may not be able to reuse post switch over and have to recreate blue environment.

  • @vijayvores3993
    @vijayvores3993 ปีที่แล้ว

    Hi, thanks for the video.
    After the completion of switch over in addition to deleting the blue environment resources, can we also delete blue/green deployment which is mentioned as a “role” in the dashboard??
    Does this deletion have impact on existing green environment resources?

    • @AWSLearn
      @AWSLearn  ปีที่แล้ว

      I think once you delete blue environment, deployment won’t exist. Don’t think you need an extra step there.

  • @JamesTuson-m8h
    @JamesTuson-m8h ปีที่แล้ว

    Seems like the DB was unavailable for writes for much longer. Only the reads were available after 19 seconds. Or was that due to the endpoint you were referencing? For seamless switchover, would we normally implement some kind of switching or loadbalancing in front of the DB? If this is the case, what tech would you recommend for this loadbalancer?

    • @AWSLearn
      @AWSLearn  ปีที่แล้ว +1

      No. I observed endpoint was readonly momentarily during switchover, however switchover did take around 19 seconds and that would be actual downtime. Per AWS document, switchover is expected to complete within 1 min. Still depends on workload during switchover though.

    • @JamesTuson-m8h
      @JamesTuson-m8h ปีที่แล้ว

      @@AWSLearn Ah yes, I understand thank you for your reply. At 15:45 I mistakenly thought that the errors were continuously coming, in fact they had stopped after the 19 seconds.

    • @AWSLearn
      @AWSLearn  ปีที่แล้ว

      You are welcome. It’s good to clarify doubts.Your comments would help someone. Thanks.

  • @muzaffarali894
    @muzaffarali894 ปีที่แล้ว

    Hello,
    Thanks for the video.
    I want to upgrade my RDS MySQL version 5.7 to 8.0.30. As per AWS docs, it seems like i need to create a new instance and then migrate/replicate the DB. Can I use Blue/Green deployment for this upgrade?

    • @AWSLearn
      @AWSLearn  ปีที่แล้ว

      I believe you should be able to use available version upgrades using blue/green deployment. I don't see 8.0.30 available in RDS service. check it once. FYI.. I do see this documented restrictions about few MySQL versions for blue/green deployment. "MySQL versions 8.0.11 through 8.0.13 have a community bug that prevents RDS from supporting them for blue/green deployments." Refer: docs.aws.amazon.com/AmazonRDS/latest/UserGuide/blue-green-deployments-overview.html#blue-green-deployments-limitations

  • @vijayvores3993
    @vijayvores3993 ปีที่แล้ว

    And also I would like to upgrade the major DB version of RDS MySQL (from 5.0.4 to 8.0.34) but the recommendations for older DB version shows minor upgrade and OS update, so do I need to work on these recommendations first before creating blue/green deployment or these recommendations will be automatically updated when we create blue/green deployment?

    • @AWSLearn
      @AWSLearn  ปีที่แล้ว

      I’ll have to test this out. Do you see both the versions are supported in RDS? Can you check that once.

    • @vijayvores3993
      @vijayvores3993 11 หลายเดือนก่อน

      Yes, both the versions are supported in RDS

    • @amiyakumarnayak6375
      @amiyakumarnayak6375 8 หลายเดือนก่อน

      ​@@vijayvores3993i have also same requirement bro...can you please tell me the procedure to upgrade mysql 5.7 to 8.0

  • @jayeshpatel1914
    @jayeshpatel1914 11 หลายเดือนก่อน +1

    Very Nice Video

    • @AWSLearn
      @AWSLearn  11 หลายเดือนก่อน

      Thank you Jayesh for your feedback. Good to know you liked the video.

    • @jayeshpatel1914
      @jayeshpatel1914 11 หลายเดือนก่อน

      @@AWSLearn I am trying to create blue/green deployment for RDS postgress which don't have replica. It is giving me error "Database 'arn:aws:rds:us-east-1:XXXXXXXXXXXX:db:test' is not supported: Blue/Green Deployments require a DB instance with logical replication enabled. Before you create a Blue/Green Deployment for a DB instance, associate the DB instance with a custom DB instance parameter group that enables logical replication."

    • @AWSLearn
      @AWSLearn  11 หลายเดือนก่อน

      @@jayeshpatel1914 which postgresql version you are using? I haven't seen this error but will try if can reproduce.

    • @AWSLearn
      @AWSLearn  11 หลายเดือนก่อน

      @jayeshpatel1914 this error is seen when the logical replication is turned off (rds.logical_replication=0) which is a default setting. You create a new parameter group with rds.logical_replication=1 and modify instance to use the newly created parameter group. This should help to resolved the issue. Hope this helps. Let me know how it goes for you. You can check earlier video on this channel if you want to see how to change parameter group.

  • @thatisrikanth7524
    @thatisrikanth7524 ปีที่แล้ว

    Can we do rollback? I feel like we need to create another blue green with lower version and then switch over correct?

    • @AWSLearn
      @AWSLearn  ปีที่แล้ว

      RDS blue green deployment feature provides option to specify timeout, say if switchover does not complete in certain time, it’ll rollback. No manual intervention needed. However if you gone live on new environment with data changes on new production and decided to rollback now, then that’s tricky. Don’t think there is any easy option. I’m not certain if can downgrade as part of blue green deployment, very unlikely. You will have your blue environment intact if ok to use that , usually you should test on new environment and connect production applications if all ok. Hope that make sense.

  • @aparanabinu5608
    @aparanabinu5608 6 หลายเดือนก่อน +1

    very usefull make more video

    • @AWSLearn
      @AWSLearn  6 หลายเดือนก่อน

      Thank you for your feedback. Nice to see you liked this video.

  • @AshikDiwana
    @AshikDiwana ปีที่แล้ว

    There is no need of any replication user creation manually and no manual replication configuration?? Please clarify.

    • @AWSLearn
      @AWSLearn  ปีที่แล้ว

      No so long as the user you are using to access your account has required permissions. The document has clear guidance on what permissions are needed for each stage of blue/green deployment. Just for your quick reference right from the document-
      The user who creates a blue/green deployment must have permissions to perform the following RDS operations:
      rds:AddTagsToResource
      rds:CreateDBInstanceReadReplica
      The user who switches over a blue/green deployment must have permissions to perform the following RDS operations:
      rds:ModifyDBInstance
      rds:PromoteDBInstance
      The user who deletes a blue/green deployment must have permissions to perform the following RDS operation:
      rds:DeleteDBInstance

  • @manjunathjayam4895
    @manjunathjayam4895 6 หลายเดือนก่อน

    Can you attach those scripts which you used in this video? The script which pings db and there are other .sh scripts. Thank you

    • @AWSLearn
      @AWSLearn  6 หลายเดือนก่อน +1

      Sure. Please see if you are able to access.
      drive.google.com/file/d/1j0Yr-HiDvZ6V3m5-_diKYoevULFvkEnz/view?usp=sharing
      I've also put the link in the description. Hope that helps.

    • @manjunathjayam4895
      @manjunathjayam4895 6 หลายเดือนก่อน +1

      @@AWSLearn thank you so much, I really appreciate 🙏🙏

    • @AWSLearn
      @AWSLearn  6 หลายเดือนก่อน

      @manjunathjayam4895 you’re welcome

    • @ManjunathJayam-e2k
      @ManjunathJayam-e2k 6 หลายเดือนก่อน

      i am getting this error Database 'arn:aws:rds:us-east-1:891519951990:db:blue-green-poc2' is not supported: Blue/Green Deployments require a DB instance with logical replication enabled. Before you create a Blue/Green Deployment for a DB instance, associate the DB instance with a custom DB instance parameter group that enables logical replication.@@AWSLearn

    • @ManjunathJayam-e2k
      @ManjunathJayam-e2k 6 หลายเดือนก่อน

      i am doing rds upgrade like you did, using blue-green deployment feature, my db configuration is not multi-az, how can i contact you? can you give me your email or phone number. thank you

  • @shivajichaprana3133
    @shivajichaprana3133 ปีที่แล้ว

    Do we have to use DMS here for data migration and all?

    • @AWSLearn
      @AWSLearn  ปีที่แล้ว

      No. We don’t. Replication is managed internally by AWS.

  • @continuouslearner
    @continuouslearner ปีที่แล้ว

    What chair do you use?

    • @AWSLearn
      @AWSLearn  ปีที่แล้ว

      FlexFit Hyken Mesh Task Chair with Adjustable Arms. Hope this answers your question😀.

  • @aparanabinu5608
    @aparanabinu5608 6 หลายเดือนก่อน +1

    make more video related to devops

    • @AWSLearn
      @AWSLearn  หลายเดือนก่อน

      Thank you

  • @EamonKelly-cx8zv
    @EamonKelly-cx8zv 3 หลายเดือนก่อน +1

    Decent

    • @AWSLearn
      @AWSLearn  3 หลายเดือนก่อน

      Thank you