salt.states.ipmi
Manage IPMI devices over LAN
The following configuration defaults can be defined in the minion, master config or pillar:
ipmi.config: api_host: 127.0.0.1 api_user: admin api_pass: apassword api_port: 623 api_kg: None
Every call can override the config defaults:
ensure myipmi system is set to network boot: ipmi.boot_device: - name: network - api_host: myipmi.hostname.com - api_user: root - api_pass: apassword - api_kg: None ensure myipmi system is powered on: ipmi.power: - name: boot - api_host: myipmi.hostname.com - api_user: root - api_pass: apassword
-
Request power state change
- name =
default
-
network -- Request network boot
hd -- Boot from hard drive
safe -- Boot from hard drive, requesting 'safe mode'
optical -- boot from CD/DVD/BD drive
setup -- Boot into setup utility
default -- remove any IPMI directed boot device request
- kwargs
-
api_host=localhost
api_user=admin
api_pass=
api_port=623
api_kg=None
- name =
salt.states.ipmi.boot_device(name='default', **kwargs)
-
Request power state change
- name
-
- Ensure power state one of:
-
power_on -- system turn on
power_off -- system turn off (without waiting for OS)
shutdown -- request OS proper shutdown
reset -- reset (without waiting for OS)
boot -- If system is off, then 'on', else 'reset'
- wait
-
wait X seconds for the job to complete before forcing. (defaults to 300 seconds)
- kwargs
-
api_host=localhost
api_user=admin
api_pass=
api_port=623
api_kg=None
salt.states.ipmi.power(name='power_on', wait=300, **kwargs)
-
Remove user Delete all user (uid) records having the matching name.
- name
-
string name of user to delete
- channel
-
channel to remove user access from defaults to 14 for auto.
- kwargs
-
api_host=localhost
api_user=admin
api_pass=
api_port=623
api_kg=None
salt.states.ipmi.user_absent(name, channel=14, **kwargs)
-
Ensure IPMI user and user privileges.
- name
-
name of user (limit 16 bytes)
- uid
-
user id number (1 to 7)
- password
-
user password (limit 16 bytes)
- channel
-
ipmi channel defaults to 14 for auto
- callback
-
User Restricted to Callback
- False = User Privilege Limit is determined by the User Privilege Limit
-
parameter privilege_level, for both callback and non-callback connections.
- True = User Privilege Limit is determined by the privilege_level
-
parameter for callback connections, but is restricted to Callback level for non-callback connections. Thus, a user can only initiate a Callback when they 'call in' to the BMC, but once the callback connection has been made, the user could potentially establish a session as an Operator.
- link_auth
-
User Link authentication True/False user name and password information will be used for link authentication, e.g. PPP CHAP) for the given channel. Link authentication itself is a global setting for the channel and is enabled/disabled via the serial/modem configuration parameters.
- ipmi_msg
-
User IPMI Messaging True/False user name and password information will be used for IPMI Messaging. In this case, 'IPMI Messaging' refers to the ability to execute generic IPMI commands that are not associated with a particular payload type. For example, if IPMI Messaging is disabled for a user, but that user is enabled for activating the SOL payload type, then IPMI commands associated with SOL and session management, such as Get SOL Configuration Parameters and Close Session are available, but generic IPMI commands such as Get SEL Time are unavailable.) ipmi_msg
- privilege_level
-
callback
user
operator
administrator
proprietary
no_access
- kwargs
-
api_host=localhost
api_user=admin
api_pass=
api_port=623
api_kg=None
salt.states.ipmi.user_present(name, uid, password, channel=14, callback=False, link_auth=True, ipmi_msg=True, privilege_level='administrator', **kwargs)
© 2021 SaltStack.
Licensed under the Apache License, Version 2.0.
https://docs.saltproject.io/en/latest/ref/states/all/salt.states.ipmi.html