{"id":3901,"date":"2016-10-14T13:52:31","date_gmt":"2016-10-14T11:52:31","guid":{"rendered":"https:\/\/geko.cloud\/?p=3901"},"modified":"2021-11-03T10:41:18","modified_gmt":"2021-11-03T09:41:18","slug":"the-basics-of-maximum-cost-efficiency-in-the-cloud","status":"publish","type":"post","link":"https:\/\/geko.cloud\/en\/the-basics-of-maximum-cost-efficiency-in-the-cloud\/","title":{"rendered":"The basics of maximum cost efficiency in the cloud"},"content":{"rendered":"<p>Your first days working with cloud environments can be confusing because you&#8217;re not used to the different paradigms, and some of your first questions may have simple answers. Looking for advice, many companies <a href=\"https:\/\/geko.cloud\/en\/contact\/\"><strong>ask us<\/strong><\/a> how to be profitable when they start in the cloud.<\/p>\n<p>While this post may be a bit basic, we think it may help those who have some early questions, as well as help some companies save some money when starting out in the cloud. In &#8220;<strong>the basics of cloud cost efficiency<\/strong>&#8221; you will learn how to economize your cloud costs in testing and pre-production environments on Amazon Web Services using simple <strong>AWS CLI<\/strong> commands.<\/p>\n<p>Normally, <strong>most of the infrastructure costs are related to the computational capacity of the servers<\/strong>. In AWS, when we talk about compute capacity, we talk about <strong>EC2 instances<\/strong>, where the cost depends only on the actual hours you use on each instance. Also, a larger instance in terms of computational capacity is logically more expensive. It is quite common to use testing and pre-production servers only during business hours, as it makes no sense to have these kinds of environments running 24 hours a day. For this reason, it is interesting, in terms of cost efficiency in the cloud, to take advantage of how easy it is to start and stop instances in the AWS cloud. For example, <strong>you can stop all instances overnight and restart them in the morning<\/strong>. There are two different approaches:<\/p>\n<ul>\n<li><strong>Long distance instances<\/strong>\u00a0(not autoscaling)<\/li>\n<li><strong>Instances within groups<\/strong>\u00a0Autoscaling (ASG)<\/li>\n<\/ul>\n<h2>Cost efficiency in the cloud: long-haul instances<\/h2>\n<p>For long-running instances, we can use a simple bash script that can be scheduled to run in a cronjob. This cron would use AWS CLI commands to stop specific instances. Imagine that all your instances within an AWS account are tagged with the &#8220;Environment&#8221; tag, with different values depending on the environment they depend on: production, pre-production, and testing. The script will simply <strong>check which instance IDs have a specific tag<\/strong> (&#8220;Environment = Preproduction&#8221; for example), and once it has their IDs, <strong>we&#8217;ll use the AWS API to send a stop signal to these EC2 instances<\/strong>.\u00a0The script might look something like the following:<\/p>\n<div class=\"code-embed-wrapper\">\n<pre class=\" code-embed-pre language-bash\" data-start=\"1\" data-line-offset=\"0\"><code class=\" code-embed-code language-bash\">instances_ids<span class=\"token operator\">=<\/span><span class=\"token punctuation\">$(<\/span>aws ec2 describe-instances --filter Name<span class=\"token operator\">=<\/span>tag:Environment,Values<span class=\"token operator\">=<\/span>preproduction --query <span class=\"token string\">'Reservations[*].Instances[*].InstanceId'<\/span> --output text<span class=\"token punctuation\">)<\/span>\r\naws ec2 stop-instances --instance-ids <span class=\"token variable\">$instances_ids<\/span><\/code><\/pre>\n<\/div>\n<p>In the previous command, we are filtering by environment label, and once we have all the information of the different instances, we will use <a href=\"https:\/\/jmespath.org\/\"><strong>JMESPath<\/strong><\/a> to get only the instance ID. Once we have it, we will send a stop-instance command to all these instances.<\/p>\n<p>To start them, we have another script that <strong>executes the start-instances command<\/strong>:<\/p>\n<div class=\"code-embed-wrapper\">\n<pre class=\" code-embed-pre language-bash\" data-start=\"1\" data-line-offset=\"0\"><code class=\" code-embed-code language-bash\">instances_ids<span class=\"token operator\">=<\/span><span class=\"token punctuation\">$(<\/span>aws ec2 describe-instances --filter Name<span class=\"token operator\">=<\/span>tag:Environment,Values<span class=\"token operator\">=<\/span>preproduction --query <span class=\"token string\">'Reservations[*].Instances[*].InstanceId'<\/span> --output text<span class=\"token punctuation\">)<\/span>\r\naws ec2 start-instances --instance-ids <span class=\"token variable\">$instances_ids\r\n<\/span><\/code><\/pre>\n<\/div>\n<h2>Cost efficiency in the cloud: Autoscaling clusters<\/h2>\n<p>For instances within an ASG (AutoScaling Group), the approach will be different due to the fact that, <strong>if you turn off an instance within an ASG, the ASG will replace it with a new one<\/strong>.<\/p>\n<p>The ASG configuration has three different values corresponding to the number of instances within an ASG:<\/p>\n<ul>\n<li>Minimum: minimum number of instances within an ASG<\/li>\n<li>Maximum: maximum number of instances within an ASG<\/li>\n<li>Desired: actual number of instances, which will be between the minimum and maximum, depending on the autoscaling group policies and the usage of EC2 instances.<\/li>\n<\/ul>\n<p>Imagine you have an autoscaling group with 4 instances (minimum=4, desired=4, maximum=8). In this case, <strong>instead of stopping instances, what you could do is to reduce the number of instances to zero<\/strong> (minimum and desired = 0) at night, and restore the normal values in the morning (increasing the minimum and desired = 4).<\/p>\n<p>In order to execute these actions, we will again use some of the available AWS CLI commands. In this case we will use what are known as &#8220;<strong>ASG scheduled actions<\/strong>&#8220;. These scheduled actions are based on universal cron expressions, where we have to use the UTC time zone. We will create two scheduled actions, the first one executed in the evening:<\/p>\n<p><code class=\" code-embed-code language-bash\">aws autoscaling put-scheduled-update-group-action --scheduled-action-name <span class=\"token string\">'scale-down-night'<\/span> --auto-scaling-group-name ASG-NAME --region eu-west-1 --recurrence <span class=\"token string\">'0 18 * * *'<\/span> --min-size 0 --desired-capacity 0<\/code><\/p>\n<p>The above command, executed only once, will create a scheduled action called &#8220;<strong>scale-down-night<\/strong>&#8221; that AWS will execute recurrently every day at 18:00 UTC (note that the rule is triggered at 19:00 in Spain because it was in UTC +1 at that time), and <strong>will decrease the number of ASG instances to 0<\/strong>.\u00a0 And this next one would be executed in the morning:<\/p>\n<p><code class=\" code-embed-code language-bash\">aws autoscaling put-scheduled-update-group-action --scheduled-action-name <span class=\"token string\">'scale-up-morning'<\/span> --auto-scaling-group-name ASG-NAME --region eu-west-1 --recurrence <span class=\"token string\">'0 7 * * *'<\/span> --min-size 4 --desired-capacity 4<\/code><\/p>\n<p>Be aware that once you have increased the number of instances inside the ASG, the autoscaling policies<strong> will again decide the actual number of instances needed<\/strong> (desired value) <strong>depending on the ASG load<\/strong> (e.g. CPU utilization). CloudWatch alarm-based scaling policies define how ASGs scale out or scale in.<\/p>\n<h2>Conclusion<\/h2>\n<p>These are very simple AWS CLI commands to start\/stop instances easily, to save costs in AWS test\/dev environments, and of course, there are usually more elements to worry about in a full pre-production environment.<\/p>\n<p>However, you can create powerful scripts with more complex logic and intelligence using your favorite programming language. AWS offers different SDKs for practically all programming languages: Python, Ruby, Java, PHP, .Net, Go, C++, Node.js&#8230;<\/p>\n<p>I hope you enjoyed this post and I encourage you to check <a href=\"https:\/\/geko.cloud\/en\/blog\/labs\">our blog<\/a> to read other posts that may be of interest to you.\u00a0Don&#8217;t hesitate to <a href=\"https:\/\/geko.cloud\/en\/contact\/\">contact us<\/a> if you would like us to help you with your projects.<\/p>\n<div class=\"code-embed-wrapper\">\n<div class=\"code-embed-wrapper\">\n<pre class=\" code-embed-pre language-bash\" data-start=\"1\" data-line-offset=\"0\"><\/pre>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Your first days working with cloud environments can be confusing because you&#8217;re not used to the different paradigms, and some of your first questions may have simple answers. Looking for advice, many companies ask us how to be profitable when they start in the cloud. While this post may be a bit basic, we think [&hellip;]<\/p>\n","protected":false},"author":23,"featured_media":3899,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[67],"tags":[72,29],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v22.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>The basics of maximum cost efficiency in the cloud - Geko Cloud<\/title>\n<meta name=\"description\" content=\"Learn how to achieve maximum cost efficiency in the cloud thanks to the agility of cloud environments in our post.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"The basics of maximum cost efficiency in the cloud - Geko Cloud\" \/>\n<meta property=\"og:description\" content=\"Learn how to achieve maximum cost efficiency in the cloud thanks to the agility of cloud environments in our post.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/\" \/>\n<meta property=\"og:site_name\" content=\"Geko Cloud\" \/>\n<meta property=\"article:published_time\" content=\"2016-10-14T11:52:31+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-11-03T09:41:18+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/fantastic-ga1ef21670_1920.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1920\" \/>\n\t<meta property=\"og:image:height\" content=\"1080\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"X\u00e8nia Adan\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@geko_cloud\" \/>\n<meta name=\"twitter:site\" content=\"@geko_cloud\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/\"},\"author\":{\"name\":\"X\u00e8nia Adan\",\"@id\":\"https:\/\/geko.cloud\/es\/#\/schema\/person\/d0eb78f4c8e7a25a3d34040655f7d9d2\"},\"headline\":\"The basics of maximum cost efficiency in the cloud\",\"datePublished\":\"2016-10-14T11:52:31+00:00\",\"dateModified\":\"2021-11-03T09:41:18+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/\"},\"wordCount\":858,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/geko.cloud\/es\/#organization\"},\"image\":{\"@id\":\"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/fantastic-ga1ef21670_1920.jpg\",\"keywords\":[\"AWS\",\"Cloud provider\"],\"articleSection\":[\"Labs\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/\",\"url\":\"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/\",\"name\":\"The basics of maximum cost efficiency in the cloud - Geko Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/geko.cloud\/es\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/fantastic-ga1ef21670_1920.jpg\",\"datePublished\":\"2016-10-14T11:52:31+00:00\",\"dateModified\":\"2021-11-03T09:41:18+00:00\",\"description\":\"Learn how to achieve maximum cost efficiency in the cloud thanks to the agility of cloud environments in our post.\",\"breadcrumb\":{\"@id\":\"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/#primaryimage\",\"url\":\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/fantastic-ga1ef21670_1920.jpg\",\"contentUrl\":\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/fantastic-ga1ef21670_1920.jpg\",\"width\":1920,\"height\":1080},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\/\/geko.cloud\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"The basics of maximum cost efficiency in the cloud\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/geko.cloud\/es\/#website\",\"url\":\"https:\/\/geko.cloud\/es\/\",\"name\":\"Geko Cloud\",\"description\":\"Servicios de consultor\u00eda cloud y devops\",\"publisher\":{\"@id\":\"https:\/\/geko.cloud\/es\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/geko.cloud\/es\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/geko.cloud\/es\/#organization\",\"name\":\"Geko Cloud\",\"url\":\"https:\/\/geko.cloud\/es\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/geko.cloud\/es\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/geko_logo-positivo.png\",\"contentUrl\":\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/geko_logo-positivo.png\",\"width\":1650,\"height\":809,\"caption\":\"Geko Cloud\"},\"image\":{\"@id\":\"https:\/\/geko.cloud\/es\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/geko_cloud\",\"https:\/\/www.instagram.com\/gekocloud\/\",\"https:\/\/www.linkedin.com\/company\/gekocloud\",\"https:\/\/www.youtube.com\/channel\/UC5EFLCqUM7fEaXSa_0nWowQ\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/geko.cloud\/es\/#\/schema\/person\/d0eb78f4c8e7a25a3d34040655f7d9d2\",\"name\":\"X\u00e8nia Adan\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/geko.cloud\/es\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/7ced1192bab3d2c2b036d1551ed4fc4d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/7ced1192bab3d2c2b036d1551ed4fc4d?s=96&d=mm&r=g\",\"caption\":\"X\u00e8nia Adan\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"The basics of maximum cost efficiency in the cloud - Geko Cloud","description":"Learn how to achieve maximum cost efficiency in the cloud thanks to the agility of cloud environments in our post.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/","og_locale":"en_US","og_type":"article","og_title":"The basics of maximum cost efficiency in the cloud - Geko Cloud","og_description":"Learn how to achieve maximum cost efficiency in the cloud thanks to the agility of cloud environments in our post.","og_url":"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/","og_site_name":"Geko Cloud","article_published_time":"2016-10-14T11:52:31+00:00","article_modified_time":"2021-11-03T09:41:18+00:00","og_image":[{"width":1920,"height":1080,"url":"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/fantastic-ga1ef21670_1920.jpg","type":"image\/jpeg"}],"author":"X\u00e8nia Adan","twitter_card":"summary_large_image","twitter_creator":"@geko_cloud","twitter_site":"@geko_cloud","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/#article","isPartOf":{"@id":"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/"},"author":{"name":"X\u00e8nia Adan","@id":"https:\/\/geko.cloud\/es\/#\/schema\/person\/d0eb78f4c8e7a25a3d34040655f7d9d2"},"headline":"The basics of maximum cost efficiency in the cloud","datePublished":"2016-10-14T11:52:31+00:00","dateModified":"2021-11-03T09:41:18+00:00","mainEntityOfPage":{"@id":"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/"},"wordCount":858,"commentCount":0,"publisher":{"@id":"https:\/\/geko.cloud\/es\/#organization"},"image":{"@id":"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/#primaryimage"},"thumbnailUrl":"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/fantastic-ga1ef21670_1920.jpg","keywords":["AWS","Cloud provider"],"articleSection":["Labs"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/","url":"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/","name":"The basics of maximum cost efficiency in the cloud - Geko Cloud","isPartOf":{"@id":"https:\/\/geko.cloud\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/#primaryimage"},"image":{"@id":"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/#primaryimage"},"thumbnailUrl":"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/fantastic-ga1ef21670_1920.jpg","datePublished":"2016-10-14T11:52:31+00:00","dateModified":"2021-11-03T09:41:18+00:00","description":"Learn how to achieve maximum cost efficiency in the cloud thanks to the agility of cloud environments in our post.","breadcrumb":{"@id":"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/#primaryimage","url":"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/fantastic-ga1ef21670_1920.jpg","contentUrl":"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/fantastic-ga1ef21670_1920.jpg","width":1920,"height":1080},{"@type":"BreadcrumbList","@id":"https:\/\/geko.cloud\/es\/maxima-eficiencia-de-los-costes-en-la-nube\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/geko.cloud\/en\/"},{"@type":"ListItem","position":2,"name":"The basics of maximum cost efficiency in the cloud"}]},{"@type":"WebSite","@id":"https:\/\/geko.cloud\/es\/#website","url":"https:\/\/geko.cloud\/es\/","name":"Geko Cloud","description":"Servicios de consultor\u00eda cloud y devops","publisher":{"@id":"https:\/\/geko.cloud\/es\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/geko.cloud\/es\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/geko.cloud\/es\/#organization","name":"Geko Cloud","url":"https:\/\/geko.cloud\/es\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/geko.cloud\/es\/#\/schema\/logo\/image\/","url":"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/geko_logo-positivo.png","contentUrl":"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/geko_logo-positivo.png","width":1650,"height":809,"caption":"Geko Cloud"},"image":{"@id":"https:\/\/geko.cloud\/es\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/geko_cloud","https:\/\/www.instagram.com\/gekocloud\/","https:\/\/www.linkedin.com\/company\/gekocloud","https:\/\/www.youtube.com\/channel\/UC5EFLCqUM7fEaXSa_0nWowQ"]},{"@type":"Person","@id":"https:\/\/geko.cloud\/es\/#\/schema\/person\/d0eb78f4c8e7a25a3d34040655f7d9d2","name":"X\u00e8nia Adan","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/geko.cloud\/es\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/7ced1192bab3d2c2b036d1551ed4fc4d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/7ced1192bab3d2c2b036d1551ed4fc4d?s=96&d=mm&r=g","caption":"X\u00e8nia Adan"}}]}},"_links":{"self":[{"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/posts\/3901"}],"collection":[{"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/users\/23"}],"replies":[{"embeddable":true,"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/comments?post=3901"}],"version-history":[{"count":4,"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/posts\/3901\/revisions"}],"predecessor-version":[{"id":5076,"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/posts\/3901\/revisions\/5076"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/media\/3899"}],"wp:attachment":[{"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/media?parent=3901"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/categories?post=3901"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/tags?post=3901"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}