11

Provisioning a 1 GB Redis cache service on AWS takes around 8 minutes. Doing the same on Azure takes around 16 minutes. Ours Terraform scripts need the call back from the Redis systems. Why is this taking so long and how can we make this process faster for immutable infrastructure?

  • ideally, we would like to create related infra less than 4 minutes
  • some tests even take longer 8 and 16 minutes are the averages
  • we are using a managed Redis service by cloud providers.
  • Doing manually also takes that much time to complete it. Infrastructure gets set up but the Redis is not usable for Terraform or X.
  • This happens in any random account in cloud providers with or without Terraform

enter image description here

030
  • 13,235
  • 16
  • 74
  • 173
  • How can we have an idea of which type of instance or managed service you're starting, with which parameters and which configuration, is there some data ? Out of thin air, I don't think someone can answer your specific case. At least show your terraform plan so we may have an idea of what you're doing. I think that's too broad anyway and should be directed to your cloud's customer support as they are the only one with hands on the infrastructure to tell you "Why". – Tensibai Jul 03 '18 at 09:17
  • thanks for the comments update the questions. it is a hosted service. Configuration 1 GB Redis Server. Will create tickets in both Azure and AWS today. – Rıfat Erdem Sahin Jul 03 '18 at 10:36
  • I don't think someone can answer your specific case. : this happens in any random account. Easy to test and find out – Rıfat Erdem Sahin Jul 03 '18 at 12:53
  • 2
    I guess if the speed is necessary Docker and Kubernetes is the way to go. – Rıfat Erdem Sahin Jul 23 '18 at 09:30
  • re" his happens in any random account. Easy to test and find out " <- No one else than Cloud providers teams knows how the redis cluster is set up behind the scene, so reproducing it is easy, finding why it takes that much time is not possible for an outsider. regarding your last comment, probably, if you're up to handle the whole life cycle a SaaS service handle for you to gain a few minutes on deploy (I can't image a need to deploy dozen of redis clusters per day). – Tensibai Jul 23 '18 at 09:38
  • I am running in to the same problem (around 20 minutes for the smallest Redis cache in Azure to spin up). A different question would be, how can we build our pipeline with long provisioning times in the design? Not sure of the answer yet. – Chris Aug 03 '18 at 16:38
  • I guess the answer to this question is using things like packer. https://www.packer.io/ – Rıfat Erdem Sahin Aug 09 '18 at 21:29
  • Could you post an answer? – 030 Dec 23 '19 at 10:28

1 Answers1

0

The amount of time it takes a cloud to create a specific cloud resource is an implementation detail of that cloud. And so you will not be in a position to change the amount of time it takes Azure to create a Redis cache unless you are also in a position to change the underlying implementation of how Azure creates that Redis cache.

If a cloud implementation takes an unacceptably long time to create a specific resource, you have two options as a user: create a different kind of resource, or create it in advance of when you need it so that you don't have to spend the creation time during your low-latency deploy process.

Jesusaur
  • 198
  • 5