[[PageOutline]] = GENI Aggregates = A [wiki:GENIGlossary#Aggregate GENI aggregate] provides resources to GENI experimenters. There are different types of aggregates. Some aggregates are [wiki:GENIRacksHome GENI Racks] that provide compute and network resources available, some such as [wiki:GeniAggregate/I2AL2S AL2S] and [wiki:GeniAggregate/MAX MAX] provide wired network resources and others such as [wiki:GeniAggregate/NYUWiMAX NYU WiMAX] and [wiki:GeniAggregate/OrbitWirelessTestbed Orbit] provide wireless resources. For a list of all GENI aggregates, see [wiki:GeniAggregate#ListofGENIaggregates list of aggregates]. == Picking aggregates == If you want to check the status of specific racks you can go to this page: https://portal.geni.net/amstatus.php, another useful status page: https://flsmonitor.fed4fire.eu/index_international.php You may want to take the following into consideration while picking aggregates for your experiment: * ''Aggregate type.'' The most widely deployed GENI resources are [wiki:GENIRacksHome#InstaGENIRacks InstaGENI] and [wiki:GENIRacksHome#ExoGENIRacks ExoGENI] racks that provide compute and networking resources. Look [wiki:#ExperimenterRelevantDifferencesbetweenInstaGENIandExoGENIRacks here] for major differences between these two rack types. * ''Aggregate location.'' The geographical coordinates of aggregates can be found in their advertisement [wiki:GENIGlossary#RSpec RSpecs]. * ''Support for stitching.'' Aggregates that support [wiki:GeniNetworkStitching GENI stitching] are listed at [wiki:GeniNetworkStitchingSites GENI network stitching sites]. * ''Virtual machine vs. raw-PC''. Most racks provide virtual machines and raw-PCs. As far as possible you should use virtual machines as they are many more of them and your resource reservation is more likely to succeed. * ''Resource availability.'' Some aggregates are more heavily loaded than others. For current usage information on InstaGENI racks, see [wiki:ExpGraphs]. == Understanding Expiration == === Resource expiration === GENI [wiki:GENIGlossary#Slice slices] and the resources allocated to your slice (called [wiki:GENIGlossary#Sliver slivers]) have expiration times associated with them. You can extend this expiration using experimenter tools such as Omni, the GENI Portal or the GENI Desktop. Note that: * Sliver expiration times cannot go beyond the slice expiration times. So be sure to extend the slice expiration time before you extend the sliver expiration time. Some tools such as the GENI Portal allow you to extend slice and sliver expiration at the same time. * Different aggregates have different initial expiration times and allow you to extend resources by different amounts of time. See the table at [wiki:GENIResources#ExpirationbyAggregatetype] for initial and max expiration times allowed by different aggregates. ==== Using Omni to find and extend slice and sliver expiration times ==== If you are using the Omni experimenter tool, you can use the following command to find slice expiration time: {{{ $ omni print_slice_expiration my-slice-name ... Result Summary: Slice urn:publicid:IDN+ch.geni.net:ln-test+slice+my-slice-name expires on 2015-02-23 20:47:28 UTC }}} From the above result, you can see that the slice named 'my-slice-name' expires on '2015-02-23 20:47:28 UTC'. You can expand the amount of time that you request resources by renewing the slice, as follows: {{{ $ omni renewslice my-slice-name 2015-02-28 }}} To find the expiration date for a sliver, you can use omni or stitcher as follows: {{{ $omni --useSliceAggregates sliverstatus slice-name -o .... Slice slice-name at AM ucd-eg has overall SliverStatus: ready. Resources in slice slice-name at AM ucd-eg expire at 2015-03-02T17:48:44 UTC. <<---- Expiration date for sliver Saved sliverstatus on slice-name at AM ucd-eg to file slice-name-sliverstatus-exogeni-net-ucdvmsite.json. Slice slice-name at AM al2s has overall SliverStatus: ready. Resources in slice slice-name at AM al2s expire at 2015-08-20T17:47:53 UTC. <<---- Expiration date for sliver Saved sliverstatus on slice-name at AM al2s to file slice-name-sliverstatus-al2s-internet2-edu.json. Slice slice-name at AM illinois-ig has overall SliverStatus: ready. Resources in slice slice-name at AM illinois-ig expire at 2015-05-17T17:48:46 UTC. <<---- Expiration date for sliver Saved sliverstatus on slice-name at AM illinois-ig to file slice-name-sliverstatus-instageni-illinois-edu.json. Returned status of slivers on 5 of 5 possible aggregates. }}} From the above result, you can see that the slice named 'my-slice-name' expires on '2015-02-23 20:47:28 UTC'. You can expand the amount of time that you request resources by renewing the slice, as follows: {{{ $ omni renewslice my-slice-name 2015-02-28 }}} === Slivers === Resources requested at an individual aggregate are part of a sliver. A sliver can contain both compute and network resources that are part of your slice. Note that the slice expiration is not the same as the sliver expiration, and that each aggregate has its own expiration limit, which may be significantly different than the slice expiration time. To find the expiration date for a sliver, you can use omni or stitcher as follows {{{ $stitcher --useSliceAggregates sliverstatus slice-name -o .... Slice slice-name at AM ucd-eg has overall SliverStatus: ready. Resources in slice slice-name at AM ucd-eg expire at 2015-03-02T17:48:44 UTC. <<---- Expiration date for sliver Saved sliverstatus on slice-name at AM ucd-eg to file slice-name-sliverstatus-exogeni-net-ucdvmsite.json. Slice slice-name at AM al2s has overall SliverStatus: ready. Resources in slice slice-name at AM al2s expire at 2015-08-20T17:47:53 UTC. <<---- Expiration date for sliver Saved sliverstatus on slice-name at AM al2s to file slice-name-sliverstatus-al2s-internet2-edu.json. Slice slice-name at AM illinois-ig has overall SliverStatus: ready. Resources in slice slice-name at AM illinois-ig expire at 2015-05-17T17:48:46 UTC. <<---- Expiration date for sliver Saved sliverstatus on slice-name at AM illinois-ig to file slice-name-sliverstatus-instageni-illinois-edu.json. Returned status of slivers on 5 of 5 possible aggregates. }}} === Expiration by Aggregate type === Initial slice expiration is 7 days from creation, but can be renewed by up to 185 days at a time. This table captures the initial expiration times and maximum renewal times by aggregate type. You can renew your slices and resources multiple times. || Aggregate Resource Type || Initial Expiration || Max Renewal Time || || InstaGENI VM || 6 days(1) || 90 days || || InstaGENI Raw PC || 7 days(1) || 90 days || || ExoGENI VM || 6 days || 14 days || || ExoGENI Bare Metal || 7 days || 14 days || || ProtoGENI Utah VM || 1 day || 5 days || || ProtoGENI Utah Raw PC || 1 day || 5 days || || OpenGENI VM || 7 day || 185 days || || AL2S network path || 7 days || 185 days || || MAX || 6 days || 180 days || Note (1): Expiration may vary for InstaGENI development racks, check your sliver to determine your expiration date.[[BR]] === Experimenter Relevant Differences between InstaGENI and ExoGENI Racks === || || InstaGENI || ExoGENI || || Servers per rack || 5 == Aggregate categories in the GENI Portal == GENI aggregates are categorized as follows. You can select aggregate by category in tools such as the GENI Portal. * ''GENI Production.'' Resources tested and operated using GENI processes and procedures, under the GENI Aggregate Provider Agreement. Maintenance outages are typically scheduled and announced on the experimenter-ops mailing list. GENI Production aggregates are listed in the [wiki:GENIProduction GENI Production Resources] page. * ''GENI Experimental.'' Resources used for early deployment of new features and may not have completed testing. Outages are likely to be more frequent and may not be scheduled or announced. * ''Other Federated.'' Resources made available by agreement with GENI partner organizations, including international partners. They are operated under their own policies and procedures. {{{ #!comment This page is an index of all existing GENI aggregates. See each page for details on usage policies. Production aggregates are listed on the [wiki:GENIProduction GENI Production Resources] page and have successfully undergone the release process defined in the [wiki:ProductionRelease GENI Production Release] page. See the [wiki:GENIResources GENI Resources] page for experimenter information about ExoGENI, InstaGENI and other aggregates types. Historical GENI aggregates are [wiki:DecommissionedGeniAggregate decommissioned]. Aggregate providers may use the [wiki:InstaGENITemplateAggregate InstaGENI template] to create a page for new InstaGENI Compute Resources or InstaGENI FOAM aggregates, or the [wiki:ExoGENITemplateAggregate ExoGENI template] to create a page for new ExoGENI Compute Resources or ExoGENI FOAM aggregates, or the [wiki:OpenGENITemplateAggregate OpenGENI template]. For other types of new aggregates, you may use [wiki:TemplateAggregatePage this template]. }}} {{{ #!comment = GENI Resources for Experimenters = There are various aggregate types in the GENI environment, some make compute and network resources available, such as InstaGENI, ExoGENI, and OpenGENI; while others make network-only resources available, such a [wiki:GeniAggregate/I2AL2S AL2S] and [wiki:GeniAggregate/MAX MAX]. See the [wiki:GeniAggregate GENI Aggregates] page for a list of all available GENI Aggregates. The [wiki:GENIExperimenter Experimenter] pages have more information about how to access resources. This page documents some simple Omni tool commands for checking slice and sliver status. == Slices == In GENI, aggregates that supply compute resources generally make available both virtual and bare metal nodes (check the [wiki:GeniAggregate GENI Aggregates] page for details that vary for some aggregates). You may request any of these resources as part of a slice, which is a container for all your requested resources. Each slice has an expiration date associated with it. When the slice expires, all your resources are released. The slice expiration defines to the amount of time your resources are allocated to you. Note, that the slice expiration is an overall expiration, but does not necessarily reflect the duration of your reservation at each aggregate. If you want to know when your slice expires, you can use the omni command as follows: {{{ $ omni print_slice_expiration my-slice-name ... Result Summary: Slice urn:publicid:IDN+ch.geni.net:ln-test+slice+my-slice-name expires on 2015-02-23 20:47:28 UTC }}} }}}