SSH Provider (aka Sherpa)

Registered by Mark Ramm

[GOAL]
Allow the re-use of machines which have been manually provisioned, and even bootstrapping a whole environment without the need for an automatic machine provisioner.

[RATIONALE]
Many people would try Juju on existing hardware but the complexity of setting up their own "cloud like provisioning system" is too high. They should be able to use juju.

Many people have complex provisioning requests that are outside of juju's current automation capabilities, they should be able to use juju too.

Blueprint information

Status:
Complete
Approver:
Mark Ramm
Priority:
Undefined
Drafter:
None
Direction:
Needs approval
Assignee:
Frank Mueller
Definition:
Obsolete
Series goal:
None
Implementation:
Unknown
Milestone target:
None
Completed by
Katherine Cox-Buday

Related branches

Sprints

Whiteboard

[USER STORIES]

Fred wants to use bootstrap a juju environment onto a pool of existing machines using SSH.

[ASSUMPTIONS]

All machines can network to the bootstrap nodes. They don't need to see each other.
A networked drive/(s)ftp/other, accessible to all machines, is used to back the storage interface.
The provider does not start/stop machines. Machines are manually provisioned.
The machines need to have a public address if services are to be exposed.

[RISKS]

firewall

[IN SCOPE]
[OUT OF SCOPE]

The provider will not open ports on the target machines as they may be running any arbitary firewall.

[USER ACCEPTANCE]
[RELEASE NOTE/BLOG]

(?)

Work Items

Work items:
Nil provider skeleton size 4: TODO
Scripts to determine manually provisioned machine series, arch, addresses size 4: TODO
Juju command to ssh to machine, run scripts, add machine to state, start agent on machine size 4: TODO
Create storage implementation to be plugged into nil provider size 4: TODO
Juju command to ssh to machine, run scripts, set up storage, bootstrap state server size 8: TODO

This blueprint contains Public information 
Everyone can see this information.