This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
cloudbaseinit-doc [2014/08/14 17:54] lcaplea |
cloudbaseinit-doc [2014/08/19 20:45] (current) |
||
---|---|---|---|
Line 9: | Line 9: | ||
##What can it do? <=> Capabilities | ##What can it do? <=> Capabilities | ||
The primary capabilities of the package consist of: | The primary capabilities of the package consist of: | ||
- | | + | |
- | *enabling password injection | + | |
- | *configuring static network | + | |
- | *setting up a hostname | + | * enabling password injection |
- | *attaching public keys to the users for their connection to the server; | + | |
- | the path at which they are found: C: | + | * configuring static network |
- | *execution of User Data scripts either from the setup[but how can you | + | |
+ | * setting up a hostname | ||
+ | |||
+ | * attaching public keys to the users for their connection to the server; the path at which they are found: | ||
+ | |||
+ | ``` | ||
+ | C: | ||
+ | ``` | ||
+ | * execution of User Data scripts either from the setup[but how can you | ||
do that from the setup?] or [?maybe] in the command line, or through a | do that from the setup?] or [?maybe] in the command line, or through a | ||
file path specified in the metadata service[ ? or provider]. | file path specified in the metadata service[ ? or provider]. | ||
##Which Windows distros can support it? <=> Availability | ##Which Windows distros can support it? <=> Availability | ||
- | So far, the Windows distributions that can support its installation are: [use bullets] | + | So far, the Windows distributions that can support its installation are: |
- | *Windows Server 2003 | + | |
- | *Windows Server 2003 R2 | + | * Windows Server 2003 |
- | *Windows Server 2008 | + | |
- | *Windows Server 2008 R2 | + | * Windows Server 2003 R2 |
- | *Windows Server 2012 | + | |
- | *Windows 7 | + | * Windows Server 2008 |
- | *Windows 8. | + | |
- | The addresses at which you can get your hand on the installer are the [x64 version](https:// | + | * Windows Server 2008 R2 |
+ | |||
+ | * Windows Server 2012 | ||
+ | |||
+ | * Windows 7 | ||
+ | |||
+ | * Windows 8. | ||
+ | The addresses at which you can acquire the installer are the [x64 version](https:// | ||
+ | |||
##Formats: | ##Formats: | ||
The user data provided with the metadata service should be written in one of these formats, as seen in the userdataplugins directory. | The user data provided with the metadata service should be written in one of these formats, as seen in the userdataplugins directory. | ||
Line 70: | Line 86: | ||
#### | #### | ||
- | [Here I think I'll explain the plugins individually.... except userdataplugins and userdata] | + | This directory holds the plugins for custom configurations; |
- | This directory holds the plugins for custom configurations; | + | |
####User Creation Plugin | ####User Creation Plugin | ||
- | createuser.py - creates | + | Creates |
####Volume Extension Plugin | ####Volume Extension Plugin | ||
- | extendvolumes.py - gets the list of volumes which need extending and interogates | + | Gets the list of volumes which need extending and interrogates |
####File Execution Plugin | ####File Execution Plugin | ||
- | fileexecutils.py - executes | + | Executes |
#### | #### | ||
- | licensing.py - plugin which activates Windows automatically | + | Plugin that activates Windows automatically |
####Local Script Execution Plugin | ####Local Script Execution Plugin | ||
- | localscripts.py - scripts are placed in a separate folder and get executed once the plugin is invoked | + | These scripts are taken from the config file, placed in a separate folder and executed once the plugin is invoked. |
####Maximum Transmission Unit Plugin | ####Maximum Transmission Unit Plugin | ||
- | mtu.py - helps configure the network interfaces MTU base on the values provided from the DHCP server | + | Helps configure the network interfaces MTU base on the values provided from the DHCP server. |
####Network Configuration Plugin | ####Network Configuration Plugin | ||
- | networkconfig.py - configures | + | Configures |
####Network Time Protocol Client Plugin | ####Network Time Protocol Client Plugin | ||
- | ntpclient.py - helps configure the NTP client time synchronization using the NTP servers provided via DHCP | + | Helps configure the NTP client time synchronization using the NTP servers provided via DHCP |
####Host Name Setting Plugin | ####Host Name Setting Plugin | ||
- | sethostname.py - takes the hostname from the metadata and truncates it if the string is larger than 15 characters for Netbios compatibility | + | Takes the hostname from the metadata and truncates it if the string is larger than 15 characters for Netbios compatibility |
#### | #### | ||
- | setpassword.py - sets the password provided in the configuration. If False or no password is provided a random one will be chosen. | + | Sets the password provided in the configuration. If False or no password is provided a random one will be chosen. |
####SSH Public Key Setting Plugin | ####SSH Public Key Setting Plugin | ||
- | sshpublickeys.py - sets a user's public key if specified in the metadata | + | Sets a user's public key if specified in the metadata |
####User Data Plugin | ####User Data Plugin | ||
- | userdata.py [I've explained some userdata | + | Here the userdata |
####User Data Script Execution | ####User Data Script Execution | ||
- | userdatautils.py - executes | + | Executes |
####WinRM Certificate Authentication Plugin | ####WinRM Certificate Authentication Plugin | ||
- | winrmcertificateauth.py - plugin | + | Plugin |
####WinRM Listener Plugin | ####WinRM Listener Plugin | ||
- | winrmlistener.py - enables | + | Enables |
## | ## | ||
Line 123: | Line 138: | ||
The services which cloudbase-init can support are, in the order in which they are accessed: | The services which cloudbase-init can support are, in the order in which they are accessed: | ||
| | ||
- | ###Config Drive Service: | + | ###Config Drive Service: |
- | + | ||
[here I have used some sentences from the config-drive documentation on openstack and the cloud-init] | [here I have used some sentences from the config-drive documentation on openstack and the cloud-init] | ||
As its name suggests, the Config Drive enables the configuration of a newly created instance at boot time. Its purpose is to retrieve metadata without a network connection being required, but by simply mounting the disk onto the operating system and reading the available information. The operating system [Windows distribution] must support mounting of an ISO9660 or VFAT file system. [as a side note, all Windows distributions, | As its name suggests, the Config Drive enables the configuration of a newly created instance at boot time. Its purpose is to retrieve metadata without a network connection being required, but by simply mounting the disk onto the operating system and reading the available information. The operating system [Windows distribution] must support mounting of an ISO9660 or VFAT file system. [as a side note, all Windows distributions, | ||
Line 147: | Line 161: | ||
Also, one can retrieve the metadata by accessing the following address from inside the instance' | Also, one can retrieve the metadata by accessing the following address from inside the instance' | ||
[http:// | [http:// | ||
- | [show content] | ||
In case there is userdata provided, it can be accessed at this URL e.g.: [http:// | In case there is userdata provided, it can be accessed at this URL e.g.: [http:// | ||
- | [show content] | ||
- | ###EC2 Service:[when accessing the magic ip there might be necessary to type in the password] | + | ###EC2 Service: |
- | The way in which the metadata is accessed through EC2 does not differ much from HTTP. The datasources are retrieved by accessing the same IP, 169.254.169.254 and using the same addresses for accessing the metadata, | + | The way in which the metadata is accessed through EC2 does not differ much from HTTP. The datasources are retrieved by accessing the same IP, 169.254.169.254 and using the same addresses for accessing the metadata, |
userdata and latest versions. There might be slight differences in the information the metadata provides. | userdata and latest versions. There might be slight differences in the information the metadata provides. | ||
- | [TODO MaaS] | + | ###MaaS Service: |
+ | The API for the MaaS service resembles that of EC2 and HTTP by having in the main folder the versions list which can be further accessed to display the metadata fields. The difference between the methods is the accessed IP address; while EC2 and HTTP use a static IP for providing the metadata, MaaS sets its location during the installation of the operating system on the instance through preseeds. | ||
| | ||
## | ## | ||
Line 179: | Line 192: | ||
There is also the possibility to specify the network adapter to be configured: | There is also the possibility to specify the network adapter to be configured: | ||
- | ``` | + | ``` |
- | | + | msiexec /i CloudbaseInitSetup.msi /qn /l*v log.txt NETWORKADAPTERNAME=" |
- | | + | ``` |
- | + | ||
</ | </ |