The Saltify driver is a new, experimental driver for installing Salt on existing machines (virtual or bare metal).
The Saltify driver has no external dependencies.
Because the Saltify driver does not use an actual cloud provider host, it has a simple provider configuration. The only thing that is required to be set is the driver name, and any other potentially useful information, like the location of the salt-master:
# Note: This example is for /etc/salt/cloud.providers file or any file in
# the /etc/salt/cloud.providers.d/ directory.
my-saltify-config:
minion:
master: 111.222.333.444
provider: saltify
Saltify requires a profile to be configured for each machine that needs Salt
installed. The initial profile can be set up at /etc/salt/cloud.profiles
or in the /etc/salt/cloud.profiles.d/
directory. Each profile requires
both an ssh_host
and an ssh_username
key parameter as well as either
an key_filename
or a password
.
Profile configuration example:
# /etc/salt/cloud.profiles.d/saltify.conf
salt-this-machine:
ssh_host: 12.34.56.78
ssh_username: root
key_filename: '/etc/salt/mysshkey.pem'
provider: my-saltify-config
The machine can now be "Salted" with the following command:
salt-cloud -p salt-this-machine my-machine
This will install salt on the machine specified by the cloud profile,
salt-this-machine
, and will give the machine the minion id of
my-machine
. If the command was executed on the salt-master, its Salt
key will automatically be signed on the master.
Once a salt-minion has been successfully installed on the instance, connectivity to it can be verified with Salt:
salt my-machine test.ping
The settings explained in the section above may also be set in a map file. An example of how to use the Saltify driver with a map file follows:
# /etc/salt/saltify-map
make_salty:
- my-instance-0:
ssh_host: 12.34.56.78
ssh_username: root
password: very-bad-password
- my-instance-1:
ssh_host: 44.33.22.11
ssh_username: root
password: another-bad-pass
Note: When using a cloud map with the Saltify driver, the name of the profile
to use, in this case make_salty
, must be defined in a profile config. For
example:
# /etc/salt/cloud.profiles.d/saltify.conf
make_salty:
provider: my-saltify-config
The machines listed in the map file can now be "Salted" by applying the following salt map command:
salt-cloud -m /etc/salt/saltify-map
This command will install salt on the machines specified in the map and will
give each machine their minion id of my-instance-0
and my-instance-1
,
respectively. If the command was executed on the salt-master, its Salt key will
automatically be signed on the master.
Connectivity to the new "Salted" instances can now be verified with Salt:
salt 'my-instance-*' test.ping