Opensourcetechブログ

OpensourcetechによるNGINX/Kubernetes/Zabbix/Neo4j/Linuxなどオープンソース技術に関するブログです。

Ansible モジュールについて調べてみた。

こんにちは、LinuCエバンジェリストこと、鯨井貴博@opensourcetechです。

 

Ansible で出来ることを知る術の一つとして、

大量にあるモジュールについて調べてみようと思います。

 ※2018年9月24日現在。

f:id:opensourcetech:20180924105949p:plain

Module Index — Ansible Documentation

 

 

モジュール総数

All modules — Ansible Documentation

上記から数えると、現時点で1,850あります。

f:id:opensourcetech:20180924110223p:plain

・・・省略・・・

f:id:opensourcetech:20180924110244p:plain


では、どのようなモジュールがあるのか、カテゴリー毎にみていきます。

 

 

・Cloud Modules(630)

 Cloud modules — Ansible Documentation 

Amazon:175
Atomic:3
Azure:51
Centurylink:10
Cloudscale:2
Cloudstack:48
Digital_Ocean:19
Dimensiondata:2
Docker:9
Google:56
Heroku:1
Linode:1
Lxc:1
Lxd:2
Memset:4
Misc:13
Oneandone:6
Opennebula:5
Openstack:47
Ovh:1
Ovirt:47
Packet:2
Profitbricks:5
Pubnub:1
Rackspace:26
Scaleway:2
Smartos:3
Softlayer:1
Univention:5
Vmware:68
Vultr:9
Webfaction:5

 

 

・Clustering Modules(11)

Clustering modules — Ansible Documentation

Clustering:7(consulやpacemakerなど)
K8S:3
Openshift:1

 

 

・Commands Modules(7)

Commands modules — Ansible Documentation

Commands:7(script/shell/telnetなど)

 

 

・Crypto Modules(5)

Crypto modules — Ansible Documentation

Crypto:5( openssl)

 

 

・Database Modules(34)

Database modules — Ansible Documentation

Influxdb:5
Misc:4(Elasticsearchなど)
Mongodb:2
Mssql:1
Mysql:4
Postgresql:6
Proxysql:7
Vertica:5

 

 

・Files Modules(20)

Files modules — Ansible Documentation

Files:20(acl/archive/patch/copy/findなど)

 

 

・Identity Modules(18)

Identity modules — Ansible Documentation

Cyberark:2
Ipa:13
Keycloak:2
Opendj:1

 

 

・Inventory Modules(2)

Inventory modules — Ansible Documentation

Inventory:2

 

 

・Messaging Modules(8)

Messaging modules — Ansible Documentation

Messaging:8(RabbitMQ)

 

 

・Monitoring Modules(40)

Monitoring modules — Ansible Documentation

Cyberark:32(Datadog/Icinga2/Nagios/Sensuなど)
Zabbix:8

 

 

・Net Tools Modules(46)

Net Tools modules — Ansible Documentation

Net Tools:32(cloudflare/haproxy/lldp/nmcli/snmpなど)
Basics:3(geturl/slurp/uri)
Exoscale:2
Infinity:1
Ldap:3
Nios:5

 

 

・Network Modules(634)

Network modules — Ansible Documentation

A10:4
Aci:53
Aireos:2(Cisco WLC)
Aos:12
Aruba:2
Asa:3
Avi:68
Bigswitch:3
Citrix:1
Cloudengine:66(HAUWEI)
Cloudvision:1(Arista Cloudvision)
Cnos:18(Lenovo CNOS)
Cumulus:8(Cumulus Linuxなど)
Dellos10:3
Dellos6:3
Dellos9:3
Edgeos:3(EdgeOSデバイス)
Enos:3(Lenovo ENOS)
Eos:16(Arista EOS)
Exos:1(Extreme EXOS)
F5:96(Big-IP)
Files:2
Fortimanager:1
Fortios:4
Illumos:11(ipadmなど)
Interface:3
Ios:16(Cisco IOS)
Iosxr:9(Cisco IOS-XR)
Ironware:3(Extreme IronWareデバイス)
Junos:20(Juniper JUNOS)
Layer2:2
Layer3:3
Meraki:4
Netact:1
Netconf:3
Netscaler:14
Netvisor:11
Nso:5
Nuage:1
Nxos:72
Onyx:17(Mellanox ONYXネットワークデバイス)
Ordnance:2
Ovs:3(Open vSwitch)
Panos:23(PAN-OS)
Protocol:1
Radware:3
Routing:1
Slxos:8
Sros:3(Nokia SR OS)
System:5
Vyos:14

 

 

・Notification Modules(27)

Notification modules — Ansible Documentation

Notification:27(campfire/cisco_spark/irc/jabber/mail/mqtt/office_365_connector_card/slack/telegram/twilioなど)

 

 

・Packaging Modules(54)

Packaging modules — Ansible Documentation

Language:11(gem/maven_artifact_npm/pear/pip/yarnなど)
Os:43(apt/dnf/dpkg/homebrew/yum/zypperなど)

 

 

 

・Remote Management Modules(39)

Remote Management modules — Ansible Documentation

Remote Management:1
Foreman:2
Hpilo:3
Imc:1
Ipmi:2
Manageiq:6
Oneview:14
Stacki:1
Ucs:9(Cisco UCS Manager)

 

 

・Source Control Modules(15)

Source Control modules — Ansible Documentation

Source Control:15(git/github/gitlab/hg/subversion/bzr)

 

 

・Storage Modules(82)

Storage modules — Ansible Documentation

Glusterfs:1
Infinidat:6
Netapp:62
Purestorage:10
Zfs:3

 

 

・System Modules(61)

System modules — Ansible Documentation

System:61(aix/at/cron/iptables/known_hosts/lvg/lvol/make/modprobe/mount/osx_defaults/open_iscsi/pam_limits/pamd/ping/parted/puppet/selinux/service/sysctl/systemd/sysvinitなど)

 

 

・Utilities Modules(18)

Utilities modules — Ansible Documentation

Helper:2
Logic:16

 

  

・Web Infrastructure Modules(18)

Web Infrastructure modules — Ansible Documentation

Web Infrastructure:20(apache2_module/htpasswd/Djanogo/jboss/Jenkins/Jira/nginx_status_factsなど)
Ansible Tower:15

 

 

・Windows Modules(84)

Windows modules — Ansible Documentation

Windows:84

 

 

 

 

まとめ

 数は多いですが、カテゴリーやその中身を見ていくと、

Ansibleを使って どのようなものが制御可能か 少し見えてきました。

 

また、モジュールを作成する場合は、以下のページを参考に作ることができそうです。

Developing Modules — Ansible Documentation

作成する際の言語は 特に制限はないようですが、Pythonがオススメの模様。

 

 

 

 

www.slideshare.net

github.com

www.facebook.com

twitter.com

www.instagram.com

 

 

にほんブログ村 IT技術ブログ Linuxへ
Linux

にほんブログ村 IT技術ブログ オープンソースへ
オープンソース

 

 

Opensourcetech by Takahiro Kujirai