Differences

This shows you the differences between two versions of the page.

Link to this comparison view

public:experimenters:start [2014/09/23 09:44]
ibaldin [Selecting which ORCA actor to request resources from]
public:experimenters:start [2017/10/19 09:31] (current)
ibaldin [Selecting which ORCA actor to request resources from]
Line 8: Line 8:
 ExoGENI offers two basic classes of compute slivers: [[public:experimenters:resource_types:start | VMs and bare-metal servers]]. VMs are offered in a number of subclasses, which differ from one another by the number of CPU cores, amount of RAM and amount of disk made available in each; VM classification is based on the EC2 instance type hierarchy adapted to the ExoGENI hardware and OpenStack.   ExoGENI offers two basic classes of compute slivers: [[public:experimenters:resource_types:start | VMs and bare-metal servers]]. VMs are offered in a number of subclasses, which differ from one another by the number of CPU cores, amount of RAM and amount of disk made available in each; VM classification is based on the EC2 instance type hierarchy adapted to the ExoGENI hardware and OpenStack.  
  
-VM [[public:experimenters:images | images]] can be built by experimenters off-line (e.g. using the ExoGENI image [[public:experimenters:playpen | playpen]]). In contrast, a limited number of bare-metal images is periodically synchronized out-of-band between the racks and a central repository. These are provided as-is, with no customization options, other than post-installing needed packages in a booted sliver.+VM [[public:experimenters:images | images]] can be built by experimenters off-line. In contrast, a limited number of bare-metal images is periodically synchronized out-of-band between the racks and a central repository. These are provided as-is, with no customization options, other than post-installing needed packages in a booted sliver.
  
 Experimental slices can have complex topologies of compute instances/slivers that span one or more ExoGENI (and non-ExoGENI) sites. Experimenters can get resources from [[public:experimenters:orca_sm|specific racks]], however the true power of ExoGENI is in the ability to automatically tie resources of multiple racks in Layer2 topologies. This is accomplished by submitting slice requests to [[public:experimenters:orca_sm|ExoSM]]. Experimental slices can have complex topologies of compute instances/slivers that span one or more ExoGENI (and non-ExoGENI) sites. Experimenters can get resources from [[public:experimenters:orca_sm|specific racks]], however the true power of ExoGENI is in the ability to automatically tie resources of multiple racks in Layer2 topologies. This is accomplished by submitting slice requests to [[public:experimenters:orca_sm|ExoSM]].
Line 26: Line 26:
   - ExoGENI offers two broad categories of compute nodes. You can get [[:public:experimenters:resource_types:start | KVM virtual machines]] of multiple sizes and [[:public:experimenters:resource_types:start | bare-metal nodes]]. This contrasts with e.g. OpenVZ or other container types available in other testbeds. Compute instances in ExoGENI can behave differently, than in other testbeds    - ExoGENI offers two broad categories of compute nodes. You can get [[:public:experimenters:resource_types:start | KVM virtual machines]] of multiple sizes and [[:public:experimenters:resource_types:start | bare-metal nodes]]. This contrasts with e.g. OpenVZ or other container types available in other testbeds. Compute instances in ExoGENI can behave differently, than in other testbeds 
      * They are well-isolated from other slices and represent completely separate compute nodes with their own operating system, on which the slice owner is root.      * They are well-isolated from other slices and represent completely separate compute nodes with their own operating system, on which the slice owner is root.
-     * Command-line reboots are not guaranteed to succeed (however they do if no errors in boot process are present). 
   - ExoGENI does not oversubscribe its resources: each rack site has a certain number of CPU cores dedicated to launching virtual machines. Each VM can have [[:public:experimenters:resource_types:start | multiple cores]]. When all the cores in the rack are exhausted, no more compute instances can be created on this rack. This is done to improve performance isolation between experiments.   - ExoGENI does not oversubscribe its resources: each rack site has a certain number of CPU cores dedicated to launching virtual machines. Each VM can have [[:public:experimenters:resource_types:start | multiple cores]]. When all the cores in the rack are exhausted, no more compute instances can be created on this rack. This is done to improve performance isolation between experiments.
   - ExoGENI is a [[:public:experimenters:images | 'Bring Your Own Image' (BYOI) testbed]]. You can build your own image outside the testbed, post it on any webserver (or use Dropbox), create an image description file and launch your slice with this image. ExoGENI **does not have its own image hosting service**. While we offer a number of images to the community, these are merely examples. We encourage experimenters to build their own images, upload them to their own webservers and [[public:experimenters:images | list them with us]].    - ExoGENI is a [[:public:experimenters:images | 'Bring Your Own Image' (BYOI) testbed]]. You can build your own image outside the testbed, post it on any webserver (or use Dropbox), create an image description file and launch your slice with this image. ExoGENI **does not have its own image hosting service**. While we offer a number of images to the community, these are merely examples. We encourage experimenters to build their own images, upload them to their own webservers and [[public:experimenters:images | list them with us]]. 
Line 57: Line 56:
  
 Feature comparison matrix Feature comparison matrix
-^ Feature ^ Flukes ^ Omni ^ Flack ^ GENI Portal|+^ Feature ^ Flukes ^ Omni ^ Flack/Jacks ^ GENI Portal|
 |Installation | JNLP (downloadable), requires Java | Requires Python | Browser-based (Flash)| Browser-based (Flash) | |Installation | JNLP (downloadable), requires Java | Requires Python | Browser-based (Flash)| Browser-based (Flash) |
 |Interface | Graphical | Command-line | Graphical | Graphical | |Interface | Graphical | Command-line | Graphical | Graphical |
Line 65: Line 64:
 |ExoGENI any-to-any VLAN stitching between racks | Yes | Yes | Yes | Yes | |ExoGENI any-to-any VLAN stitching between racks | Yes | Yes | Yes | Yes |
 |[[https://geni-orca.renci.org/trac/wiki/flukes#Nodes | ExoGENI nodegroups]] | Yes | No | No | No | |[[https://geni-orca.renci.org/trac/wiki/flukes#Nodes | ExoGENI nodegroups]] | Yes | No | No | No |
-|[[ https://geni-orca.renci.org/trac/wiki/flukes#Slicemodifications | ExoGENI slice modify]] | Yes | No | No | No |+|[[ http://www.exogeni.net/2016/01/using-exogeni-slice-modifydynamic-slice-capabilities/ | ExoGENI slice modify]] | Yes | No | No | No | 
 +|[[ http://www.exogeni.net/2016/11/using-exogeni-slice-stitching-capabilities/ | Using ExoGENI Slice-to-slice Stitching capabilities]]| Yes | No | No | No |
 |[[ https://geni-orca.renci.org/trac/wiki/velocity-templates | ExoGENI templated post-boot scripts]] | Yes | Yes ((manual rspec edits and using <pbs:services_post_boot_script type="velocity"> service)) | Partial (('execute' service allows for variable substitutions, but does not allow macros and automatic code generation)) | Partial (('execute' service applied in ExoGENI allows for variable substitutions, but does not allow macros and automatic code generation)) | |[[ https://geni-orca.renci.org/trac/wiki/velocity-templates | ExoGENI templated post-boot scripts]] | Yes | Yes ((manual rspec edits and using <pbs:services_post_boot_script type="velocity"> service)) | Partial (('execute' service allows for variable substitutions, but does not allow macros and automatic code generation)) | Partial (('execute' service applied in ExoGENI allows for variable substitutions, but does not allow macros and automatic code generation)) |
 |[[https://geni-orca.renci.org/trac/wiki/flukes#StitchPorts | Stitching to campus networks ]] | Yes | No | No | No | |[[https://geni-orca.renci.org/trac/wiki/flukes#StitchPorts | Stitching to campus networks ]] | Yes | No | No | No |
-|Storage slivering ((creating slivers of iSCSI storage in your slice)) | Yes | No | No | No |+|Storage slivering ((creating slivers of up to several TB of iSCSI storage in your slice)) | Yes | No | No | No |
 |Multi-point Layer2 Connections | Yes | Partial((It is possible to express a request in RSpec for a multipoint connection, but it is not possible to produce a manifest)) | No | No | |Multi-point Layer2 Connections | Yes | Partial((It is possible to express a request in RSpec for a multipoint connection, but it is not possible to produce a manifest)) | No | No |
 |Automatic IP address assignment | Yes | No | No ((InstaGENI and Emulab substrates are capable of automatic IP address assignment, however it is not the function of Flack.))  | No | |Automatic IP address assignment | Yes | No | No ((InstaGENI and Emulab substrates are capable of automatic IP address assignment, however it is not the function of Flack.))  | No |
Line 105: Line 105:
 ===== Selecting which ORCA actor to request resources from ===== ===== Selecting which ORCA actor to request resources from =====
  
-ORCA actors named 'SM' (Service Manager) are available from [[public:experimenters:orca_sm | multiple locations]]. They implement the same logic and present similar API (ORCA native API, usable by Flukes and GENI AM API, usable by Omni and Flack), but have different levels of resource visibility. Each rack presents an SM actor that has visibility only for the resources in that rack. An actor called 'ExoSM' has global visibility across all racks and all interconnecting networks between them. +ORCA controllers, to which slice requests can be submitted are available from [[public:experimenters:orca_sm | multiple locations]]. They implement the same logic and present similar API (ORCA native API, usable by Flukes and GENI AM API, usable by Omni and GENI Portal/Jacks), but have different levels of resource visibility. Each rack presents a controller that has visibility only for the resources in that rack. An actor called 'ExoSM' has global visibility across all racks and all interconnecting networks between them. 
  
-Rack SMs can create topologies only within a single rack. ExoSM can create topologies consisting of resources from many ExoGENI racks. Bare-metal nodes are available only through ExoSM. +Rack controllers can create topologies only within a single rack. ExoSM can create topologies consisting of resources from many ExoGENI racks. Bare-metal nodes are available only through ExoSM. 
  
 Reasons to use ExoSM: Reasons to use ExoSM:
Navigation
Print/export