maxlareo.cumuluslinux
CumulusLinux
NCLUモジュールを通じてCumulus Linuxを管理するためのAnsibleロールです。
要件
Cumulus Linuxバージョン3.2以上のみ、以前のリリースはNCLUをサポートしていません。
ロール変数
変数 | 説明 | 型 | デフォルト |
---|---|---|---|
cl_license |
CumulusLinuxライセンス | 文字列 | '' |
cl_hostname |
デバイスのホスト名 | 文字列 | cumulus |
cl_time_zone |
タイムゾーン | 文字列 | Etc/UTC |
cl_time_ntp_servers |
NTPサーバーのリスト、iburstオプションを追加可能 | 配列 | [] |
cl_time_ntp_source |
NTPソースインターフェース | 文字列 | eth0 |
cl_locales |
locale-genからロケールを有効にする | 配列 | [] |
cl_dns_nameserver |
DNSネームサーバー、ipv4およびipv6の二つのサブ配列 | ハッシュ | {} |
cl_commands |
再帰的ルックアップを使用したAnsible ncluの原子コマンド、追加/削除アクションを許可、最初に実行 | ハッシュ | {} |
cl_snmp |
再帰的ルックアップを使用して、net add snmp-server からsnmp-server設定 |
ハッシュ | {} |
cl_syslog |
ipv4およびipv6の二つのサブ配列のsyslog設定、各エントリにはIP + ポート、オプションでプロトコル(udp/tcp)が必要 | ハッシュ | {} |
cl_interface |
再帰的ルックアップを使用してnet add interface からのインターフェース設定 |
ハッシュ | {} |
cl_bond |
再帰的ルックアップを使用してnet add bond からのボンド設定 |
ハッシュ | {} |
cl_vlan |
再帰的ルックアップを使用してnet add vlan からのVLAN設定 |
ハッシュ | {} |
依存関係
なし
カスタムルックアップ
再帰的
AnsibleでCumulus Linuxのインターフェース構成を管理するために、ハッシュから変数を構築できるルックアッププラグインを作成しました。このプラグインは、ネストされたハッシュを再帰的に読み取り、ハッシュを文字列のリストに変換します。
変数の各深さは、次のようにncluコマンドに追加されます。
変数:
cl_interface:
swp1:
ip:
address: 192.168.1.1/24
link:
speed: 100
swp2:
bridge:
trunk:
vlans:
- 1-5
- 10,12
結果:
swp1 ip address 192.168.1.1/24
swp2 bridge trunk vlans 1-5
swp2 bridge trunk vlans 10,12
この方法で、複雑な設定の変数の構造をより読みやすく見つけることができます。
例プレイブック
- hosts: leaf01
roles:
- cumuluslinux
vars:
cl_license: [email protected]|thequickbrownfoxjumpsoverthelazydog312
cl_hostname: leaf01
cl_time_zone: Europe/Paris
cl_time_ntp_servers:
- 0.cumulusnetworks.pool.ntp.org iburst
- 1.cumulusnetworks.pool.ntp.org
- 2.cumulusnetworks.pool.ntp.org
- 3.cumulusnetworks.pool.ntp.org
cl_time_ntp_source: eth1
cl_locales:
- en_US.UTF-8 UTF-8
- fr_FR.UTF-8 UTF-8
cl_dns_nameserver:
ipv4:
- 9.9.9.9
- 1.1.1.1
ipv6:
- 2620:fe::fe
cl_interface:
swp1:
ip:
address: 192.168.1.1/24
link:
speed: 100
swp2:
bridge:
trunk:
vlans:
- 1-5
- 10,12
cl_snmp:
listening-address:
ip:
- 192.168.1.10
- 192.168.1.20
readonly-community:
my_rocommunity:
access: any
cl_commands:
add:
vrf: mgmt
del:
snmp-server: all
cl_syslog:
ipv4:
- ip: 192.168.1.10
port: 5000
proto: tcp
- ip: 192.168.1.20
port: 6000
ipv6:
- ip: 2001:db8::1
port: 5000
cl_bond:
uplink:
bond:
slaves:
- swp1
- swp2
cl_vlan:
100:
ip:
adress:
- 10.10.10.0/24
ライセンス
MIT
著者情報
フィードバック、バグ報告、リクエスト、...
大歓迎です こちら にどうぞ!
インストール
ansible-galaxy install maxlareo.cumuluslinux
ライセンス
mit
ダウンロード
119
所有者