[{"data":1,"prerenderedAt":1991},["ShallowReactive",2],{"docs-page-en-\u002Fdocs\u002Fservices\u002Febs":3,"docs-navigation-en":1897,"docs-surround-en-\u002Fdocs\u002Fservices\u002Febs":1986},{"id":4,"title":5,"body":6,"claimDependencies":1879,"description":1883,"extension":1884,"locale":1885,"meta":1886,"missingMedia":1887,"navigation":699,"owner":1888,"path":1889,"reviewStatus":1890,"seo":1891,"staleLinks":1892,"stem":1893,"technicalRisk":1894,"translationKey":1895,"__hash__":1896},"docs_en\u002Fdocs\u002F5.services\u002F1.ebs.md","EBS Optimization",{"type":7,"value":8,"toc":1836},"minimark",[9,13,18,21,50,54,59,62,67,93,98,136,140,144,150,176,181,195,199,204,224,229,240,244,249,273,277,288,292,297,314,318,323,340,344,358,362,367,383,387,398,402,406,409,415,455,461,484,489,497,503,511,515,518,523,537,542,556,561,572,576,579,584,589,599,603,607,613,617,621,627,631,635,641,645,649,655,659,662,667,917,922,1062,1066,1070,1075,1090,1095,1109,1113,1118,1129,1134,1145,1149,1154,1171,1176,1286,1290,1294,1299,1310,1315,1329,1333,1337,1348,1352,1363,1367,1371,1382,1386,1399,1403,1407,1418,1422,1433,1437,1441,1446,1449,1454,1457,1468,1471,1476,1479,1484,1487,1503,1507,1512,1515,1528,1533,1555,1560,1562,1570,1574,1585,1589,1593,1596,1607,1611,1622,1626,1629,1643,1647,1652,1666,1671,1682,1686,1689,1756,1765,1769,1772,1804,1807,1812,1832],[10,11,12],"p",{},"Jetscale provides AI-powered cost optimization for Amazon EBS (Elastic Block Store) volumes. Our specialized agents analyze your storage workloads to identify volume type optimization, IOPS\u002Fthroughput tuning, and unused volume cleanup opportunities.",[14,15,17],"h2",{"id":16},"overview","Overview",[10,19,20],{},"Jetscale optimizes EBS volumes by analyzing:",[22,23,24,32,38,44],"ul",{},[25,26,27,31],"li",{},[28,29,30],"strong",{},"Volume utilization",": IOPS and throughput usage patterns",[25,33,34,37],{},[28,35,36],{},"Volume type efficiency",": Cost-effectiveness of current volume type",[25,39,40,43],{},[28,41,42],{},"Attachment status",": Identify unused, unattached volumes",[25,45,46,49],{},[28,47,48],{},"Cost analysis",": Current spending vs. optimal configuration",[14,51,53],{"id":52},"supported-ebs-types","Supported EBS Types",[55,56,58],"h3",{"id":57},"ebs-volumes","EBS Volumes",[10,60,61],{},"Jetscale optimizes EBS volumes attached to EC2 instances or unattached volumes in your account.",[10,63,64],{},[28,65,66],{},"What We Optimize:",[22,68,69,75,81,87],{},[25,70,71,74],{},[28,72,73],{},"Volume type migration",": gp2 → gp3 (20% cost savings), io1 → io2 (better durability)",[25,76,77,80],{},[28,78,79],{},"IOPS optimization",": Right-size provisioned IOPS based on actual usage",[25,82,83,86],{},[28,84,85],{},"Throughput optimization",": Adjust gp3 throughput to match actual needs",[25,88,89,92],{},[28,90,91],{},"Delete unattached volumes",": Remove unused volumes for 100% savings",[10,94,95],{},[28,96,97],{},"Supported Volume Types:",[22,99,100,106,112,118,124,130],{},[25,101,102,105],{},[28,103,104],{},"gp3"," (General Purpose SSD) - Latest generation, best value",[25,107,108,111],{},[28,109,110],{},"gp2"," (General Purpose SSD) - Previous generation",[25,113,114,117],{},[28,115,116],{},"io2"," (Provisioned IOPS SSD) - High performance, 99.999% durability",[25,119,120,123],{},[28,121,122],{},"io1"," (Provisioned IOPS SSD) - Older generation",[25,125,126,129],{},[28,127,128],{},"st1"," (Throughput Optimized HDD) - Low-cost, throughput-intensive",[25,131,132,135],{},[28,133,134],{},"sc1"," (Cold HDD) - Lowest cost, infrequent access",[14,137,139],{"id":138},"ebs-volume-types","EBS Volume Types",[55,141,143],{"id":142},"general-purpose-ssd-gp3","General Purpose SSD (gp3)",[10,145,146,149],{},[28,147,148],{},"Best for:"," Most workloads",[22,151,152,158,164,170],{},[25,153,154,157],{},[28,155,156],{},"Baseline performance",": 3,000 IOPS, 125 MB\u002Fs throughput",[25,159,160,163],{},[28,161,162],{},"Scalable",": Up to 16,000 IOPS, 1,000 MB\u002Fs throughput",[25,165,166,169],{},[28,167,168],{},"Pricing",": Pay for storage + optional additional IOPS\u002Fthroughput",[25,171,172,175],{},[28,173,174],{},"Cost advantage",": ~20% cheaper than gp2 for equivalent performance",[10,177,178],{},[28,179,180],{},"Use cases:",[22,182,183,186,189,192],{},[25,184,185],{},"Boot volumes",[25,187,188],{},"Virtual desktops",[25,190,191],{},"Development and test environments",[25,193,194],{},"Low-latency interactive applications",[55,196,198],{"id":197},"general-purpose-ssd-gp2","General Purpose SSD (gp2)",[10,200,201],{},[28,202,203],{},"Legacy volume type",[22,205,206,212,218],{},[25,207,208,211],{},[28,209,210],{},"Performance",": 3 IOPS per GB (minimum 100 IOPS, maximum 16,000 IOPS)",[25,213,214,217],{},[28,215,216],{},"Burst",": Can burst to 3,000 IOPS using burst credits",[25,219,220,223],{},[28,221,222],{},"Migration recommended",": Almost always better to migrate to gp3",[10,225,226],{},[28,227,228],{},"Why migrate to gp3:",[22,230,231,234,237],{},[25,232,233],{},"20% cost savings on storage",[25,235,236],{},"Customize IOPS independently of size",[25,238,239],{},"No burst credit management needed",[55,241,243],{"id":242},"provisioned-iops-ssd-io2","Provisioned IOPS SSD (io2)",[10,245,246,248],{},[28,247,148],{}," Mission-critical, I\u002FO-intensive workloads",[22,250,251,256,262,268],{},[25,252,253,255],{},[28,254,210],{},": Up to 64,000 IOPS (256,000 with Block Express)",[25,257,258,261],{},[28,259,260],{},"Durability",": 99.999% (vs. 99.8-99.9% for gp3)",[25,263,264,267],{},[28,265,266],{},"Latency",": Sub-millisecond latency",[25,269,270,272],{},[28,271,168],{},": Pay for storage + provisioned IOPS",[10,274,275],{},[28,276,180],{},[22,278,279,282,285],{},[25,280,281],{},"Large relational databases (Oracle, SAP HANA)",[25,283,284],{},"Mission-critical applications requiring highest durability",[25,286,287],{},"Applications needing sustained IOPS performance",[55,289,291],{"id":290},"provisioned-iops-ssd-io1","Provisioned IOPS SSD (io1)",[10,293,294],{},[28,295,296],{},"Legacy high-performance volume",[22,298,299,304,309],{},[25,300,301,303],{},[28,302,210],{},": Up to 64,000 IOPS",[25,305,306,308],{},[28,307,260],{},": 99.8-99.9% (lower than io2)",[25,310,311,313],{},[28,312,222],{},": Migrate to io2 for better durability and same cost",[55,315,317],{"id":316},"throughput-optimized-hdd-st1","Throughput Optimized HDD (st1)",[10,319,320,322],{},[28,321,148],{}," Throughput-intensive workloads",[22,324,325,330,335],{},[25,326,327,329],{},[28,328,210],{},": 500 MB\u002Fs max throughput, 500 IOPS max",[25,331,332,334],{},[28,333,168],{},": Lower cost than SSD options",[25,336,337],{},[28,338,339],{},"Cannot be boot volume",[10,341,342],{},[28,343,180],{},[22,345,346,349,352,355],{},[25,347,348],{},"Big data processing",[25,350,351],{},"Data warehouses",[25,353,354],{},"Log processing",[25,356,357],{},"Large sequential I\u002FO workloads",[55,359,361],{"id":360},"cold-hdd-sc1","Cold HDD (sc1)",[10,363,364,366],{},[28,365,148],{}," Infrequently accessed data",[22,368,369,374,379],{},[25,370,371,373],{},[28,372,210],{},": 250 MB\u002Fs max throughput, 250 IOPS max",[25,375,376,378],{},[28,377,168],{},": Lowest cost per GB",[25,380,381],{},[28,382,339],{},[10,384,385],{},[28,386,180],{},[22,388,389,392,395],{},[25,390,391],{},"Archival storage",[25,393,394],{},"Infrequently accessed data",[25,396,397],{},"Cost-optimized storage for large datasets",[14,399,401],{"id":400},"how-jetscale-optimizes-ebs","How Jetscale Optimizes EBS",[55,403,405],{"id":404},"_1-data-collection","1. Data Collection",[10,407,408],{},"Jetscale analyzes multiple data sources:",[10,410,411,414],{},[28,412,413],{},"CloudWatch Metrics"," (configurable period):",[22,416,417,428,437,443,449],{},[25,418,419,423,424,427],{},[420,421,422],"code",{},"VolumeReadOps"," \u002F ",[420,425,426],{},"VolumeWriteOps"," - IOPS usage",[25,429,430,423,433,436],{},[420,431,432],{},"VolumeReadBytes",[420,434,435],{},"VolumeWriteBytes"," - Throughput usage",[25,438,439,442],{},[420,440,441],{},"VolumeThroughputPercentage"," - Percentage of provisioned throughput used",[25,444,445,448],{},[420,446,447],{},"VolumeConsumedReadWriteOps"," - Total consumed IOPS (gp2\u002Fgp3)",[25,450,451,454],{},[420,452,453],{},"BurstBalance"," - Burst credit balance (gp2 only)",[10,456,457,460],{},[28,458,459],{},"EBS API Data",":",[22,462,463,466,469,472,475,478,481],{},[25,464,465],{},"Volume type (gp3, gp2, io2, io1, st1, sc1)",[25,467,468],{},"Size in GB",[25,470,471],{},"Provisioned IOPS",[25,473,474],{},"Provisioned throughput (gp3 only)",[25,476,477],{},"Attachment status (attached vs. unattached)",[25,479,480],{},"Attached EC2 instance ID",[25,482,483],{},"Volume state (available, in-use, creating, deleting)",[10,485,486,460],{},[28,487,488],{},"Cost Explorer Data",[22,490,491,494],{},[25,492,493],{},"Current monthly spend per volume",[25,495,496],{},"Historical cost trends",[10,498,499,502],{},[28,500,501],{},"AWS Compute Optimizer"," (if enabled):",[22,504,505,508],{},[25,506,507],{},"AWS-generated EBS recommendations",[25,509,510],{},"Performance risk assessments",[55,512,514],{"id":513},"_2-analysis","2. Analysis",[10,516,517],{},"Our AI agents perform deep analysis:",[10,519,520],{},[28,521,522],{},"Utilization Patterns:",[22,524,525,528,531,534],{},[25,526,527],{},"Peak vs. average IOPS usage",[25,529,530],{},"Peak vs. average throughput usage",[25,532,533],{},"Time-of-day patterns",[25,535,536],{},"Burst credit balance trends (gp2)",[10,538,539],{},[28,540,541],{},"Cost Modeling:",[22,543,544,547,550,553],{},[25,545,546],{},"Current cost breakdown (storage + IOPS + throughput)",[25,548,549],{},"Projected cost for alternative volume types",[25,551,552],{},"Savings from IOPS\u002Fthroughput reduction",[25,554,555],{},"Cost of unattached volumes",[10,557,558],{},[28,559,560],{},"Safety Checks:",[22,562,563,566,569],{},[25,564,565],{},"Verify volume is not attached before recommending deletion",[25,567,568],{},"Ensure IOPS\u002Fthroughput reductions don't impact performance",[25,570,571],{},"Validate migration paths (gp2→gp3, io1→io2)",[55,573,575],{"id":574},"_3-recommendations","3. Recommendations",[10,577,578],{},"Jetscale generates specific, actionable recommendations:",[580,581,583],"h4",{"id":582},"gp2-to-gp3-migration","gp2 to gp3 Migration",[10,585,586],{},[28,587,588],{},"Example Recommendation:",[590,591,596],"pre",{"className":592,"code":594,"language":595},[593],"language-text","Resource: vol-0abc123 (web-server root volume)\nCurrent: gp2, 100 GB\nRecommended: gp3, 100 GB, 3,000 IOPS, 125 MB\u002Fs\n\nCost Impact:\n- Current: $10\u002Fmonth\n- Projected: $8\u002Fmonth\n- Savings: $2\u002Fmonth (20%), $24\u002Fyear\n\nPerformance Analysis:\n- Current IOPS: 300 baseline (3 IOPS\u002FGB)\n- Peak IOPS usage: 250\n- gp3 baseline: 3,000 IOPS (far exceeds current needs)\n\nRisk: Very Low - Performance improvement with cost savings\nNote: Can be done online without detaching volume\n","text",[420,597,594],{"__ignoreMap":598},"",[580,600,602],{"id":601},"iops-right-sizing-io2","IOPS Right-Sizing (io2)",[10,604,605],{},[28,606,588],{},[590,608,611],{"className":609,"code":610,"language":595},[593],"Resource: vol-0def456 (database volume)\nCurrent: io2, 500 GB, 10,000 IOPS\nRecommended: io2, 500 GB, 5,000 IOPS\n\nCost Impact:\n- Current: $40\u002Fmonth (storage) + $650\u002Fmonth (IOPS) = $690\u002Fmonth\n- Projected: $40\u002Fmonth (storage) + $325\u002Fmonth (IOPS) = $365\u002Fmonth\n- Savings: $325\u002Fmonth (47%), $3,900\u002Fyear\n\nPerformance Analysis:\n- Provisioned: 10,000 IOPS\n- Peak usage: 3,200 IOPS\n- Average usage: 1,800 IOPS\n- Recommended: 5,000 IOPS (56% headroom above peak)\n\nRisk: Low - Significant headroom above peak usage maintained\n",[420,612,610],{"__ignoreMap":598},[580,614,616],{"id":615},"gp3-throughput-optimization","gp3 Throughput Optimization",[10,618,619],{},[28,620,588],{},[590,622,625],{"className":623,"code":624,"language":595},[593],"Resource: vol-0ghi789 (log storage volume)\nCurrent: gp3, 1000 GB, 3,000 IOPS, 500 MB\u002Fs\nRecommended: gp3, 1000 GB, 3,000 IOPS, 250 MB\u002Fs\n\nCost Impact:\n- Current: $80\u002Fmonth (storage) + $40\u002Fmonth (extra throughput) = $120\u002Fmonth\n- Projected: $80\u002Fmonth (storage) + $10\u002Fmonth (extra throughput) = $90\u002Fmonth\n- Savings: $30\u002Fmonth (25%), $360\u002Fyear\n\nPerformance Analysis:\n- Provisioned: 500 MB\u002Fs\n- Peak usage: 180 MB\u002Fs\n- Average usage: 95 MB\u002Fs\n- Recommended: 250 MB\u002Fs (39% headroom above peak)\n\nRisk: Low - Adequate headroom above peak usage\nNote: Throughput can be adjusted online\n",[420,626,624],{"__ignoreMap":598},[580,628,630],{"id":629},"io1-to-io2-migration","io1 to io2 Migration",[10,632,633],{},[28,634,588],{},[590,636,639],{"className":637,"code":638,"language":595},[593],"Resource: vol-0jkl012 (production database)\nCurrent: io1, 1000 GB, 20,000 IOPS\nRecommended: io2, 1000 GB, 20,000 IOPS\n\nCost Impact:\n- Current: $125\u002Fmonth (storage) + $1,300\u002Fmonth (IOPS) = $1,425\u002Fmonth\n- Projected: $125\u002Fmonth (storage) + $1,300\u002Fmonth (IOPS) = $1,425\u002Fmonth\n- Savings: $0\u002Fmonth (same cost, better durability)\n\nPerformance Analysis:\n- Same IOPS performance (20,000 IOPS)\n- Same throughput characteristics\n- Durability: 99.8-99.9% (io1) → 99.999% (io2)\n- Better for mission-critical workloads\n\nRisk: Very Low - Same cost, better durability\nBenefit: 10-100x lower annual failure rate\n",[420,640,638],{"__ignoreMap":598},[580,642,644],{"id":643},"delete-unattached-volume","Delete Unattached Volume",[10,646,647],{},[28,648,588],{},[590,650,653],{"className":651,"code":652,"language":595},[593],"Resource: vol-0mno345 (legacy-backup-volume)\nCurrent: gp2, 500 GB, unattached\nRecommended: Delete\n\nCost Impact:\n- Current: $50\u002Fmonth\n- Projected: $0\u002Fmonth\n- Savings: $50\u002Fmonth (100%), $600\u002Fyear\n\nVolume Analysis:\n- State: Available (not attached to any instance)\n- Last attached: >180 days ago\n- Created: 2 years ago\n- Tags: No production tags found\n\nRisk: Low - Volume is unattached and unused\nRecommendation: Verify with team before deletion, create snapshot if needed\n",[420,654,652],{"__ignoreMap":598},[55,656,658],{"id":657},"_4-terraform-generation","4. Terraform Generation",[10,660,661],{},"For each recommendation, Jetscale generates production-ready Terraform code:",[10,663,664],{},[28,665,666],{},"Example: gp2 to gp3 Migration",[590,668,672],{"className":669,"code":670,"language":671,"meta":598,"style":598},"language-hcl shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# EBS Volume Optimization: gp2 → gp3\n# Generated by Jetscale on 2024-01-15\n# Recommendation ID: rec_ebs_001\n\nresource \"aws_ebs_volume\" \"web_server_root\" {\n  availability_zone = \"us-east-1a\"\n\n  # Previous: gp2, 100 GB ($10\u002Fmonth)\n  # Optimized: gp3, 100 GB ($8\u002Fmonth)\n  # Cost Reduction: 20% ($2\u002Fmonth, $24\u002Fyear)\n  #\n  # Performance improvement:\n  # - gp2: 300 IOPS baseline (3 IOPS\u002FGB)\n  # - gp3: 3,000 IOPS baseline (10x improvement)\n  # - Peak usage: 250 IOPS (well within gp3 baseline)\n  type = \"gp3\"\n  size = 100\n\n  # gp3 baseline performance (no additional cost)\n  iops       = 3000\n  throughput = 125\n\n  encrypted  = true\n  kms_key_id = var.kms_key_id\n\n  tags = merge(\n    var.tags,\n    {\n      \"jetscale:optimized\"     = \"true\"\n      \"jetscale:recommendation\" = \"rec_ebs_001\"\n      \"jetscale:previous_type\"  = \"gp2\"\n    }\n  )\n}\n\n# Attachment preserved\nresource \"aws_volume_attachment\" \"web_server_root\" {\n  device_name = \"\u002Fdev\u002Fsda1\"\n  volume_id   = aws_ebs_volume.web_server_root.id\n  instance_id = var.instance_id\n}\n","hcl",[420,673,674,682,688,694,701,707,713,718,724,730,736,742,748,754,760,766,772,778,783,789,795,801,806,812,818,823,829,835,841,847,853,859,865,871,877,882,888,894,900,906,912],{"__ignoreMap":598},[675,676,679],"span",{"class":677,"line":678},"line",1,[675,680,681],{},"# EBS Volume Optimization: gp2 → gp3\n",[675,683,685],{"class":677,"line":684},2,[675,686,687],{},"# Generated by Jetscale on 2024-01-15\n",[675,689,691],{"class":677,"line":690},3,[675,692,693],{},"# Recommendation ID: rec_ebs_001\n",[675,695,697],{"class":677,"line":696},4,[675,698,700],{"emptyLinePlaceholder":699},true,"\n",[675,702,704],{"class":677,"line":703},5,[675,705,706],{},"resource \"aws_ebs_volume\" \"web_server_root\" {\n",[675,708,710],{"class":677,"line":709},6,[675,711,712],{},"  availability_zone = \"us-east-1a\"\n",[675,714,716],{"class":677,"line":715},7,[675,717,700],{"emptyLinePlaceholder":699},[675,719,721],{"class":677,"line":720},8,[675,722,723],{},"  # Previous: gp2, 100 GB ($10\u002Fmonth)\n",[675,725,727],{"class":677,"line":726},9,[675,728,729],{},"  # Optimized: gp3, 100 GB ($8\u002Fmonth)\n",[675,731,733],{"class":677,"line":732},10,[675,734,735],{},"  # Cost Reduction: 20% ($2\u002Fmonth, $24\u002Fyear)\n",[675,737,739],{"class":677,"line":738},11,[675,740,741],{},"  #\n",[675,743,745],{"class":677,"line":744},12,[675,746,747],{},"  # Performance improvement:\n",[675,749,751],{"class":677,"line":750},13,[675,752,753],{},"  # - gp2: 300 IOPS baseline (3 IOPS\u002FGB)\n",[675,755,757],{"class":677,"line":756},14,[675,758,759],{},"  # - gp3: 3,000 IOPS baseline (10x improvement)\n",[675,761,763],{"class":677,"line":762},15,[675,764,765],{},"  # - Peak usage: 250 IOPS (well within gp3 baseline)\n",[675,767,769],{"class":677,"line":768},16,[675,770,771],{},"  type = \"gp3\"\n",[675,773,775],{"class":677,"line":774},17,[675,776,777],{},"  size = 100\n",[675,779,781],{"class":677,"line":780},18,[675,782,700],{"emptyLinePlaceholder":699},[675,784,786],{"class":677,"line":785},19,[675,787,788],{},"  # gp3 baseline performance (no additional cost)\n",[675,790,792],{"class":677,"line":791},20,[675,793,794],{},"  iops       = 3000\n",[675,796,798],{"class":677,"line":797},21,[675,799,800],{},"  throughput = 125\n",[675,802,804],{"class":677,"line":803},22,[675,805,700],{"emptyLinePlaceholder":699},[675,807,809],{"class":677,"line":808},23,[675,810,811],{},"  encrypted  = true\n",[675,813,815],{"class":677,"line":814},24,[675,816,817],{},"  kms_key_id = var.kms_key_id\n",[675,819,821],{"class":677,"line":820},25,[675,822,700],{"emptyLinePlaceholder":699},[675,824,826],{"class":677,"line":825},26,[675,827,828],{},"  tags = merge(\n",[675,830,832],{"class":677,"line":831},27,[675,833,834],{},"    var.tags,\n",[675,836,838],{"class":677,"line":837},28,[675,839,840],{},"    {\n",[675,842,844],{"class":677,"line":843},29,[675,845,846],{},"      \"jetscale:optimized\"     = \"true\"\n",[675,848,850],{"class":677,"line":849},30,[675,851,852],{},"      \"jetscale:recommendation\" = \"rec_ebs_001\"\n",[675,854,856],{"class":677,"line":855},31,[675,857,858],{},"      \"jetscale:previous_type\"  = \"gp2\"\n",[675,860,862],{"class":677,"line":861},32,[675,863,864],{},"    }\n",[675,866,868],{"class":677,"line":867},33,[675,869,870],{},"  )\n",[675,872,874],{"class":677,"line":873},34,[675,875,876],{},"}\n",[675,878,880],{"class":677,"line":879},35,[675,881,700],{"emptyLinePlaceholder":699},[675,883,885],{"class":677,"line":884},36,[675,886,887],{},"# Attachment preserved\n",[675,889,891],{"class":677,"line":890},37,[675,892,893],{},"resource \"aws_volume_attachment\" \"web_server_root\" {\n",[675,895,897],{"class":677,"line":896},38,[675,898,899],{},"  device_name = \"\u002Fdev\u002Fsda1\"\n",[675,901,903],{"class":677,"line":902},39,[675,904,905],{},"  volume_id   = aws_ebs_volume.web_server_root.id\n",[675,907,909],{"class":677,"line":908},40,[675,910,911],{},"  instance_id = var.instance_id\n",[675,913,915],{"class":677,"line":914},41,[675,916,876],{},[10,918,919],{},[28,920,921],{},"Example: IOPS Right-Sizing",[590,923,925],{"className":669,"code":924,"language":671,"meta":598,"style":598},"# EBS Volume IOPS Optimization\n# Generated by Jetscale on 2024-01-15\n\nresource \"aws_ebs_volume\" \"database_volume\" {\n  availability_zone = \"us-east-1b\"\n\n  type = \"io2\"\n  size = 500\n\n  # Previous: 10,000 IOPS ($650\u002Fmonth for IOPS)\n  # Optimized: 5,000 IOPS ($325\u002Fmonth for IOPS)\n  # Cost Reduction: 50% on IOPS cost ($325\u002Fmonth, $3,900\u002Fyear)\n  #\n  # Usage analysis:\n  # - Peak IOPS: 3,200\n  # - Average IOPS: 1,800\n  # - Recommended: 5,000 IOPS (56% headroom above peak)\n  iops = 5000\n\n  encrypted  = true\n  kms_key_id = var.kms_key_id\n\n  tags = merge(\n    var.tags,\n    {\n      \"jetscale:optimized\"      = \"true\"\n      \"jetscale:previous_iops\"  = \"10000\"\n    }\n  )\n}\n",[420,926,927,932,936,940,945,950,954,959,964,968,973,978,983,987,992,997,1002,1007,1012,1016,1020,1024,1028,1032,1036,1040,1045,1050,1054,1058],{"__ignoreMap":598},[675,928,929],{"class":677,"line":678},[675,930,931],{},"# EBS Volume IOPS Optimization\n",[675,933,934],{"class":677,"line":684},[675,935,687],{},[675,937,938],{"class":677,"line":690},[675,939,700],{"emptyLinePlaceholder":699},[675,941,942],{"class":677,"line":696},[675,943,944],{},"resource \"aws_ebs_volume\" \"database_volume\" {\n",[675,946,947],{"class":677,"line":703},[675,948,949],{},"  availability_zone = \"us-east-1b\"\n",[675,951,952],{"class":677,"line":709},[675,953,700],{"emptyLinePlaceholder":699},[675,955,956],{"class":677,"line":715},[675,957,958],{},"  type = \"io2\"\n",[675,960,961],{"class":677,"line":720},[675,962,963],{},"  size = 500\n",[675,965,966],{"class":677,"line":726},[675,967,700],{"emptyLinePlaceholder":699},[675,969,970],{"class":677,"line":732},[675,971,972],{},"  # Previous: 10,000 IOPS ($650\u002Fmonth for IOPS)\n",[675,974,975],{"class":677,"line":738},[675,976,977],{},"  # Optimized: 5,000 IOPS ($325\u002Fmonth for IOPS)\n",[675,979,980],{"class":677,"line":744},[675,981,982],{},"  # Cost Reduction: 50% on IOPS cost ($325\u002Fmonth, $3,900\u002Fyear)\n",[675,984,985],{"class":677,"line":750},[675,986,741],{},[675,988,989],{"class":677,"line":756},[675,990,991],{},"  # Usage analysis:\n",[675,993,994],{"class":677,"line":762},[675,995,996],{},"  # - Peak IOPS: 3,200\n",[675,998,999],{"class":677,"line":768},[675,1000,1001],{},"  # - Average IOPS: 1,800\n",[675,1003,1004],{"class":677,"line":774},[675,1005,1006],{},"  # - Recommended: 5,000 IOPS (56% headroom above peak)\n",[675,1008,1009],{"class":677,"line":780},[675,1010,1011],{},"  iops = 5000\n",[675,1013,1014],{"class":677,"line":785},[675,1015,700],{"emptyLinePlaceholder":699},[675,1017,1018],{"class":677,"line":791},[675,1019,811],{},[675,1021,1022],{"class":677,"line":797},[675,1023,817],{},[675,1025,1026],{"class":677,"line":803},[675,1027,700],{"emptyLinePlaceholder":699},[675,1029,1030],{"class":677,"line":808},[675,1031,828],{},[675,1033,1034],{"class":677,"line":814},[675,1035,834],{},[675,1037,1038],{"class":677,"line":820},[675,1039,840],{},[675,1041,1042],{"class":677,"line":825},[675,1043,1044],{},"      \"jetscale:optimized\"      = \"true\"\n",[675,1046,1047],{"class":677,"line":831},[675,1048,1049],{},"      \"jetscale:previous_iops\"  = \"10000\"\n",[675,1051,1052],{"class":677,"line":837},[675,1053,864],{},[675,1055,1056],{"class":677,"line":843},[675,1057,870],{},[675,1059,1060],{"class":677,"line":849},[675,1061,876],{},[14,1063,1065],{"id":1064},"best-practices","Best Practices",[55,1067,1069],{"id":1068},"testing-strategy","Testing Strategy",[10,1071,1072],{},[28,1073,1074],{},"Pre-Production Testing:",[1076,1077,1078,1081,1084,1087],"ol",{},[25,1079,1080],{},"Test volume modifications in dev\u002Fstaging first",[25,1082,1083],{},"Monitor performance for 48-72 hours",[25,1085,1086],{},"Validate application I\u002FO patterns",[25,1088,1089],{},"Check database query performance (if applicable)",[10,1091,1092],{},[28,1093,1094],{},"Production Rollout:",[1076,1096,1097,1100,1103,1106],{},[25,1098,1099],{},"Schedule changes during maintenance windows",[25,1101,1102],{},"Volume modifications can be done online (no downtime)",[25,1104,1105],{},"Some modifications may cause performance impact during migration",[25,1107,1108],{},"Monitor CloudWatch metrics actively during change",[55,1110,1112],{"id":1111},"volume-type-migration","Volume Type Migration",[10,1114,1115],{},[28,1116,1117],{},"gp2 → gp3 Migration:",[22,1119,1120,1123,1126],{},[25,1121,1122],{},"Can be done online without detaching",[25,1124,1125],{},"May experience brief performance impact during migration",[25,1127,1128],{},"Almost always recommended (20% savings, better performance)",[10,1130,1131],{},[28,1132,1133],{},"io1 → io2 Migration:",[22,1135,1136,1139,1142],{},[25,1137,1138],{},"Can be done online",[25,1140,1141],{},"Same cost, better durability (99.999% vs. 99.8-99.9%)",[25,1143,1144],{},"Strongly recommended for mission-critical workloads",[55,1146,1148],{"id":1147},"unattached-volume-cleanup","Unattached Volume Cleanup",[10,1150,1151],{},[28,1152,1153],{},"Before deleting unattached volumes:",[1076,1155,1156,1159,1162,1165,1168],{},[25,1157,1158],{},"Verify volume is truly unused",[25,1160,1161],{},"Check tags for ownership information",[25,1163,1164],{},"Create snapshot if data might be needed",[25,1166,1167],{},"Confirm with application team",[25,1169,1170],{},"Follow retention period after snapshot creation before deletion",[10,1172,1173],{},[28,1174,1175],{},"Snapshot strategy:",[590,1177,1181],{"className":1178,"code":1179,"language":1180,"meta":598,"style":598},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# Create snapshot before deletion\naws ec2 create-snapshot \\\n  --volume-id vol-0abc123 \\\n  --description \"Backup before deletion - Legacy backup volume\"\n\n# Wait for snapshot completion\naws ec2 wait snapshot-completed \\\n  --snapshot-ids snap-0xyz789\n\n# Delete volume after retention period\naws ec2 delete-volume --volume-id vol-0abc123\n","bash",[420,1182,1183,1189,1206,1216,1231,1235,1240,1254,1262,1266,1271],{"__ignoreMap":598},[675,1184,1185],{"class":677,"line":678},[675,1186,1188],{"class":1187},"sHwdD","# Create snapshot before deletion\n",[675,1190,1191,1195,1199,1202],{"class":677,"line":684},[675,1192,1194],{"class":1193},"sBMFI","aws",[675,1196,1198],{"class":1197},"sfazB"," ec2",[675,1200,1201],{"class":1197}," create-snapshot",[675,1203,1205],{"class":1204},"sTEyZ"," \\\n",[675,1207,1208,1211,1214],{"class":677,"line":690},[675,1209,1210],{"class":1197},"  --volume-id",[675,1212,1213],{"class":1197}," vol-0abc123",[675,1215,1205],{"class":1204},[675,1217,1218,1221,1225,1228],{"class":677,"line":696},[675,1219,1220],{"class":1197},"  --description",[675,1222,1224],{"class":1223},"sMK4o"," \"",[675,1226,1227],{"class":1197},"Backup before deletion - Legacy backup volume",[675,1229,1230],{"class":1223},"\"\n",[675,1232,1233],{"class":677,"line":703},[675,1234,700],{"emptyLinePlaceholder":699},[675,1236,1237],{"class":677,"line":709},[675,1238,1239],{"class":1187},"# Wait for snapshot completion\n",[675,1241,1242,1244,1246,1249,1252],{"class":677,"line":715},[675,1243,1194],{"class":1193},[675,1245,1198],{"class":1197},[675,1247,1248],{"class":1197}," wait",[675,1250,1251],{"class":1197}," snapshot-completed",[675,1253,1205],{"class":1204},[675,1255,1256,1259],{"class":677,"line":720},[675,1257,1258],{"class":1197},"  --snapshot-ids",[675,1260,1261],{"class":1197}," snap-0xyz789\n",[675,1263,1264],{"class":677,"line":726},[675,1265,700],{"emptyLinePlaceholder":699},[675,1267,1268],{"class":677,"line":732},[675,1269,1270],{"class":1187},"# Delete volume after retention period\n",[675,1272,1273,1275,1277,1280,1283],{"class":677,"line":738},[675,1274,1194],{"class":1193},[675,1276,1198],{"class":1197},[675,1278,1279],{"class":1197}," delete-volume",[675,1281,1282],{"class":1197}," --volume-id",[675,1284,1285],{"class":1197}," vol-0abc123\n",[14,1287,1289],{"id":1288},"common-optimization-patterns","Common Optimization Patterns",[55,1291,1293],{"id":1292},"pattern-1-legacy-gp2-volumes","Pattern 1: Legacy gp2 Volumes",[10,1295,1296],{},[28,1297,1298],{},"Symptoms:",[22,1300,1301,1304,1307],{},[25,1302,1303],{},"Using gp2 volumes",[25,1305,1306],{},"gp3 available in region",[25,1308,1309],{},"No special burst requirements",[10,1311,1312],{},[28,1313,1314],{},"Jetscale Recommendation:",[22,1316,1317,1320,1323,1326],{},[25,1318,1319],{},"Migrate all gp2 → gp3",[25,1321,1322],{},"Typical savings: 20% on storage costs",[25,1324,1325],{},"Performance improvement: Higher baseline IOPS (3,000 vs. 3 IOPS\u002FGB)",[25,1327,1328],{},"Risk: Very Low (can be done online)",[55,1330,1332],{"id":1331},"pattern-2-over-provisioned-iops","Pattern 2: Over-Provisioned IOPS",[10,1334,1335],{},[28,1336,1298],{},[22,1338,1339,1342,1345],{},[25,1340,1341],{},"Using io2 or io1 volumes",[25,1343,1344],{},"Peak IOPS usage \u003C 50% of provisioned",[25,1346,1347],{},"High IOPS costs relative to storage costs",[10,1349,1350],{},[28,1351,1314],{},[22,1353,1354,1357,1360],{},[25,1355,1356],{},"Reduce provisioned IOPS to 2x peak usage",[25,1358,1359],{},"Typical savings: 30-50% on IOPS costs",[25,1361,1362],{},"Risk: Low (maintain 2x headroom)",[55,1364,1366],{"id":1365},"pattern-3-unattached-volumes-accumulation","Pattern 3: Unattached Volumes Accumulation",[10,1368,1369],{},[28,1370,1298],{},[22,1372,1373,1376,1379],{},[25,1374,1375],{},"Multiple unattached volumes in account",[25,1377,1378],{},"Volumes from terminated instances",[25,1380,1381],{},"Old backup volumes no longer needed",[10,1383,1384],{},[28,1385,1314],{},[22,1387,1388,1391,1393,1396],{},[25,1389,1390],{},"Create snapshots if needed",[25,1392,91],{},[25,1394,1395],{},"Typical savings: 100% on deleted volumes",[25,1397,1398],{},"Risk: Low if properly verified",[55,1400,1402],{"id":1401},"pattern-4-unnecessary-gp3-iopsthroughput","Pattern 4: Unnecessary gp3 IOPS\u002FThroughput",[10,1404,1405],{},[28,1406,1298],{},[22,1408,1409,1412,1415],{},[25,1410,1411],{},"gp3 volumes with >3,000 IOPS or >125 MB\u002Fs throughput",[25,1413,1414],{},"Actual usage below baseline performance",[25,1416,1417],{},"Paying for unused performance",[10,1419,1420],{},[28,1421,1314],{},[22,1423,1424,1427,1430],{},[25,1425,1426],{},"Reduce to baseline (3,000 IOPS, 125 MB\u002Fs)",[25,1428,1429],{},"Typical savings: 10-30% on volume costs",[25,1431,1432],{},"Risk: Very Low if usage is well below baseline",[14,1434,1436],{"id":1435},"troubleshooting","Troubleshooting",[55,1438,1440],{"id":1439},"recommendation-concerns","Recommendation Concerns",[10,1442,1443],{},[28,1444,1445],{},"Q: Will migrating from gp2 to gp3 cause downtime?",[10,1447,1448],{},"A: No. EBS volume modifications are done online without detaching the volume. The volume remains available during the modification, though there may be brief performance impacts during the migration process.",[10,1450,1451],{},[28,1452,1453],{},"Q: How long does volume modification take?",[10,1455,1456],{},"A: Volume modifications typically complete within minutes to hours depending on:",[22,1458,1459,1462,1465],{},[25,1460,1461],{},"Volume size",[25,1463,1464],{},"Current I\u002FO load",[25,1466,1467],{},"Type of modification (type change, IOPS change, size change)",[10,1469,1470],{},"You can monitor progress via AWS Console or CLI.",[10,1472,1473],{},[28,1474,1475],{},"Q: Can I roll back a volume modification?",[10,1477,1478],{},"A: You cannot directly roll back, but you can modify the volume again after the current modification completes. There's a cooldown period (typically 6 hours) between modifications.",[10,1480,1481],{},[28,1482,1483],{},"Q: What if I reduce IOPS too much?",[10,1485,1486],{},"A: You can increase IOPS again after the modification completes. Monitor CloudWatch metrics for:",[22,1488,1489,1495,1500],{},[25,1490,1491,1494],{},[420,1492,1493],{},"VolumeQueueLength"," (should stay low)",[25,1496,1497,1499],{},[420,1498,441],{}," (should not hit 100%)",[25,1501,1502],{},"Application latency metrics",[55,1504,1506],{"id":1505},"performance-issues-after-optimization","Performance Issues After Optimization",[10,1508,1509],{},[28,1510,1511],{},"Symptom: Increased application latency after IOPS reduction",[10,1513,1514],{},"Possible causes:",[22,1516,1517,1520,1525],{},[25,1518,1519],{},"IOPS reduced below actual peak needs",[25,1521,1522,1524],{},[420,1523,1493],{}," increasing",[25,1526,1527],{},"Application experiencing I\u002FO waits",[10,1529,1530],{},[28,1531,1532],{},"Resolution:",[1076,1534,1535,1543,1549,1552],{},[25,1536,1537,1538,1540,1541],{},"Check CloudWatch ",[420,1539,422],{}," and ",[420,1542,426],{},[25,1544,1545,1546,1548],{},"Verify ",[420,1547,1493],{}," metric",[25,1550,1551],{},"Increase IOPS if queue length consistently > 0",[25,1553,1554],{},"Allow 6-hour cooldown between modifications",[10,1556,1557],{},[28,1558,1559],{},"Symptom: gp2 burst credit depletion after migration",[10,1561,1514],{},[22,1563,1564,1567],{},[25,1565,1566],{},"Migrated to gp3 but workload still needs burst capability",[25,1568,1569],{},"Baseline IOPS insufficient for workload",[10,1571,1572],{},[28,1573,1532],{},[22,1575,1576,1579,1582],{},[25,1577,1578],{},"gp3 doesn't use burst credits - performance is consistent",[25,1580,1581],{},"If seeing performance issues, increase gp3 IOPS above 3,000 baseline",[25,1583,1584],{},"Cost: $0.065 per provisioned IOPS per month",[14,1586,1588],{"id":1587},"security-considerations","Security Considerations",[55,1590,1592],{"id":1591},"encryption","Encryption",[10,1594,1595],{},"Jetscale recommendations preserve:",[22,1597,1598,1601,1604],{},[25,1599,1600],{},"EBS encryption status",[25,1602,1603],{},"KMS key associations",[25,1605,1606],{},"Encryption in-transit settings",[55,1608,1610],{"id":1609},"volume-attachments","Volume Attachments",[22,1612,1613,1616,1619],{},[25,1614,1615],{},"Attached volumes: Only type\u002FIOPS\u002Fthroughput modifications",[25,1617,1618],{},"Unattached volumes: Deletion recommendations (with safety checks)",[25,1620,1621],{},"Volume attachments preserved in Terraform",[55,1623,1625],{"id":1624},"snapshots","Snapshots",[10,1627,1628],{},"Before deleting volumes:",[22,1630,1631,1634,1637,1640],{},[25,1632,1633],{},"Always create snapshot if data might be needed",[25,1635,1636],{},"Tag snapshots appropriately",[25,1638,1639],{},"Set snapshot lifecycle policies",[25,1641,1642],{},"Consider snapshot copies to other regions for DR",[14,1644,1646],{"id":1645},"limitations","Limitations",[10,1648,1649],{},[28,1650,1651],{},"Not Currently Supported:",[22,1653,1654,1657,1660,1663],{},[25,1655,1656],{},"Snapshot optimization (lifecycle policies, cross-region copies)",[25,1658,1659],{},"Multi-attach volumes",[25,1661,1662],{},"Volume size reduction (AWS limitation)",[25,1664,1665],{},"Snapshot-to-volume restore optimization",[10,1667,1668],{},[28,1669,1670],{},"Volume Modification Limits:",[22,1672,1673,1676,1679],{},[25,1674,1675],{},"6-hour cooldown between modifications",[25,1677,1678],{},"Cannot modify volumes \u003C6 hours old",[25,1680,1681],{},"Cannot decrease volume size (AWS limitation)",[14,1683,1685],{"id":1684},"api-integration","API Integration",[10,1687,1688],{},"Jetscale provides API access for programmatic optimization:",[590,1690,1692],{"className":1178,"code":1691,"language":1180,"meta":598,"style":598},"# List EBS recommendations\nGET \u002Fapi\u002Fv1\u002Frecommendations?resource_type=ebs\n\n# Get specific recommendation details\nGET \u002Fapi\u002Fv1\u002Frecommendations\u002F{recommendation_id}\n\n# Approve recommendation (generates Terraform)\nPOST \u002Fapi\u002Fv1\u002Frecommendations\u002F{recommendation_id}\u002Fapprove\n\n# Retrieve generated Terraform\nGET \u002Fapi\u002Fv1\u002Frecommendations\u002F{recommendation_id}\u002Fterraform\n",[420,1693,1694,1699,1707,1711,1716,1723,1727,1732,1740,1744,1749],{"__ignoreMap":598},[675,1695,1696],{"class":677,"line":678},[675,1697,1698],{"class":1187},"# List EBS recommendations\n",[675,1700,1701,1704],{"class":677,"line":684},[675,1702,1703],{"class":1193},"GET",[675,1705,1706],{"class":1197}," \u002Fapi\u002Fv1\u002Frecommendations?resource_type=ebs\n",[675,1708,1709],{"class":677,"line":690},[675,1710,700],{"emptyLinePlaceholder":699},[675,1712,1713],{"class":677,"line":696},[675,1714,1715],{"class":1187},"# Get specific recommendation details\n",[675,1717,1718,1720],{"class":677,"line":703},[675,1719,1703],{"class":1193},[675,1721,1722],{"class":1197}," \u002Fapi\u002Fv1\u002Frecommendations\u002F{recommendation_id}\n",[675,1724,1725],{"class":677,"line":709},[675,1726,700],{"emptyLinePlaceholder":699},[675,1728,1729],{"class":677,"line":715},[675,1730,1731],{"class":1187},"# Approve recommendation (generates Terraform)\n",[675,1733,1734,1737],{"class":677,"line":720},[675,1735,1736],{"class":1193},"POST",[675,1738,1739],{"class":1197}," \u002Fapi\u002Fv1\u002Frecommendations\u002F{recommendation_id}\u002Fapprove\n",[675,1741,1742],{"class":677,"line":726},[675,1743,700],{"emptyLinePlaceholder":699},[675,1745,1746],{"class":677,"line":732},[675,1747,1748],{"class":1187},"# Retrieve generated Terraform\n",[675,1750,1751,1753],{"class":677,"line":738},[675,1752,1703],{"class":1193},[675,1754,1755],{"class":1197}," \u002Fapi\u002Fv1\u002Frecommendations\u002F{recommendation_id}\u002Fterraform\n",[10,1757,1758,1759,1764],{},"See our ",[1760,1761,1763],"a",{"href":1762},"\u002Fdocs\u002Fapi-reference","API Documentation"," for complete reference.",[14,1766,1768],{"id":1767},"support","Support",[10,1770,1771],{},"Need help with EBS optimization?",[22,1773,1774,1784,1793],{},[25,1775,1776,1779,1780],{},[28,1777,1778],{},"Email",": ",[1760,1781,1783],{"href":1782},"mailto:support@jetscale.ai","support@jetscale.ai",[25,1785,1786,1779,1789],{},[28,1787,1788],{},"Documentation",[1760,1790,1792],{"href":1791},"\u002Fdocs\u002Ffaq","FAQ",[25,1794,1795,1779,1798],{},[28,1796,1797],{},"GitHub Issues",[1760,1799,1803],{"href":1800,"rel":1801},"https:\u002F\u002Fgithub.com\u002FJetscale-ai\u002Fjetscale-docs\u002Fissues",[1802],"nofollow","Report a problem",[1805,1806],"hr",{},[10,1808,1809],{},[28,1810,1811],{},"Related Documentation:",[22,1813,1814,1820,1826],{},[25,1815,1816],{},[1760,1817,1819],{"href":1818},"\u002Fdocs\u002Fservices\u002Fec2","EC2 Optimization",[25,1821,1822],{},[1760,1823,1825],{"href":1824},"\u002Fdocs\u002Fservices\u002Frds","RDS Optimization",[25,1827,1828],{},[1760,1829,1831],{"href":1830},"\u002Fdocs\u002Fservices\u002Felasticache","ElastiCache Optimization",[1833,1834,1835],"style",{},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}",{"title":598,"searchDepth":684,"depth":684,"links":1837},[1838,1839,1842,1850,1856,1861,1867,1871,1876,1877,1878],{"id":16,"depth":684,"text":17},{"id":52,"depth":684,"text":53,"children":1840},[1841],{"id":57,"depth":690,"text":58},{"id":138,"depth":684,"text":139,"children":1843},[1844,1845,1846,1847,1848,1849],{"id":142,"depth":690,"text":143},{"id":197,"depth":690,"text":198},{"id":242,"depth":690,"text":243},{"id":290,"depth":690,"text":291},{"id":316,"depth":690,"text":317},{"id":360,"depth":690,"text":361},{"id":400,"depth":684,"text":401,"children":1851},[1852,1853,1854,1855],{"id":404,"depth":690,"text":405},{"id":513,"depth":690,"text":514},{"id":574,"depth":690,"text":575},{"id":657,"depth":690,"text":658},{"id":1064,"depth":684,"text":1065,"children":1857},[1858,1859,1860],{"id":1068,"depth":690,"text":1069},{"id":1111,"depth":690,"text":1112},{"id":1147,"depth":690,"text":1148},{"id":1288,"depth":684,"text":1289,"children":1862},[1863,1864,1865,1866],{"id":1292,"depth":690,"text":1293},{"id":1331,"depth":690,"text":1332},{"id":1365,"depth":690,"text":1366},{"id":1401,"depth":690,"text":1402},{"id":1435,"depth":684,"text":1436,"children":1868},[1869,1870],{"id":1439,"depth":690,"text":1440},{"id":1505,"depth":690,"text":1506},{"id":1587,"depth":684,"text":1588,"children":1872},[1873,1874,1875],{"id":1591,"depth":690,"text":1592},{"id":1609,"depth":690,"text":1610},{"id":1624,"depth":690,"text":1625},{"id":1645,"depth":684,"text":1646},{"id":1684,"depth":684,"text":1685},{"id":1767,"depth":684,"text":1768},[1880,1881,1882],"optimization-methodology","provider-service-support","savings-methodology","Jetscale provides AI-powered cost optimization for Amazon EBS volumes. Our specialized agents analyze your storage workloads to identify volume type optimization,...","md","en",{},[],"Cloud Optimization","\u002Fdocs\u002Fservices\u002Febs","legacy-import",{"title":5,"description":1883},[],"docs\u002F5.services\u002F1.ebs","high","services\u002Febs","gZzmXKRLN6tD9j3uerNh3y-j13ofUom-4P35u3sHKfs",[1898],{"title":1899,"path":1900,"stem":1901,"children":1902},"Docs","\u002Fdocs","docs",[1903,1906,1910,1914,1918,1922,1944,1948,1977,1981,1984],{"title":1904,"path":1900,"stem":1905},"Jetscale Documentation","docs\u002Findex",{"title":1907,"path":1908,"stem":1909},"Getting Started with Jetscale","\u002Fdocs\u002Fgetting-started","docs\u002F1.getting-started",{"title":1911,"path":1912,"stem":1913},"AWS Setup Guide","\u002Fdocs\u002Faws-setup","docs\u002F2.aws-setup",{"title":1915,"path":1916,"stem":1917},"Azure Setup Guide","\u002Fdocs\u002Fazure-setup","docs\u002F3.azure-setup",{"title":1919,"path":1920,"stem":1921},"How Jetscale Works","\u002Fdocs\u002Fhow-it-works","docs\u002F4.how-it-works",{"title":1923,"path":1924,"stem":1925,"children":1926},"Integrations","\u002Fdocs\u002Fintegrations","docs\u002F4.integrations\u002Findex",[1927,1928,1932,1936,1940],{"title":1923,"path":1924,"stem":1925},{"title":1929,"path":1930,"stem":1931},"GitHub Integration","\u002Fdocs\u002Fintegrations\u002Fgithub","docs\u002F4.integrations\u002F1.github",{"title":1933,"path":1934,"stem":1935},"Jira Integration","\u002Fdocs\u002Fintegrations\u002Fjira","docs\u002F4.integrations\u002F2.jira",{"title":1937,"path":1938,"stem":1939},"Slack Integration","\u002Fdocs\u002Fintegrations\u002Fslack","docs\u002F4.integrations\u002F3.slack",{"title":1941,"path":1942,"stem":1943},"Bitbucket Integration","\u002Fdocs\u002Fintegrations\u002Fbitbucket","docs\u002F4.integrations\u002F4.bitbucket",{"title":1945,"path":1946,"stem":1947},"AI-Powered Analysis","\u002Fdocs\u002Fai-analysis","docs\u002F5.ai-analysis",{"title":1949,"path":1950,"stem":1951,"children":1952},"Supported Services","\u002Fdocs\u002Fservices","docs\u002F5.services\u002Findex",[1953,1954,1955,1957,1961,1963,1965,1969,1973],{"title":1949,"path":1950,"stem":1951},{"title":5,"path":1889,"stem":1893},{"title":1819,"path":1818,"stem":1956},"docs\u002F5.services\u002F2.ec2",{"title":1958,"path":1959,"stem":1960},"EKS Optimization","\u002Fdocs\u002Fservices\u002Feks","docs\u002F5.services\u002F3.eks",{"title":1831,"path":1830,"stem":1962},"docs\u002F5.services\u002F4.elasticache",{"title":1825,"path":1824,"stem":1964},"docs\u002F5.services\u002F5.rds",{"title":1966,"path":1967,"stem":1968},"S3 Optimization","\u002Fdocs\u002Fservices\u002Fs3","docs\u002F5.services\u002F6.s3",{"title":1970,"path":1971,"stem":1972},"Azure SQL Optimization","\u002Fdocs\u002Fservices\u002Fazure-sql","docs\u002F5.services\u002F7.azure-sql",{"title":1974,"path":1975,"stem":1976},"Azure VM Optimization","\u002Fdocs\u002Fservices\u002Fazure-vm","docs\u002F5.services\u002F8.azure-vm",{"title":1978,"path":1979,"stem":1980},"Recommendation Workflow","\u002Fdocs\u002Frecommendation-workflow","docs\u002F6.recommendation-workflow",{"title":1982,"path":1762,"stem":1983},"API Reference","docs\u002F7.api-reference",{"title":1792,"path":1791,"stem":1985},"docs\u002F8.faq",[1987,1989],{"title":1949,"path":1950,"stem":1951,"description":1988,"children":-1},"Jetscale provides AI-powered cost optimization for the most critical cloud services across AWS and Azure.",{"title":1819,"path":1818,"stem":1956,"description":1990,"children":-1},"Jetscale provides AI-powered cost optimization for Amazon EC2 standalone instances. Our specialized agents analyze your compute workloads to identify right-sizing...",1788204004713]