This collection includes Ansible core modules and plugins needed to provision and manage Dell EMC Smartfabric Services running Enterprise OS10 Distribution by Dell Technologies. Sample playbooks and documentation are also included to show how the collections can be used.
This module facilitates the configuration of SFS port properties and its attributes through REST calls. The sfs-port-properties uses REST APIs to configure Dell EMC SmartFabric Services. This module supports the UPDATE operation.
The collections tarball built can be installed locally using the following commands: ansible-galaxy collection build
Once the collections tarball get published locally, install your collection from the tarball using the command ansible-galaxy collection install dellemc-sfs-1.0.0.tar.gz
Ansible version 2.10 or later. Enterprise sfs Distribution by Dell Technologies version 3.0 or later. Note: Community sfs versions that include the Management Framework container should work as well, however, this collection has not been tested nor validated with community versions, nor is it supported.
Variables and values are case-sensitive
Key | Type | Description | Support |
---|---|---|---|
description | string | Configures the port description | Dell Solutions |
node_id | string | the device service tag | Dell Solutions |
admin_status | string:Disabled, Enabled* | Configures the port admin status | Dell Solutions |
mtu | integer | Configures port MTU; range is 1312-9216 | Dell Solutions |
auto_neg | string:Disabled, Enabled* | Configures auto-negotiation | Dell Solutions |
configured_speed | integer | Configures the port configured speed | Dell Solutions |
name | string | Configures the port name | Dell Solutions |
auto_neg | string:Disabled, Enabled* | Configures auto-negotiation | Dell Solutions |
Ansible Dell EMC SmartFabric Services require connection information to establish communication with the nodes in your inventory. This information can exist in the Ansible directories, or inventory or in the playbook itself.
Key | Required | Choices Description |
---|---|---|
ansible_host | yes | Specifies the hostname or IP address to connect to the remote device over the specified transport |
ansible_user | yes | Specifies the username that authenticates the connection to the remote device |
ansible_password | yes | Specifies the password that authenticates the connection to the remote device |
ansible_network_os | yes | Specifies the network type for the connection to the remote device |
ansible_connection | yes | Specifies the connection plugin |
Inventory
[os10]
node1 ansible_host=100.104.97.81
[os10:vars]
ansible_ssh_user=admin
ansible_ssh_pass=admin
ansible_network_os=dellemc.sfs.sfs
ansible_connection=ansible.netcommon.httpapi
ansible_httpapi_use_ssl=yes
ansible_httpapi_validate_certs=no
ansible_command_timeout=30
ansible_python_interpreter=/usr/bin/python3
Playbook.yaml
- hosts: all
gather_facts: false
collections:
- dellemc.sfs
tasks:
- name: Provision Configs
block:
- name: Port property configuration
dellemc.sfs.sfs_port_properties:
name: "ethernet1/1/8"
target_port: "OS10SIM:ethernet1/1/8"
description: "Interface_8"
node_id: "OS10SIM"
admin_status: "Enabled"
mtu: 9216
auto_neg: "Enabled"
configured_speed: 0
state: 'present'
register: result
- name: Debug the result
debug: var=result
Run
ansible-playbook -i inventory Playbook.yaml