Difference between revisions of "GuestAgent"
Line 1: | Line 1: | ||
__NOTOC__ | __NOTOC__ | ||
− | + | <!-- ##(see the [[SpecSpec]] for an explanation) --> | |
+ | * '''Launchpad Entry''': [[NovaSpec]]:resize-servers | ||
+ | * '''Created''': 2010-09-01 | ||
+ | * '''Contributors''': [[JesseAndrews]] | ||
− | Live Notes | + | == Summary == |
+ | |||
+ | The feature will allow communication with a guest agent from compute node controller. This allows cloud controller APIs to be added for user controlled password reset, settings ips, ... - allowing windows support. | ||
+ | |||
+ | == Design Summit Notes == | ||
+ | |||
+ | Live Notes were be taken for this topic at: http://etherpad.openstack.org/GuestAgent | ||
=== Current architecture of the Rackspace Guest Agents === | === Current architecture of the Rackspace Guest Agents === | ||
Line 19: | Line 28: | ||
* File injection | * File injection | ||
− | === | + | === Considerations === |
+ | |||
+ | 1. What happens when a client/customer kills the guest agent or disables the startup? | ||
+ | 2. Agents should be hypervisor agnostic/support many hypervisors | ||
+ | |||
+ | <!-- ##(see the [[SpecSpec]] for an explanation) --> | ||
+ | * '''Launchpad Entry''': [[NovaSpec]]:resize-servers | ||
+ | * '''Created''': 2010-09-01 | ||
+ | * '''Contributors''': [[JesseAndrews]] | ||
+ | |||
+ | == Summary == | ||
+ | |||
+ | The feature will allow communication with a guest agent from compute node controller. This allows cloud controller APIs to be added for user controlled password reset, settings ips, ... - allowing windows support. | ||
+ | |||
+ | == Release Note == | ||
+ | |||
+ | Support has been added to [[OpenStack]] compute host agent code to support communication with guest agents. | ||
+ | |||
+ | == Rationale == | ||
+ | |||
+ | Windows instances cannot be configured similarly to linux machines. Supporting them as well as tools that provide for better user experience (such as password reset) provide rackspace/slicehost parity. | ||
+ | |||
+ | == User stories == | ||
+ | |||
+ | A user forgets their password. Rather than having to use rescue mode to reset the password, the user may have the password reset by using an API. | ||
+ | |||
+ | == Assumptions == | ||
+ | |||
+ | * guest agent code is available and licensed under apache (where?) | ||
+ | |||
+ | == Design == | ||
+ | |||
+ | To communicate with guest agents, we use the [[XenStore]] in [[XenServer]]. | ||
+ | |||
+ | == Implementation == | ||
+ | |||
+ | API additions: | ||
+ | * reset password | ||
+ | |||
+ | Messages are written to [[XenStore]] using xenstore-write for each instance via /local/domain/(domid)/data/guest/(message_uuid) | ||
− | == | + | == Test/Demo Plan == |
− | + | ---- | |
− | + | [[Category:Spec]] |
Revision as of 07:10, 3 September 2010
- Launchpad Entry: NovaSpec:resize-servers
- Created: 2010-09-01
- Contributors: JesseAndrews
Summary
The feature will allow communication with a guest agent from compute node controller. This allows cloud controller APIs to be added for user controlled password reset, settings ips, ... - allowing windows support.
Design Summit Notes
Live Notes were be taken for this topic at: http://etherpad.openstack.org/GuestAgent
Current architecture of the Rackspace Guest Agents
App -> Host (XenStore) <-> Guest Agent
Current commands on Guest Agents (Linux/Windows):
- Get current version
- Reset password
- Ready/Available?
- Reset network
- Update Agent
- Update XenTools (windows only)
- KMS Licensing (windows only)
- Initiate Key for encryption mechanism of password reset
- File injection
Considerations
1. What happens when a client/customer kills the guest agent or disables the startup? 2. Agents should be hypervisor agnostic/support many hypervisors
- Launchpad Entry: NovaSpec:resize-servers
- Created: 2010-09-01
- Contributors: JesseAndrews
Summary
The feature will allow communication with a guest agent from compute node controller. This allows cloud controller APIs to be added for user controlled password reset, settings ips, ... - allowing windows support.
Release Note
Support has been added to OpenStack compute host agent code to support communication with guest agents.
Rationale
Windows instances cannot be configured similarly to linux machines. Supporting them as well as tools that provide for better user experience (such as password reset) provide rackspace/slicehost parity.
User stories
A user forgets their password. Rather than having to use rescue mode to reset the password, the user may have the password reset by using an API.
Assumptions
- guest agent code is available and licensed under apache (where?)
Design
To communicate with guest agents, we use the XenStore in XenServer.
Implementation
API additions:
- reset password
Messages are written to XenStore using xenstore-write for each instance via /local/domain/(domid)/data/guest/(message_uuid)