github.com/cloud-green/juju@v0.0.0-20151002100041-a00291338d3d/provider/ec2/instancetype.go (about) 1 // Copyright 2013 Canonical Ltd. 2 // Licensed under the AGPLv3, see LICENCE file for details. 3 4 package ec2 5 6 import ( 7 "gopkg.in/amz.v3/aws" 8 9 "github.com/juju/juju/environs/instances" 10 "github.com/juju/utils/arch" 11 ) 12 13 var ( 14 // Type of virtualisation used. 15 paravirtual = "pv" 16 hvm = "hvm" 17 18 // all instance types can run amd64 images, and some can also run 19 // i386 ones. 20 amd64 = []string{arch.AMD64} 21 both = []string{arch.AMD64, arch.I386} 22 ) 23 24 // allRegions is defined here to allow tests to override the content. 25 var allRegions = aws.Regions 26 27 // allInstanceTypes holds the relevant attributes of every known 28 // instance type. 29 // 30 // Note that while the EC2 root disk default is 8G, constraints on 31 // disk for amazon will simply cause the root disk to grow to match 32 // the constraint 33 var allInstanceTypes = []instances.InstanceType{ 34 { // General purpose, 1st generation. 35 Name: "m1.small", 36 Arches: both, 37 CpuCores: 1, 38 CpuPower: instances.CpuPower(100), 39 Mem: 1740, 40 VirtType: ¶virtual, 41 }, { 42 Name: "m1.medium", 43 Arches: both, 44 CpuCores: 1, 45 CpuPower: instances.CpuPower(200), 46 Mem: 3840, 47 VirtType: ¶virtual, 48 }, { 49 Name: "m1.large", 50 Arches: amd64, 51 CpuCores: 2, 52 CpuPower: instances.CpuPower(400), 53 Mem: 7680, 54 VirtType: ¶virtual, 55 }, { 56 Name: "m1.xlarge", 57 Arches: amd64, 58 CpuCores: 4, 59 CpuPower: instances.CpuPower(800), 60 Mem: 15360, 61 VirtType: ¶virtual, 62 }, 63 // M4 instances are the latest generation of General Purpose 64 // Instances. This family provides a balance of compute, memory, 65 // and network resources, and it is a good choice for many 66 // applications. 67 { 68 Name: "m4.large", 69 Arches: amd64, 70 CpuCores: 2, 71 CpuPower: instances.CpuPower(650), 72 Mem: 8192, 73 VirtType: &hvm, 74 }, 75 { 76 Name: "m4.xlarge", 77 Arches: amd64, 78 CpuCores: 4, 79 CpuPower: instances.CpuPower(1300), 80 Mem: 16384, 81 VirtType: &hvm, 82 }, 83 { 84 Name: "m4.2xlarge", 85 Arches: amd64, 86 CpuCores: 8, 87 CpuPower: instances.CpuPower(2600), 88 Mem: 32768, 89 VirtType: &hvm, 90 }, 91 { 92 Name: "m4.4xlarge", 93 Arches: amd64, 94 CpuCores: 16, 95 CpuPower: instances.CpuPower(5350), 96 Mem: 65536, 97 VirtType: &hvm, 98 }, 99 { 100 Name: "m4.10xlarge", 101 Arches: amd64, 102 CpuCores: 40, 103 CpuPower: instances.CpuPower(12450), 104 Mem: 163840, 105 VirtType: &hvm, 106 }, 107 108 { // General purpose, 2nd generation. 109 Name: "m3.medium", 110 Arches: amd64, 111 CpuCores: 1, 112 CpuPower: instances.CpuPower(300), 113 Mem: 3840, 114 VirtType: ¶virtual, 115 }, { 116 Name: "m3.large", 117 Arches: amd64, 118 CpuCores: 2, 119 CpuPower: instances.CpuPower(650), 120 Mem: 7680, 121 VirtType: ¶virtual, 122 }, { 123 Name: "m3.xlarge", 124 Arches: amd64, 125 CpuCores: 4, 126 CpuPower: instances.CpuPower(1300), 127 Mem: 15360, 128 VirtType: ¶virtual, 129 }, { 130 Name: "m3.2xlarge", 131 Arches: amd64, 132 CpuCores: 8, 133 CpuPower: instances.CpuPower(2600), 134 Mem: 30720, 135 VirtType: ¶virtual, 136 }, 137 138 { // Compute-optimized, 1st generation. 139 Name: "c1.medium", 140 Arches: both, 141 CpuCores: 2, 142 CpuPower: instances.CpuPower(500), 143 Mem: 1740, 144 VirtType: ¶virtual, 145 }, { 146 Name: "c1.xlarge", 147 Arches: amd64, 148 CpuCores: 8, 149 CpuPower: instances.CpuPower(2000), 150 Mem: 7168, 151 VirtType: ¶virtual, 152 }, { 153 Name: "cc2.8xlarge", 154 Arches: amd64, 155 CpuCores: 16, 156 CpuPower: instances.CpuPower(8800), 157 Mem: 61952, 158 VirtType: &hvm, 159 }, 160 161 { // Compute-optimized, 2nd generation. 162 Name: "c3.large", 163 Arches: amd64, 164 CpuCores: 2, 165 CpuPower: instances.CpuPower(700), 166 Mem: 3840, 167 VirtType: ¶virtual, 168 }, { 169 Name: "c3.xlarge", 170 Arches: amd64, 171 CpuCores: 4, 172 CpuPower: instances.CpuPower(1400), 173 Mem: 7680, 174 VirtType: ¶virtual, 175 }, { 176 Name: "c3.2xlarge", 177 Arches: amd64, 178 CpuCores: 8, 179 CpuPower: instances.CpuPower(2800), 180 Mem: 15360, 181 VirtType: ¶virtual, 182 }, { 183 Name: "c3.4xlarge", 184 Arches: amd64, 185 CpuCores: 16, 186 CpuPower: instances.CpuPower(5500), 187 Mem: 30720, 188 VirtType: ¶virtual, 189 }, { 190 Name: "c3.8xlarge", 191 Arches: amd64, 192 CpuCores: 32, 193 CpuPower: instances.CpuPower(10800), 194 Mem: 61440, 195 VirtType: ¶virtual, 196 }, 197 198 { // GPU instances, 1st generation. 199 Name: "cg1.4xlarge", 200 Arches: amd64, 201 CpuCores: 8, 202 CpuPower: instances.CpuPower(3350), 203 Mem: 22528, 204 VirtType: &hvm, 205 }, 206 207 { // GPU instances, 2nd generation. 208 Name: "g2.2xlarge", 209 Arches: amd64, 210 CpuCores: 8, 211 CpuPower: instances.CpuPower(2600), 212 Mem: 15360, 213 VirtType: &hvm, 214 }, 215 216 { // Memory-optimized, 1st generation. 217 Name: "m2.xlarge", 218 Arches: amd64, 219 CpuCores: 2, 220 CpuPower: instances.CpuPower(650), 221 Mem: 17408, 222 VirtType: ¶virtual, 223 }, { 224 Name: "m2.2xlarge", 225 Arches: amd64, 226 CpuCores: 4, 227 CpuPower: instances.CpuPower(1300), 228 Mem: 34816, 229 VirtType: ¶virtual, 230 }, { 231 Name: "m2.4xlarge", 232 Arches: amd64, 233 CpuCores: 8, 234 CpuPower: instances.CpuPower(2600), 235 Mem: 69632, 236 VirtType: ¶virtual, 237 }, { 238 Name: "cr1.8xlarge", 239 Arches: amd64, 240 CpuCores: 16, 241 CpuPower: instances.CpuPower(8800), 242 Mem: 249856, 243 VirtType: &hvm, 244 }, 245 246 { // Memory-optimized, 2nd generation. 247 Name: "r3.large", 248 Arches: amd64, 249 CpuCores: 2, 250 CpuPower: instances.CpuPower(650), 251 Mem: 15616, 252 VirtType: &hvm, 253 }, { 254 Name: "r3.xlarge", 255 Arches: amd64, 256 CpuCores: 4, 257 CpuPower: instances.CpuPower(1300), 258 Mem: 31232, 259 VirtType: &hvm, 260 }, { 261 Name: "r3.2xlarge", 262 Arches: amd64, 263 CpuCores: 8, 264 CpuPower: instances.CpuPower(2600), 265 Mem: 62464, 266 VirtType: &hvm, 267 }, { 268 Name: "r3.4xlarge", 269 Arches: amd64, 270 CpuCores: 16, 271 CpuPower: instances.CpuPower(5200), 272 Mem: 124928, 273 VirtType: &hvm, 274 }, { 275 Name: "r3.8xlarge", 276 Arches: amd64, 277 CpuCores: 32, 278 CpuPower: instances.CpuPower(10400), 279 Mem: 249856, 280 VirtType: &hvm, 281 }, 282 283 { // Storage-optimized, 1st generation. 284 Name: "hi1.4xlarge", 285 Arches: amd64, 286 CpuCores: 16, 287 CpuPower: instances.CpuPower(3500), 288 Mem: 61952, 289 VirtType: ¶virtual, 290 }, 291 292 { // Storage-optimized, 2nd generation. 293 Name: "i2.xlarge", 294 Arches: amd64, 295 CpuCores: 4, 296 CpuPower: instances.CpuPower(1400), 297 Mem: 31232, 298 VirtType: &hvm, 299 }, { 300 Name: "i2.2xlarge", 301 Arches: amd64, 302 CpuCores: 8, 303 CpuPower: instances.CpuPower(2700), 304 Mem: 62464, 305 VirtType: &hvm, 306 }, { 307 Name: "i2.4xlarge", 308 Arches: amd64, 309 CpuCores: 16, 310 CpuPower: instances.CpuPower(5300), 311 Mem: 124928, 312 VirtType: &hvm, 313 }, { 314 Name: "i2.8xlarge", 315 Arches: amd64, 316 CpuCores: 32, 317 CpuPower: instances.CpuPower(10400), 318 Mem: 249856, 319 VirtType: &hvm, 320 }, { 321 Name: "hs1.8xlarge", 322 Arches: amd64, 323 CpuCores: 16, 324 CpuPower: instances.CpuPower(3500), 325 Mem: 119808, 326 VirtType: ¶virtual, 327 }, 328 329 { // Tiny-weeny. 330 Name: "t1.micro", 331 Arches: both, 332 CpuCores: 1, 333 // Burstable baseline is 20% 334 CpuPower: instances.CpuPower(20), 335 Mem: 613, 336 VirtType: ¶virtual, 337 }, 338 339 { // General Purpose, 3rd generation. 340 Name: "t2.micro", 341 Arches: amd64, 342 CpuCores: 1, 343 Mem: 1024, 344 // Burstable baseline is 10% (from http://aws.amazon.com/ec2/faqs/#burst) 345 CpuPower: instances.CpuPower(10), 346 VirtType: &hvm, 347 }, 348 { // General Purpose, 3rd generation. 349 Name: "t2.small", 350 Arches: amd64, 351 CpuCores: 1, 352 Mem: 2048, 353 // Burstable baseline is 20% (from http://aws.amazon.com/ec2/faqs/#burst) 354 CpuPower: instances.CpuPower(20), 355 VirtType: &hvm, 356 }, 357 { // General Purpose, 3rd generation. 358 Name: "t2.medium", 359 Arches: amd64, 360 CpuCores: 2, 361 Mem: 4096, 362 // Burstable baseline is 40% (from http://aws.amazon.com/ec2/faqs/#burst) 363 CpuPower: instances.CpuPower(40), 364 VirtType: &hvm, 365 }, 366 367 { // Compute-optimized, 3rd generation. 368 Name: "c4.large", 369 Arches: amd64, 370 CpuCores: 2, 371 Mem: 3840, 372 CpuPower: instances.CpuPower(800), 373 VirtType: &hvm, 374 }, { 375 Name: "c4.xlarge", 376 Arches: amd64, 377 CpuCores: 4, 378 Mem: 7680, 379 CpuPower: instances.CpuPower(1600), 380 VirtType: &hvm, 381 }, { 382 Name: "c4.2xlarge", 383 Arches: amd64, 384 CpuCores: 8, 385 Mem: 15360, 386 CpuPower: instances.CpuPower(3100), 387 VirtType: &hvm, 388 }, { 389 Name: "c4.4xlarge", 390 Arches: amd64, 391 CpuCores: 16, 392 Mem: 30720, 393 CpuPower: instances.CpuPower(6200), 394 VirtType: &hvm, 395 }, { 396 Name: "c4.8xlarge", 397 Arches: amd64, 398 // The source of this information at http://aws.amazon.com/ec2/instance-types/ 399 CpuCores: 36, 400 Mem: 61440, 401 CpuPower: instances.CpuPower(13200), 402 VirtType: &hvm, 403 }, 404 } 405 406 type instanceTypeCost map[string]uint64 407 type regionCosts map[string]instanceTypeCost 408 409 // allRegionCosts holds the cost in USDe-3/hour for each available instance 410 // type in each region. 411 var allRegionCosts = regionCosts{ 412 "ap-northeast-1": { // Tokyo. 413 "m1.small": 61, 414 "m1.medium": 122, 415 "m1.large": 243, 416 "m1.xlarge": 486, 417 418 "m3.medium": 101, 419 "m3.large": 203, 420 "m3.xlarge": 405, 421 "m3.2xlarge": 810, 422 423 "c1.medium": 158, 424 "c1.xlarge": 632, 425 426 "cc2.8xlarge": 2349, 427 428 "c3.large": 128, 429 "c3.xlarge": 255, 430 "c3.2xlarge": 511, 431 "c3.4xlarge": 1021, 432 "c3.8xlarge": 2043, 433 434 "g2.2xlarge": 898, 435 436 "m2.xlarge": 287, 437 "m2.2xlarge": 575, 438 "m2.4xlarge": 1150, 439 440 "cr1.8xlarge": 4105, 441 442 "r3.large": 210, 443 "r3.xlarge": 420, 444 "r3.2xlarge": 840, 445 "r3.4xlarge": 1680, 446 "r3.8xlarge": 3360, 447 448 "hi1.4xlarge": 3276, 449 450 "i2.xlarge": 1001, 451 "i2.2xlarge": 2001, 452 "i2.4xlarge": 4002, 453 "i2.8xlarge": 8004, 454 455 "hs1.8xlarge": 5400, 456 457 "t1.micro": 26, 458 459 "t2.micro": 20, 460 "t2.small": 40, 461 "t2.medium": 80, 462 463 "c4.large": 147, 464 "c4.xlarge": 294, 465 "c4.2xlarge": 588, 466 "c4.4xlarge": 1176, 467 "c4.8xlarge": 2352, 468 }, 469 "ap-southeast-1": { // Singapore. 470 "m1.small": 58, 471 "m1.medium": 117, 472 "m1.large": 233, 473 "m1.xlarge": 467, 474 475 "m3.medium": 98, 476 "m3.large": 196, 477 "m3.xlarge": 392, 478 "m3.2xlarge": 784, 479 480 "c1.medium": 164, 481 "c1.xlarge": 655, 482 483 "c3.large": 132, 484 "c3.xlarge": 265, 485 "c3.2xlarge": 529, 486 "c3.4xlarge": 1058, 487 "c3.8xlarge": 2117, 488 489 "m2.xlarge": 296, 490 "m2.2xlarge": 592, 491 "m2.4xlarge": 1183, 492 493 "r3.large": 210, 494 "r3.xlarge": 420, 495 "r3.2xlarge": 840, 496 "r3.4xlarge": 1680, 497 "r3.8xlarge": 3360, 498 499 "i2.xlarge": 1018, 500 "i2.2xlarge": 2035, 501 "i2.4xlarge": 4070, 502 "i2.8xlarge": 8140, 503 504 "hs1.8xlarge": 5570, 505 506 "t1.micro": 20, 507 508 "t2.micro": 20, 509 "t2.small": 40, 510 "t2.medium": 80, 511 512 "c4.large": 152, 513 "c4.xlarge": 304, 514 "c4.2xlarge": 608, 515 "c4.4xlarge": 1216, 516 "c4.8xlarge": 2432, 517 518 "g2.2xlarge": 1000, 519 }, 520 "ap-southeast-2": { // Sydney. 521 "m1.small": 58, 522 "m1.medium": 117, 523 "m1.large": 233, 524 "m1.xlarge": 467, 525 526 "m3.medium": 98, 527 "m3.large": 196, 528 "m3.xlarge": 392, 529 "m3.2xlarge": 784, 530 531 "c1.medium": 164, 532 "c1.xlarge": 655, 533 534 "c3.large": 132, 535 "c3.xlarge": 265, 536 "c3.2xlarge": 529, 537 "c3.4xlarge": 1058, 538 "c3.8xlarge": 2117, 539 540 "m2.xlarge": 296, 541 "m2.2xlarge": 592, 542 "m2.4xlarge": 1183, 543 544 "r3.large": 210, 545 "r3.xlarge": 420, 546 "r3.2xlarge": 840, 547 "r3.4xlarge": 1680, 548 "r3.8xlarge": 3360, 549 550 "i2.xlarge": 1018, 551 "i2.2xlarge": 2035, 552 "i2.4xlarge": 4070, 553 "i2.8xlarge": 8140, 554 555 "hs1.8xlarge": 5570, 556 557 "t1.micro": 20, 558 559 "t2.micro": 20, 560 "t2.small": 40, 561 "t2.medium": 80, 562 563 "c4.large": 152, 564 "c4.xlarge": 304, 565 "c4.2xlarge": 608, 566 "c4.4xlarge": 1216, 567 "c4.8xlarge": 2432, 568 569 "g2.2xlarge": 898, 570 }, 571 "eu-west-1": { // Ireland. 572 "m1.small": 47, 573 "m1.medium": 95, 574 "m1.large": 190, 575 "m1.xlarge": 379, 576 577 "m3.medium": 77, 578 "m3.large": 154, 579 "m3.xlarge": 308, 580 "m3.2xlarge": 616, 581 582 "c1.medium": 148, 583 "c1.xlarge": 592, 584 585 "cc2.8xlarge": 2250, 586 587 "c3.large": 120, 588 "c3.xlarge": 239, 589 "c3.2xlarge": 478, 590 "c3.4xlarge": 956, 591 "c3.8xlarge": 1912, 592 593 "cg1.4xlarge": 2360, 594 595 "g2.2xlarge": 702, 596 597 "m2.xlarge": 275, 598 "m2.2xlarge": 550, 599 "m2.4xlarge": 1100, 600 601 "cr1.8xlarge": 3750, 602 603 "r3.large": 195, 604 "r3.xlarge": 390, 605 "r3.2xlarge": 780, 606 "r3.4xlarge": 1560, 607 "r3.8xlarge": 3120, 608 609 "hi1.4xlarge": 3100, 610 611 "i2.xlarge": 938, 612 "i2.2xlarge": 1876, 613 "i2.4xlarge": 3751, 614 "i2.8xlarge": 7502, 615 616 "hs1.8xlarge": 4900, 617 618 "t1.micro": 20, 619 620 "t2.micro": 14, 621 "t2.small": 28, 622 "t2.medium": 56, 623 624 "c4.large": 132, 625 "c4.xlarge": 264, 626 "c4.2xlarge": 528, 627 "c4.4xlarge": 1056, 628 "c4.8xlarge": 2112, 629 }, 630 "sa-east-1": { // Sao Paulo. 631 "m1.small": 58, 632 "m1.medium": 117, 633 "m1.large": 233, 634 "m1.xlarge": 467, 635 636 "m3.medium": 95, 637 "m3.large": 190, 638 "m3.xlarge": 381, 639 "m3.2xlarge": 761, 640 641 "c1.medium": 179, 642 "c1.xlarge": 718, 643 644 "m2.xlarge": 323, 645 "m2.2xlarge": 645, 646 "m2.4xlarge": 1291, 647 648 "t1.micro": 27, 649 650 "t2.micro": 27, 651 "t2.small": 54, 652 "t2.medium": 108, 653 654 "c3.large": 163, 655 "c3.xlarge": 325, 656 "c3.2xlarge": 650, 657 "c3.4xlarge": 1300, 658 "c3.8xlarge": 2600, 659 }, 660 "us-east-1": { // Northern Virginia. 661 "m1.small": 44, 662 "m1.medium": 87, 663 "m1.large": 175, 664 "m1.xlarge": 350, 665 666 "m3.medium": 70, 667 "m3.large": 140, 668 "m3.xlarge": 280, 669 "m3.2xlarge": 560, 670 671 "c1.medium": 130, 672 "c1.xlarge": 520, 673 674 "cc2.8xlarge": 2000, 675 676 "c3.large": 105, 677 "c3.xlarge": 210, 678 "c3.2xlarge": 420, 679 "c3.4xlarge": 840, 680 "c3.8xlarge": 1680, 681 682 "cg1.4xlarge": 2100, 683 684 "g2.2xlarge": 650, 685 686 "m2.xlarge": 245, 687 "m2.2xlarge": 490, 688 "m2.4xlarge": 980, 689 690 "cr1.8xlarge": 3500, 691 692 "r3.large": 175, 693 "r3.xlarge": 350, 694 "r3.2xlarge": 700, 695 "r3.4xlarge": 1400, 696 "r3.8xlarge": 2800, 697 698 "hi1.4xlarge": 3100, 699 700 "i2.xlarge": 853, 701 "i2.2xlarge": 1705, 702 "i2.4xlarge": 3410, 703 "i2.8xlarge": 6820, 704 705 "hs1.8xlarge": 4600, 706 707 "t1.micro": 20, 708 709 "t2.micro": 13, 710 "t2.small": 26, 711 "t2.medium": 52, 712 713 "c4.large": 116, 714 "c4.xlarge": 232, 715 "c4.2xlarge": 464, 716 "c4.4xlarge": 928, 717 "c4.8xlarge": 1856, 718 }, 719 "us-west-1": { // Northern California. 720 "m1.small": 47, 721 "m1.medium": 95, 722 "m1.large": 190, 723 "m1.xlarge": 379, 724 725 "m3.medium": 77, 726 "m3.large": 154, 727 "m3.xlarge": 308, 728 "m3.2xlarge": 616, 729 730 "c1.medium": 148, 731 "c1.xlarge": 592, 732 733 "c3.large": 120, 734 "c3.xlarge": 239, 735 "c3.2xlarge": 478, 736 "c3.4xlarge": 956, 737 "c3.8xlarge": 1912, 738 739 "g2.2xlarge": 702, 740 741 "m2.xlarge": 275, 742 "m2.2xlarge": 550, 743 "m2.4xlarge": 1100, 744 745 "r3.large": 195, 746 "r3.xlarge": 390, 747 "r3.2xlarge": 780, 748 "r3.4xlarge": 1560, 749 "r3.8xlarge": 3120, 750 751 "i2.xlarge": 938, 752 "i2.2xlarge": 1876, 753 "i2.4xlarge": 3751, 754 "i2.8xlarge": 7502, 755 756 "t1.micro": 25, 757 758 "t2.micro": 17, 759 "t2.small": 34, 760 "t2.medium": 68, 761 762 "c4.large": 138, 763 "c4.xlarge": 276, 764 "c4.2xlarge": 552, 765 "c4.4xlarge": 1104, 766 "c4.8xlarge": 2208, 767 }, 768 "us-west-2": { // Oregon. 769 "m1.small": 44, 770 "m1.medium": 87, 771 "m1.large": 175, 772 "m1.xlarge": 350, 773 774 "m3.medium": 70, 775 "m3.large": 140, 776 "m3.xlarge": 280, 777 "m3.2xlarge": 560, 778 779 "c1.medium": 130, 780 "c1.xlarge": 520, 781 782 "cc2.8xlarge": 2000, 783 784 "c3.large": 105, 785 "c3.xlarge": 210, 786 "c3.2xlarge": 420, 787 "c3.4xlarge": 840, 788 "c3.8xlarge": 1680, 789 790 "g2.2xlarge": 650, 791 792 "m2.xlarge": 245, 793 "m2.2xlarge": 490, 794 "m2.4xlarge": 980, 795 "cr1.8xlarge": 3500, 796 797 "r3.large": 175, 798 "r3.xlarge": 350, 799 "r3.2xlarge": 700, 800 "r3.4xlarge": 1400, 801 "r3.8xlarge": 2800, 802 803 "hi1.4xlarge": 3100, 804 805 "i2.xlarge": 853, 806 "i2.2xlarge": 1705, 807 "i2.4xlarge": 3410, 808 "i2.8xlarge": 6820, 809 810 "hs1.8xlarge": 4600, 811 812 "t1.micro": 20, 813 814 "t2.micro": 13, 815 "t2.small": 26, 816 "t2.medium": 52, 817 818 "c4.large": 116, 819 "c4.xlarge": 232, 820 "c4.2xlarge": 464, 821 "c4.4xlarge": 928, 822 "c4.8xlarge": 1856, 823 }, 824 "eu-central-1": { // Frankfurt. 825 "t2.micro": 15, 826 "t2.small": 30, 827 "t2.medium": 60, 828 829 "m3.medium": 83, 830 "m3.large": 166, 831 "m3.xlarge": 332, 832 "m3.2xlarge": 665, 833 834 "c3.large": 129, 835 "c3.xlarge": 258, 836 "c3.2xlarge": 516, 837 "c3.4xlarge": 1032, 838 "c3.8xlarge": 2064, 839 840 "r3.large": 210, 841 "r3.xlarge": 421, 842 "r3.2xlarge": 842, 843 "r3.4xlarge": 1684, 844 "r3.8xlarge": 3369, 845 846 "i2.xlarge": 1013, 847 "i2.2xlarge": 2026, 848 "i2.4xlarge": 4051, 849 "i2.8xlarge": 8102, 850 }, 851 "us-gov-west-1": { // Isolated region - US GovCloud. 852 "t2.micro": 15, 853 "t2.small": 31, 854 "t2.medium": 62, 855 856 "m3.medium": 84, 857 "m3.large": 168, 858 "m3.xlarge": 336, 859 "m3.2xlarge": 672, 860 861 "c3.large": 126, 862 "c3.xlarge": 252, 863 "c3.2xlarge": 504, 864 "c3.4xlarge": 1008, 865 "c3.8xlarge": 2016, 866 867 "r3.large": 210, 868 "r3.xlarge": 420, 869 "r3.2xlarge": 840, 870 "r3.4xlarge": 1680, 871 "r3.8xlarge": 3360, 872 873 "i2.xlarge": 1023, 874 "i2.2xlarge": 2046, 875 "i2.4xlarge": 4092, 876 "i2.8xlarge": 8184, 877 878 "hs1.8xlarge": 5520, 879 }, 880 "cn-north-1": { // Isolated region - China, Beijing. 881 // Instance type information is from 882 // http://www.amazonaws.cn/en/ec2/details/ 883 // TODO (anastasiamac 2015-03-05): 884 // To compensate for lack of pricing, we 885 // are putting in arbitrary values that reflect the relative costs. 886 // This is justified by the fact that, in Juju, we use instance-by-region cost 887 // to identify least expensive machine with desired constraints. 888 "t1.micro": 1, 889 890 "m1.small": 2, 891 892 "m3.medium": 3, 893 "m3.large": 5, 894 "m3.xlarge": 7, 895 "m3.2xlarge": 9, 896 897 "c3.large": 4, 898 "c3.xlarge": 6, 899 "c3.2xlarge": 8, 900 "c3.4xlarge": 10, 901 "c3.8xlarge": 11, 902 }, 903 }