Hi Greg, Joe, Michal,
I'm curious about the plans around using the config server to make
available the IP address of RHEV and VMWare instances
Apologies if this is written down somewhere already, I just couldn't
find anything on it
How we are handling RHEV and VMWare has not yet been well documented mostly because we just worked it out.
We'll get it documented in the next few days.
AFAIK the plan is roughly:
- VM images will need the audrey_startup script installed and a file
which contains the IP address of the config server
Correct
- The VM's UUID will be available to the audrey script in the guest
via the DMI
Correct
- The script will do a PUT on config servers /params/.../$uuid and
config server will record the IP address
Correct
- This request cannot be authenticated, so there's an inherent hole
we're accepting here - anyone can do this PUT
Correct. For EC2 we add authentication but for RHEV-m and VMWare because
we can not inject user data into the launching instance authentication is not
feasible.
- deltacloud will also be configured with the address of config
server and will do a GET on /ip/.../$uuid if the driver doesn't
return the instance IP address
I will let Michal and Greg answer exactly how this will work.
In terms of how this will work in the upcoming release:
- How does the script get installed on the image? Will image factory
know that it needs to install aeolus-audrey_startup, or must the
user explicitly list the package in the template?
The user must explicitly list the required packages in the template that gets consumed by
image factory when it is building the image.
I believe this should be documented in the image factory docs. I had ping Ian McLeod
a while back about how to document this. I need to follow up with him. Please share
any thoughts you may have on where/how best to document this.
- Similarly, how does the config server address get on the image? I
see we have a aeolus-rhevm_config_server package containing the
config file. How is this RPM with the correct address? Is that the
users job? Or will image factory do it? Also, will image factory
know it needs to install this on RHEV/VMWare images?
It is the user job to build that RPM with the correct address prior to
building the image or modify an existing image to alter the contents
of the file that is installed by that package.
- How is config server set up? For now, will we just have
aeolus-configure set up a config server instance alongside
conductor? Since we're only using it for RHEV and VMWare, we can
assume those VMs can connect back to the machine conductor is
running on
I will let Greg answer this.
- Does conductor need to do a POST /configs/.../$uuid before starting
the instance in order for config server to record the IP address?
Will conductor gain that config server integration for the release?
If not, can we make the config server accept a PUT from VMs it
doesn't know anything about?
I will let Greg answer this.
- When will deltacloud get support for querying the IP address from
config server?
Soon I believe. I will let Michal reply though.