This commit is contained in:
2020-08-17 12:06:41 -04:00
parent 9fa09f26bd
commit 6eb48873e6
455 changed files with 45184 additions and 14 deletions

View File

@@ -0,0 +1,14 @@
<section data-state="title alt" id="RedIntro-AdHocExplained">
<h1>AD-HOC COMMANDS</h1>
<img src="<?=$workshop_image?>" style="background-color: transparent; border: none;" height="250">
<p>An ad-hoc command is a single Ansible task to perform quickly, but dont want to save for later.</p>
<aside class="notes">
<p>Ansible ad-hoc commands is a good place to start to understand the basics of what Ansible can do before learning how to use playbooks &ndash; ad-hoc commands can also be used to do quick things that you might not necessarily want to write a full playbook for.</p>
<p>Generally speaking, the true power of Ansible lies in playbooks. So why would you use ad-hoc tasks versus playbooks?</p>
<p>For instance, if you wanted to restart a service on all of your lab nodes, you could execute a quick one-liner in Ansible without writing a playbook.</p>
</aside>
</section>

View File

@@ -0,0 +1,17 @@
<section id="AdHocOptions">
<h2>Ad-Hoc Commands: Common Options</h2>
<ul style="font-size: 0.75em;">
<li><b>-m MODULE_NAME, --module-name=MODULE_NAME</b><br/>Module name to execute the ad-hoc command</li>
<li><b>-a MODULE_ARGS, --args=MODULE_ARGS</b><br/>Module arguments for the ad-hoc command</li>
<li><b>-b, --become</b><br/>Run ad-hoc command with elevated rights such as sudo, the default method</li>
<li><b>-e EXTRA_VARS, --extra-vars=EXTRA_VARS</b><br/>Set additional variables as key=value or YAML/JSON</li>
<li><b>--version</b><br/>Display the version of Ansible</li>
<li><b>--help</b><br/>Display the MAN page for the Ansible tool</li>
</ul>
<aside class="notes">
<p>This slide shows essential command-line options for running ad-hoc commands that will be useful in our upcoming workshop assignment.</p>
</aside>
</section>
</section>

View File

@@ -0,0 +1,29 @@
<section id="AdHocCommands-Terminal">
<center><h2>AD HOC COMMANDS</h2></center>
<div class="terminal space shadow">
<div class="top">
<div class="title">Ansible Terminal</div>
</div>
<pre class="bodyl">
<font color="silver"># Check connections (submarine ping, not ICMP)</font>
<font color="gray"><?=$terminal_prompt?></font> ansible all -m ping
<font color="silver"># Run a command on all the hosts in the web group</font>
<font color="gray"><?=$terminal_prompt?></font> ansible web -m command -a &quot;uptime&quot;
<font color="silver"># Collect and display known facts</font>
<font color="gray"><?=$terminal_prompt?></font> ansible localhost -m setup
</pre>
</div>
<aside class="notes">
<p>Ad-hoc commands are quick checks on your servers that you dont want to preserve in an Ansible playbook.</p>
<p>An ad-hoc command can be used to do some tasks that you might not necessarily want to write a full playbook and save for later.</p>
<p>This is a good place to start to understand the basics of what Ansible can do prior to learning about playbooks where the true power of Ansible automation lies.</p>
<p>For more information see <a href="http://docs.ansible.com/ansible/intro_adhoc.html">Introduction To Ad-Hoc Commands</a>.</p>
</aside>
</section>

View File

@@ -0,0 +1,584 @@
<section id="SetupM-FULL-Scrolling">
<h2>Full Fact List</h2>
<p>Returns a list of literally every fact available on the system</p>
<div class="terminal space shadow" onclick="scrollDiv_init('AnsibleSetupM','1'); this.onclick = null;" style="cursor: pointer;">
<div class="top">
<div class="title">
<a href="javascript:pauseDiv()" style="none; cursor: pointer;">Ansible Terminal</a>
</div>
</div>
<pre class="bodymw">
<font color="gray"><?=$terminal_prompt?></font> ansible myserver.mine -m setup
<mark>Provides a long list of all facts known of this system</mark>
<div id="AnsibleSetupM" style="overflow:auto;width:auto;height:700px;">
localhost | SUCCESS => {
"ansible_facts": {
"ansible_all_ipv4_addresses": [
"10.0.20.5"
],
"ansible_all_ipv6_addresses": [
"fe80::4e98:35fe:3b14:33dc"
],
"ansible_apparmor": {
"status": "disabled"
},
"ansible_architecture": "x86_64",
"ansible_bios_date": "04/05/2016",
"ansible_bios_version": "6.00",
"ansible_cmdline": {
"BOOT_IMAGE": "/vmlinuz-3.10.0-693.21.1.el7.x86_64",
"LANG": "en_US.UTF-8",
"crashkernel": "auto",
"quiet": true,
"rhgb": true,
"ro": true,
"root": "UUID=d49a9903-d546-4981-bffb-4e5147e1199b"
},
"ansible_date_time": {
"date": "2018-08-14",
"day": "14",
"epoch": "1534279494",
"hour": "16",
"iso8601": "2018-08-14T20:44:54Z",
"iso8601_basic": "20180814T164454915629",
"iso8601_basic_short": "20180814T164454",
"iso8601_micro": "2018-08-14T20:44:54.915745Z",
"minute": "44",
"month": "08",
"second": "54",
"time": "16:44:54",
"tz": "EDT",
"tz_offset": "-0400",
"weekday": "Tuesday",
"weekday_number": "2",
"weeknumber": "33",
"year": "2018"
},
"ansible_default_ipv4": {
"address": "10.0.20.5",
"alias": "ens192",
"broadcast": "10.0.20.255",
"gateway": "10.0.20.1",
"interface": "ens192",
"macaddress": "00:50:56:bb:30:e8",
"mtu": 1500,
"netmask": "255.255.255.0",
"network": "10.0.20.0",
"type": "ether"
},
"ansible_default_ipv6": {},
"ansible_device_links": {
"ids": {
"sr0": [
"ata-VMware_Virtual_SATA_CDRW_Drive_00000000000000000001"
]
},
"labels": {},
"masters": {},
"uuids": {
"sda1": [
"619dcc55-451d-44be-b364-8c94278c567c"
],
"sda2": [
"d49a9903-d546-4981-bffb-4e5147e1199b"
]
}
},
"ansible_devices": {
"sda": {
"holders": [],
"host": "Serial Attached SCSI controller: VMware PVSCSI SCSI Controller (rev 02)",
"links": {
"ids": [],
"labels": [],
"masters": [],
"uuids": []
},
"model": "Virtual disk",
"partitions": {
"sda1": {
"holders": [],
"links": {
"ids": [],
"labels": [],
"masters": [],
"uuids": [
"619dcc55-451d-44be-b364-8c94278c567c"
]
},
"sectors": "2097152",
"sectorsize": 512,
"size": "1.00 GB",
"start": "2048",
"uuid": "619dcc55-451d-44be-b364-8c94278c567c"
},
"sda2": {
"holders": [],
"links": {
"ids": [],
"labels": [],
"masters": [],
"uuids": [
"d49a9903-d546-4981-bffb-4e5147e1199b"
]
},
"sectors": "31455232",
"sectorsize": 512,
"size": "15.00 GB",
"start": "2099200",
"uuid": "d49a9903-d546-4981-bffb-4e5147e1199b"
}
},
"removable": "0",
"rotational": "1",
"sas_address": null,
"sas_device_handle": null,
"scheduler_mode": "deadline",
"sectors": "41943040",
"sectorsize": "512",
"size": "20.00 GB",
"support_discard": "0",
"vendor": "VMware",
"virtual": 1
},
"sr0": {
"holders": [],
"host": "SATA controller: VMware SATA AHCI controller",
"links": {
"ids": [
"ata-VMware_Virtual_SATA_CDRW_Drive_00000000000000000001"
],
"labels": [],
"masters": [],
"uuids": []
},
"model": "VMware SATA CD00",
"partitions": {},
"removable": "1",
"rotational": "1",
"sas_address": null,
"sas_device_handle": null,
"scheduler_mode": "cfq",
"sectors": "2097151",
"sectorsize": "512",
"size": "1024.00 MB",
"support_discard": "0",
"vendor": "NECVMWar",
"virtual": 1
}
},
"ansible_distribution": "CentOS",
"ansible_distribution_file_parsed": true,
"ansible_distribution_file_path": "/etc/redhat-release",
"ansible_distribution_file_variety": "RedHat",
"ansible_distribution_major_version": "7",
"ansible_distribution_release": "Core",
"ansible_distribution_version": "7.4.1708",
"ansible_dns": {
"nameservers": [
"10.0.20.1"
],
"search": [
"kev"
]
},
"ansible_domain": "kev",
"ansible_effective_group_id": 0,
"ansible_effective_user_id": 0,
"ansible_ens192": {
"active": true,
"device": "ens192",
"features": {
"busy_poll": "off [fixed]",
"fcoe_mtu": "off [fixed]",
"generic_receive_offload": "on",
"generic_segmentation_offload": "on",
"highdma": "on",
"hw_tc_offload": "off [fixed]",
"l2_fwd_offload": "off [fixed]",
"large_receive_offload": "on",
"loopback": "off [fixed]",
"netns_local": "off [fixed]",
"ntuple_filters": "off [fixed]",
"receive_hashing": "off [fixed]",
"rx_all": "off [fixed]",
"rx_checksumming": "on",
"rx_fcs": "off [fixed]",
"rx_vlan_filter": "on [fixed]",
"rx_vlan_offload": "on",
"rx_vlan_stag_filter": "off [fixed]",
"rx_vlan_stag_hw_parse": "off [fixed]",
"scatter_gather": "on",
"tcp_segmentation_offload": "on",
"tx_checksum_fcoe_crc": "off [fixed]",
"tx_checksum_ip_generic": "on",
"tx_checksum_ipv4": "off [fixed]",
"tx_checksum_ipv6": "off [fixed]",
"tx_checksum_sctp": "off [fixed]",
"tx_checksumming": "on",
"tx_fcoe_segmentation": "off [fixed]",
"tx_gre_csum_segmentation": "off [fixed]",
"tx_gre_segmentation": "off [fixed]",
"tx_gso_partial": "off [fixed]",
"tx_gso_robust": "off [fixed]",
"tx_ipip_segmentation": "off [fixed]",
"tx_lockless": "off [fixed]",
"tx_mpls_segmentation": "off [fixed]",
"tx_nocache_copy": "off",
"tx_scatter_gather": "on",
"tx_scatter_gather_fraglist": "off [fixed]",
"tx_sctp_segmentation": "off [fixed]",
"tx_sit_segmentation": "off [fixed]",
"tx_tcp6_segmentation": "on",
"tx_tcp_ecn_segmentation": "off [fixed]",
"tx_tcp_mangleid_segmentation": "off",
"tx_tcp_segmentation": "on",
"tx_udp_tnl_csum_segmentation": "off [fixed]",
"tx_udp_tnl_segmentation": "off [fixed]",
"tx_vlan_offload": "on",
"tx_vlan_stag_hw_insert": "off [fixed]",
"udp_fragmentation_offload": "off [fixed]",
"vlan_challenged": "off [fixed]"
},
"hw_timestamp_filters": [],
"ipv4": {
"address": "10.0.20.5",
"broadcast": "10.0.20.255",
"netmask": "255.255.255.0",
"network": "10.0.20.0"
},
"ipv6": [
{
"address": "fe80::4e98:35fe:3b14:33dc",
"prefix": "64",
"scope": "link"
}
],
"macaddress": "00:50:56:bb:30:e8",
"module": "vmxnet3",
"mtu": 1500,
"pciid": "0000:0b:00.0",
"promisc": false,
"speed": 10000,
"timestamping": [
"rx_software",
"software"
],
"type": "ether"
},
"ansible_env": {
"HISTCONTROL": "ignoredups",
"HISTSIZE": "1000",
"HOME": "/root",
"HOSTNAME": "myserver",
"LANG": "en_US.UTF-8",
"LESSOPEN": "||/usr/bin/lesspipe.sh %s",
"LOGNAME": "root",
"LS_COLORS": "rs=0:di=38;5;27:ln=38;5;51:mh=44;38;5;15:pi=40;38;5;11:so=38;5;13:do=38;5;5:bd=48;5;232;38;5;11:cd=48;5;232;38;5;3:or=48;5;232;38;5;9:mi=05;48;5;232;38;5;15:su=48;5;196;38;5;15:sg=48;5;11;38;5;16:ca=48;5;196;38;5;226:tw=48;5;10;38;5;16:ow=48;5;10;38;5;21:st=48;5;21;38;5;15:ex=38;5;34:*.tar=38;5;9:*.tgz=38;5;9:*.arc=38;5;9:*.arj=38;5;9:*.taz=38;5;9:*.lha=38;5;9:*.lz4=38;5;9:*.lzh=38;5;9:*.lzma=38;5;9:*.tlz=38;5;9:*.txz=38;5;9:*.tzo=38;5;9:*.t7z=38;5;9:*.zip=38;5;9:*.z=38;5;9:*.Z=38;5;9:*.dz=38;5;9:*.gz=38;5;9:*.lrz=38;5;9:*.lz=38;5;9:*.lzo=38;5;9:*.xz=38;5;9:*.bz2=38;5;9:*.bz=38;5;9:*.tbz=38;5;9:*.tbz2=38;5;9:*.tz=38;5;9:*.deb=38;5;9:*.rpm=38;5;9:*.jar=38;5;9:*.war=38;5;9:*.ear=38;5;9:*.sar=38;5;9:*.rar=38;5;9:*.alz=38;5;9:*.ace=38;5;9:*.zoo=38;5;9:*.cpio=38;5;9:*.7z=38;5;9:*.rz=38;5;9:*.cab=38;5;9:*.jpg=38;5;13:*.jpeg=38;5;13:*.gif=38;5;13:*.bmp=38;5;13:*.pbm=38;5;13:*.pgm=38;5;13:*.ppm=38;5;13:*.tga=38;5;13:*.xbm=38;5;13:*.xpm=38;5;13:*.tif=38;5;13:*.tiff=38;5;13:*.png=38;5;13:*.svg=38;5;13:*.svgz=38;5;13:*.mng=38;5;13:*.pcx=38;5;13:*.mov=38;5;13:*.mpg=38;5;13:*.mpeg=38;5;13:*.m2v=38;5;13:*.mkv=38;5;13:*.webm=38;5;13:*.ogm=38;5;13:*.mp4=38;5;13:*.m4v=38;5;13:*.mp4v=38;5;13:*.vob=38;5;13:*.qt=38;5;13:*.nuv=38;5;13:*.wmv=38;5;13:*.asf=38;5;13:*.rm=38;5;13:*.rmvb=38;5;13:*.flc=38;5;13:*.avi=38;5;13:*.fli=38;5;13:*.flv=38;5;13:*.gl=38;5;13:*.dl=38;5;13:*.xcf=38;5;13:*.xwd=38;5;13:*.yuv=38;5;13:*.cgm=38;5;13:*.emf=38;5;13:*.axv=38;5;13:*.anx=38;5;13:*.ogv=38;5;13:*.ogx=38;5;13:*.aac=38;5;45:*.au=38;5;45:*.flac=38;5;45:*.mid=38;5;45:*.midi=38;5;45:*.mka=38;5;45:*.mp3=38;5;45:*.mpc=38;5;45:*.ogg=38;5;45:*.ra=38;5;45:*.wav=38;5;45:*.axa=38;5;45:*.oga=38;5;45:*.spx=38;5;45:*.xspf=38;5;45:",
"MAIL": "/var/spool/mail/root",
"PATH": "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin",
"PWD": "/root",
"SHELL": "/bin/bash",
"SHLVL": "3",
"SSH_CLIENT": "10.0.0.74 53446 22",
"SSH_CONNECTION": "10.0.0.74 53446 10.0.20.5 22",
"SSH_TTY": "/dev/pts/0",
"TERM": "xterm-256color",
"USER": "root",
"XDG_RUNTIME_DIR": "/run/user/0",
"XDG_SESSION_ID": "270",
"_": "/usr/bin/python2"
},
"ansible_fips": false,
"ansible_form_factor": "Other",
"ansible_fqdn": "myserver.mine",
"ansible_hostname": "myserver",
"ansible_interfaces": [
"lo",
"ens192"
],
"ansible_is_chroot": false,
"ansible_iscsi_iqn": "",
"ansible_kernel": "3.10.0-693.21.1.el7.x86_64",
"ansible_lo": {
"active": true,
"device": "lo",
"features": {
"busy_poll": "off [fixed]",
"fcoe_mtu": "off [fixed]",
"generic_receive_offload": "on",
"generic_segmentation_offload": "on",
"highdma": "on [fixed]",
"hw_tc_offload": "off [fixed]",
"l2_fwd_offload": "off [fixed]",
"large_receive_offload": "off [fixed]",
"loopback": "on [fixed]",
"netns_local": "on [fixed]",
"ntuple_filters": "off [fixed]",
"receive_hashing": "off [fixed]",
"rx_all": "off [fixed]",
"rx_checksumming": "on [fixed]",
"rx_fcs": "off [fixed]",
"rx_vlan_filter": "off [fixed]",
"rx_vlan_offload": "off [fixed]",
"rx_vlan_stag_filter": "off [fixed]",
"rx_vlan_stag_hw_parse": "off [fixed]",
"scatter_gather": "on",
"tcp_segmentation_offload": "on",
"tx_checksum_fcoe_crc": "off [fixed]",
"tx_checksum_ip_generic": "on [fixed]",
"tx_checksum_ipv4": "off [fixed]",
"tx_checksum_ipv6": "off [fixed]",
"tx_checksum_sctp": "on [fixed]",
"tx_checksumming": "on",
"tx_fcoe_segmentation": "off [fixed]",
"tx_gre_csum_segmentation": "off [fixed]",
"tx_gre_segmentation": "off [fixed]",
"tx_gso_partial": "off [fixed]",
"tx_gso_robust": "off [fixed]",
"tx_ipip_segmentation": "off [fixed]",
"tx_lockless": "on [fixed]",
"tx_mpls_segmentation": "off [fixed]",
"tx_nocache_copy": "off [fixed]",
"tx_scatter_gather": "on [fixed]",
"tx_scatter_gather_fraglist": "on [fixed]",
"tx_sctp_segmentation": "on",
"tx_sit_segmentation": "off [fixed]",
"tx_tcp6_segmentation": "on",
"tx_tcp_ecn_segmentation": "on",
"tx_tcp_mangleid_segmentation": "on",
"tx_tcp_segmentation": "on",
"tx_udp_tnl_csum_segmentation": "off [fixed]",
"tx_udp_tnl_segmentation": "off [fixed]",
"tx_vlan_offload": "off [fixed]",
"tx_vlan_stag_hw_insert": "off [fixed]",
"udp_fragmentation_offload": "on",
"vlan_challenged": "on [fixed]"
},
"hw_timestamp_filters": [],
"ipv4": {
"address": "127.0.0.1",
"broadcast": "host",
"netmask": "255.0.0.0",
"network": "127.0.0.0"
},
"ipv6": [
{
"address": "::1",
"prefix": "128",
"scope": "host"
}
],
"mtu": 65536,
"promisc": false,
"timestamping": [
"rx_software",
"software"
],
"type": "loopback"
},
"ansible_local": {
"is_installed": {
"is_vim_installed": {
"vim": "true"
}
},
"package_list": {
"all_kev_packages": {
"package1": "acl-2.2.51-12.el7.x86_64",
"package10": "authconfig-6.2.8-30.el7.x86_64",
"package11": "basesystem-10.0-7.el7.centos.noarch",
"package2": "aic94xx-firmware-30-6.el7.noarch",
"package3": "alsa-firmware-1.0.28-2.el7.noarch",
"package4": "alsa-lib-1.1.3-3.el7.x86_64",
"package5": "alsa-tools-firmware-1.1.0-1.el7.x86_64",
"package6": "ansible-2.6.1-1.el7.noarch",
"package7": "ansible-lint-3.4.21-1.el7.noarch",
"package8": "audit-2.7.6-3.el7.x86_64",
"package9": "audit-libs-2.7.6-3.el7.x86_64"
}
},
"system_owner": {
"system_owner": {
"owner": "kev"
}
}
},
"ansible_lsb": {},
"ansible_machine": "x86_64",
"ansible_machine_id": "072bb764550746bd9695d73f43c9cf3b",
"ansible_memfree_mb": 1307,
"ansible_memory_mb": {
"nocache": {
"free": 1579,
"used": 260
},
"real": {
"free": 1307,
"total": 1839,
"used": 532
},
"swap": {
"cached": 0,
"free": 0,
"total": 0,
"used": 0
}
},
"ansible_memtotal_mb": 1839,
"ansible_mounts": [
{
"block_available": 3300883,
"block_size": 4096,
"block_total": 3929344,
"block_used": 628461,
"device": "/dev/sda2",
"fstype": "xfs",
"inode_available": 7804215,
"inode_total": 7863808,
"inode_used": 59593,
"mount": "/",
"options": "rw,relatime,attr2,inode64,noquota",
"size_available": 13520416768,
"size_total": 16094593024,
"uuid": "d49a9903-d546-4981-bffb-4e5147e1199b"
},
{
"block_available": 207739,
"block_size": 4096,
"block_total": 259584,
"block_used": 51845,
"device": "/dev/sda1",
"fstype": "xfs",
"inode_available": 523947,
"inode_total": 524288,
"inode_used": 341,
"mount": "/boot",
"options": "rw,relatime,attr2,inode64,noquota",
"size_available": 850898944,
"size_total": 1063256064,
"uuid": "619dcc55-451d-44be-b364-8c94278c567c"
}
],
"ansible_nodename": "myserver",
"ansible_os_family": "RedHat",
"ansible_pkg_mgr": "yum",
"ansible_processor": [
"0",
"GenuineIntel",
"Intel(R) Xeon(R) CPU X5660 @ 2.80GHz"
],
"ansible_processor_cores": 1,
"ansible_processor_count": 1,
"ansible_processor_threads_per_core": 1,
"ansible_processor_vcpus": 1,
"ansible_product_name": "VMware Virtual Platform",
"ansible_product_serial": "VMware-42 3b 24 ce 91 e0 3a be-b1 02 3c 83 0f 86 02 e8",
"ansible_product_uuid": "CE243B42-E091-BE3A-B102-3C830F8602E8",
"ansible_product_version": "None",
"ansible_python": {
"executable": "/usr/bin/python2",
"has_sslcontext": true,
"type": "CPython",
"version": {
"major": 2,
"micro": 5,
"minor": 7,
"releaselevel": "final",
"serial": 0
},
"version_info": [
2,
7,
5,
"final",
0
]
},
"ansible_python_version": "2.7.5",
"ansible_real_group_id": 0,
"ansible_real_user_id": 0,
"ansible_selinux": {
"status": "disabled"
},
"ansible_selinux_python_present": true,
"ansible_service_mgr": "systemd",
"ansible_ssh_host_key_ecdsa_public": "AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBHa2kNk4tpZ4/rXxM6969XkR29JQa91M7sSRHheXeQxmZjnRp/5o2ADQjFmXz+PouYA8PMiBU9u5Mx44oEXxDmU=",
"ansible_ssh_host_key_ed25519_public": "AAAAC3NzaC1lZDI1NTE5AAAAIE5MKxH1C+uyIHjAz48pwHj+6HdXw/9vCnc2PHRQZVND",
"ansible_ssh_host_key_rsa_public": "AAAAB3NzaC1yc2EAAAADAQABAAABAQDMNVNNOgPb+L9rnrm0D2dQWRVEjtnWAgbgVDtdixE79+jDR5TGfxuUmf74yRXM0flrdvirQtBvZjSwsj3/fUReUas0gt3LVs1b7jsxK6QeGgQCx6CCeopMgUb0JYXsMexbekZxxnpBcWAXh/Bjhko/8FpZaZhIvk0VTzQMCP7+/netcTi1m+CCCF1YhQmy8bGhN+aJuaaP2VMSDSauOFGUQUUaJkw+pjata+qWMwYemDabszkePFp0rBQEDSo6fIMlXvInm75Jf24tyb+X9+kOycGk4Rits/jXseB6j+L3rZRCX6b/F3JMNtqoBc7nybGvD/8Njn9Sl67DQUZenkcX",
"ansible_swapfree_mb": 0,
"ansible_swaptotal_mb": 0,
"ansible_system": "Linux",
"ansible_system_capabilities": [
"cap_chown",
"cap_dac_override",
"cap_dac_read_search",
"cap_fowner",
"cap_fsetid",
"cap_kill",
"cap_setgid",
"cap_setuid",
"cap_setpcap",
"cap_linux_immutable",
"cap_net_bind_service",
"cap_net_broadcast",
"cap_net_admin",
"cap_net_raw",
"cap_ipc_lock",
"cap_ipc_owner",
"cap_sys_module",
"cap_sys_rawio",
"cap_sys_chroot",
"cap_sys_ptrace",
"cap_sys_pacct",
"cap_sys_admin",
"cap_sys_boot",
"cap_sys_nice",
"cap_sys_resource",
"cap_sys_time",
"cap_sys_tty_config",
"cap_mknod",
"cap_lease",
"cap_audit_write",
"cap_audit_control",
"cap_setfcap",
"cap_mac_override",
"cap_mac_admin",
"cap_syslog",
"35",
"36+ep"
],
"ansible_system_capabilities_enforced": "True",
"ansible_system_vendor": "VMware, Inc.",
"ansible_uptime_seconds": 137627,
"ansible_user_dir": "/root",
"ansible_user_gecos": "root",
"ansible_user_gid": 0,
"ansible_user_id": "root",
"ansible_user_shell": "/bin/bash",
"ansible_user_uid": 0,
"ansible_userspace_architecture": "x86_64",
"ansible_userspace_bits": "64",
"ansible_virtualization_role": "guest",
"ansible_virtualization_type": "VMware",
"gather_subset": [
"all"
],
"module_setup": true
},
"changed": false
}
</div>
</pre>
</div>
<aside class="notes">
<p><b>TO Make This List SCROLL</b>, click anywhere on the terminal window</p>
<p><b>TO Make This List STOP</b>, click the "Ansible Terminal" text on top of the console</p>
</aside>
</section>

View File

@@ -0,0 +1,37 @@
<section id="DiscoveredFacts">
<center><h2>DISCOVERED FACTS</h2>
</center>
<div class="terminal space shadow">
<div class="top">
<div class="title">Ansible Terminal</div>
</div>
<pre class="bodym">
<font color="silver"># Small filtered subset of discovered facts</font>
<font color="gray"><?=$terminal_prompt?></font> ansible myserver.mine -m setup -a "filter=ansible_default_ipv4"
<font color="yellow">myserver.mine | success >> </font>{
<font color="cyan">"ansible_facts"</font>: {
<font color="cyan">"ansible_default_ipv4"</font>: {
<font color="cyan">"address"</font>:<font color="yellow"> "10.41.17.37"</font>,
<font color="cyan">"alias"</font>:<font color="yellow"> "eth0"</font>,
<font color="cyan">"gateway"</font>:<font color="yellow"> "10.41.17.1"</font>,
<font color="cyan">"interface"</font>:<font color="yellow"> "eth0"</font>,
<font color="cyan">"macaddress"</font>:<font color="yellow"> "00:69:08:3b:a9:16"</font>,
<font color="cyan">"mtu"</font>:<font color="yellow"> 1500</font>,
<font color="cyan">"netmask"</font>:<font color="yellow"> "255.255.255.0"</font>,
<font color="cyan">"network"</font>:<font color="yellow"> "10.41.17.0"</font>,
<font color="cyan">"type"</font>:<font color="yellow"> "ether"</font>
},
</pre>
</div>
<aside class="notes">
<p>The second ad-hoc command example from the prior slide provides the following JSON output of a localhost facts run.</p>
<p>Facts are bits of information derived from examining a host systems that are stored as variables for later use. An example of this might be the IP address of the host, or what operating system it is running. The facts Ansible will discover about a host is extensive. What's shown here is just a small sample. Run <code>ansible localhost -m setup</code> for a more complete representation.</p>
<p>Ansible collects facts using the <code>setup</code> module. By default, Ansible will run the <code>setup</code> module before any other tasks are executed in a playbook. These facts can be referenced by subsequent automation tasks on a per host-basis during the playbook run.</p>
</aside>
</section>

View File

@@ -0,0 +1,11 @@
<section id="AdHocExplained">
<h2>Ad-Hoc Commands</h2>
<p>An ad-hoc command is a single Ansible task to perform quickly, but dont want to save for later.</p>
<aside class="notes">
<p>Ansible ad-hoc commands is a good place to start to understand the basics of what Ansible can do before learning how to use playbooks &ndash; ad-hoc commands can also be used to do quick things that you might not necessarily want to write a full playbook for.</p>
<p>Generally speaking, the true power of Ansible lies in playbooks. So why would you use ad-hoc tasks versus playbooks?</p>
<p>For instance, if you wanted to restart a service on all of your lab nodes, you could execute a quick one-liner in Ansible without writing a playbook.</p>
</aside>
</section>

View File

@@ -0,0 +1,17 @@
<section data-state="lab alt" id="<?=$labid?>-01">
<h1><?=$pretty_htmldir?> </h1>
<img src="<?=$workshop_image?>" style="background-color: transparent; border: none;" height="250">
<p>Ad-hoc command exercise number one</p>
</section>
<section data-state="lab alt" id="<?=$labid?>-02">
<h1><?=$pretty_htmldir?> </h1>
<img src="<?=$workshop_image?>" style="background-color: transparent; border: none;" height="250">
<p>Ad-hoc command exercise number two</p>
</section>
<section data-state="lab alt" id="<?=$labid?>-03">
<h1><?=$pretty_htmldir?> </h1>
<img src="<?=$workshop_image?>" style="background-color: transparent; border: none;" height="250">
<p>Ad-hoc command exercise number three</p>
</section>

View File

@@ -0,0 +1,29 @@
<section data-state="lab alt" id="<?=$labid?>-AdHocCommands-Terminal">
<center><h2>AD HOC COMMANDS</h2></center>
<div class="terminal space shadow">
<div class="top">
<div class="title">Ansible Terminal</div>
</div>
<pre class="bodyl">
<font color="silver"># Check connections (submarine ping, not ICMP)</font>
<font color="gray"><?=$terminal_prompt?></font> ansible all -m ping
<font color="silver"># Run a command on all the hosts in the web group</font>
<font color="gray"><?=$terminal_prompt?></font> ansible web -m command -a &quot;uptime&quot;
<font color="silver"># Collect and display known facts</font>
<font color="gray"><?=$terminal_prompt?></font> ansible localhost -m setup
</pre>
</div>
<aside class="notes">
<p>Ad-hoc commands are quick checks on your servers that you dont want to preserve in an Ansible playbook.</p>
<p>An ad-hoc command can be used to do some tasks that you might not necessarily want to write a full playbook and save for later.</p>
<p>This is a good place to start to understand the basics of what Ansible can do prior to learning about playbooks where the true power of Ansible automation lies.</p>
<p>For more information see <a href="http://docs.ansible.com/ansible/intro_adhoc.html">Introduction To Ad-Hoc Commands</a>.</p>
</aside>
</section>

View File

@@ -0,0 +1,17 @@
<section data-state="lab alt" id="<?=$labid?>-04">
<h1><?=$pretty_htmldir?> </h1>
<img src="<?=$workshop_image?>" style="background-color: transparent; border: none;" height="250">
<p>Ad-hoc command exercise number four</p>
</section>
<section data-state="lab alt" id="<?=$labid?>-05">
<h1><?=$pretty_htmldir?> </h1>
<img src="<?=$workshop_image?>" style="background-color: transparent; border: none;" height="250">
<p>Ad-hoc command exercise number five</p>
</section>
<section data-state="lab alt" id="<?=$labid?>-06">
<h1><?=$pretty_htmldir?> </h1>
<img src="<?=$workshop_image?>" style="background-color: transparent; border: none;" height="250">
<p>Ad-hoc command exercise number six</p>
</section>

View File

@@ -0,0 +1,557 @@
localhost | SUCCESS => {
"ansible_facts": {
"ansible_all_ipv4_addresses": [
"10.0.20.5"
],
"ansible_all_ipv6_addresses": [
"fe80::4e98:35fe:3b14:33dc"
],
"ansible_apparmor": {
"status": "disabled"
},
"ansible_architecture": "x86_64",
"ansible_bios_date": "04/05/2016",
"ansible_bios_version": "6.00",
"ansible_cmdline": {
"BOOT_IMAGE": "/vmlinuz-3.10.0-693.21.1.el7.x86_64",
"LANG": "en_US.UTF-8",
"crashkernel": "auto",
"quiet": true,
"rhgb": true,
"ro": true,
"root": "UUID=d49a9903-d546-4981-bffb-4e5147e1199b"
},
"ansible_date_time": {
"date": "2018-08-14",
"day": "14",
"epoch": "1534279494",
"hour": "16",
"iso8601": "2018-08-14T20:44:54Z",
"iso8601_basic": "20180814T164454915629",
"iso8601_basic_short": "20180814T164454",
"iso8601_micro": "2018-08-14T20:44:54.915745Z",
"minute": "44",
"month": "08",
"second": "54",
"time": "16:44:54",
"tz": "EDT",
"tz_offset": "-0400",
"weekday": "Tuesday",
"weekday_number": "2",
"weeknumber": "33",
"year": "2018"
},
"ansible_default_ipv4": {
"address": "10.0.20.5",
"alias": "ens192",
"broadcast": "10.0.20.255",
"gateway": "10.0.20.1",
"interface": "ens192",
"macaddress": "00:50:56:bb:30:e8",
"mtu": 1500,
"netmask": "255.255.255.0",
"network": "10.0.20.0",
"type": "ether"
},
"ansible_default_ipv6": {},
"ansible_device_links": {
"ids": {
"sr0": [
"ata-VMware_Virtual_SATA_CDRW_Drive_00000000000000000001"
]
},
"labels": {},
"masters": {},
"uuids": {
"sda1": [
"619dcc55-451d-44be-b364-8c94278c567c"
],
"sda2": [
"d49a9903-d546-4981-bffb-4e5147e1199b"
]
}
},
"ansible_devices": {
"sda": {
"holders": [],
"host": "Serial Attached SCSI controller: VMware PVSCSI SCSI Controller (rev 02)",
"links": {
"ids": [],
"labels": [],
"masters": [],
"uuids": []
},
"model": "Virtual disk",
"partitions": {
"sda1": {
"holders": [],
"links": {
"ids": [],
"labels": [],
"masters": [],
"uuids": [
"619dcc55-451d-44be-b364-8c94278c567c"
]
},
"sectors": "2097152",
"sectorsize": 512,
"size": "1.00 GB",
"start": "2048",
"uuid": "619dcc55-451d-44be-b364-8c94278c567c"
},
"sda2": {
"holders": [],
"links": {
"ids": [],
"labels": [],
"masters": [],
"uuids": [
"d49a9903-d546-4981-bffb-4e5147e1199b"
]
},
"sectors": "31455232",
"sectorsize": 512,
"size": "15.00 GB",
"start": "2099200",
"uuid": "d49a9903-d546-4981-bffb-4e5147e1199b"
}
},
"removable": "0",
"rotational": "1",
"sas_address": null,
"sas_device_handle": null,
"scheduler_mode": "deadline",
"sectors": "41943040",
"sectorsize": "512",
"size": "20.00 GB",
"support_discard": "0",
"vendor": "VMware",
"virtual": 1
},
"sr0": {
"holders": [],
"host": "SATA controller: VMware SATA AHCI controller",
"links": {
"ids": [
"ata-VMware_Virtual_SATA_CDRW_Drive_00000000000000000001"
],
"labels": [],
"masters": [],
"uuids": []
},
"model": "VMware SATA CD00",
"partitions": {},
"removable": "1",
"rotational": "1",
"sas_address": null,
"sas_device_handle": null,
"scheduler_mode": "cfq",
"sectors": "2097151",
"sectorsize": "512",
"size": "1024.00 MB",
"support_discard": "0",
"vendor": "NECVMWar",
"virtual": 1
}
},
"ansible_distribution": "CentOS",
"ansible_distribution_file_parsed": true,
"ansible_distribution_file_path": "/etc/redhat-release",
"ansible_distribution_file_variety": "RedHat",
"ansible_distribution_major_version": "7",
"ansible_distribution_release": "Core",
"ansible_distribution_version": "7.4.1708",
"ansible_dns": {
"nameservers": [
"10.0.20.1"
],
"search": [
"kev"
]
},
"ansible_domain": "kev",
"ansible_effective_group_id": 0,
"ansible_effective_user_id": 0,
"ansible_ens192": {
"active": true,
"device": "ens192",
"features": {
"busy_poll": "off [fixed]",
"fcoe_mtu": "off [fixed]",
"generic_receive_offload": "on",
"generic_segmentation_offload": "on",
"highdma": "on",
"hw_tc_offload": "off [fixed]",
"l2_fwd_offload": "off [fixed]",
"large_receive_offload": "on",
"loopback": "off [fixed]",
"netns_local": "off [fixed]",
"ntuple_filters": "off [fixed]",
"receive_hashing": "off [fixed]",
"rx_all": "off [fixed]",
"rx_checksumming": "on",
"rx_fcs": "off [fixed]",
"rx_vlan_filter": "on [fixed]",
"rx_vlan_offload": "on",
"rx_vlan_stag_filter": "off [fixed]",
"rx_vlan_stag_hw_parse": "off [fixed]",
"scatter_gather": "on",
"tcp_segmentation_offload": "on",
"tx_checksum_fcoe_crc": "off [fixed]",
"tx_checksum_ip_generic": "on",
"tx_checksum_ipv4": "off [fixed]",
"tx_checksum_ipv6": "off [fixed]",
"tx_checksum_sctp": "off [fixed]",
"tx_checksumming": "on",
"tx_fcoe_segmentation": "off [fixed]",
"tx_gre_csum_segmentation": "off [fixed]",
"tx_gre_segmentation": "off [fixed]",
"tx_gso_partial": "off [fixed]",
"tx_gso_robust": "off [fixed]",
"tx_ipip_segmentation": "off [fixed]",
"tx_lockless": "off [fixed]",
"tx_mpls_segmentation": "off [fixed]",
"tx_nocache_copy": "off",
"tx_scatter_gather": "on",
"tx_scatter_gather_fraglist": "off [fixed]",
"tx_sctp_segmentation": "off [fixed]",
"tx_sit_segmentation": "off [fixed]",
"tx_tcp6_segmentation": "on",
"tx_tcp_ecn_segmentation": "off [fixed]",
"tx_tcp_mangleid_segmentation": "off",
"tx_tcp_segmentation": "on",
"tx_udp_tnl_csum_segmentation": "off [fixed]",
"tx_udp_tnl_segmentation": "off [fixed]",
"tx_vlan_offload": "on",
"tx_vlan_stag_hw_insert": "off [fixed]",
"udp_fragmentation_offload": "off [fixed]",
"vlan_challenged": "off [fixed]"
},
"hw_timestamp_filters": [],
"ipv4": {
"address": "10.0.20.5",
"broadcast": "10.0.20.255",
"netmask": "255.255.255.0",
"network": "10.0.20.0"
},
"ipv6": [
{
"address": "fe80::4e98:35fe:3b14:33dc",
"prefix": "64",
"scope": "link"
}
],
"macaddress": "00:50:56:bb:30:e8",
"module": "vmxnet3",
"mtu": 1500,
"pciid": "0000:0b:00.0",
"promisc": false,
"speed": 10000,
"timestamping": [
"rx_software",
"software"
],
"type": "ether"
},
"ansible_env": {
"HISTCONTROL": "ignoredups",
"HISTSIZE": "1000",
"HOME": "/root",
"HOSTNAME": "kev-ansible",
"LANG": "en_US.UTF-8",
"LESSOPEN": "||/usr/bin/lesspipe.sh %s",
"LOGNAME": "root",
"LS_COLORS": "rs=0:di=38;5;27:ln=38;5;51:mh=44;38;5;15:pi=40;38;5;11:so=38;5;13:do=38;5;5:bd=48;5;232;38;5;11:cd=48;5;232;38;5;3:or=48;5;232;38;5;9:mi=05;48;5;232;38;5;15:su=48;5;196;38;5;15:sg=48;5;11;38;5;16:ca=48;5;196;38;5;226:tw=48;5;10;38;5;16:ow=48;5;10;38;5;21:st=48;5;21;38;5;15:ex=38;5;34:*.tar=38;5;9:*.tgz=38;5;9:*.arc=38;5;9:*.arj=38;5;9:*.taz=38;5;9:*.lha=38;5;9:*.lz4=38;5;9:*.lzh=38;5;9:*.lzma=38;5;9:*.tlz=38;5;9:*.txz=38;5;9:*.tzo=38;5;9:*.t7z=38;5;9:*.zip=38;5;9:*.z=38;5;9:*.Z=38;5;9:*.dz=38;5;9:*.gz=38;5;9:*.lrz=38;5;9:*.lz=38;5;9:*.lzo=38;5;9:*.xz=38;5;9:*.bz2=38;5;9:*.bz=38;5;9:*.tbz=38;5;9:*.tbz2=38;5;9:*.tz=38;5;9:*.deb=38;5;9:*.rpm=38;5;9:*.jar=38;5;9:*.war=38;5;9:*.ear=38;5;9:*.sar=38;5;9:*.rar=38;5;9:*.alz=38;5;9:*.ace=38;5;9:*.zoo=38;5;9:*.cpio=38;5;9:*.7z=38;5;9:*.rz=38;5;9:*.cab=38;5;9:*.jpg=38;5;13:*.jpeg=38;5;13:*.gif=38;5;13:*.bmp=38;5;13:*.pbm=38;5;13:*.pgm=38;5;13:*.ppm=38;5;13:*.tga=38;5;13:*.xbm=38;5;13:*.xpm=38;5;13:*.tif=38;5;13:*.tiff=38;5;13:*.png=38;5;13:*.svg=38;5;13:*.svgz=38;5;13:*.mng=38;5;13:*.pcx=38;5;13:*.mov=38;5;13:*.mpg=38;5;13:*.mpeg=38;5;13:*.m2v=38;5;13:*.mkv=38;5;13:*.webm=38;5;13:*.ogm=38;5;13:*.mp4=38;5;13:*.m4v=38;5;13:*.mp4v=38;5;13:*.vob=38;5;13:*.qt=38;5;13:*.nuv=38;5;13:*.wmv=38;5;13:*.asf=38;5;13:*.rm=38;5;13:*.rmvb=38;5;13:*.flc=38;5;13:*.avi=38;5;13:*.fli=38;5;13:*.flv=38;5;13:*.gl=38;5;13:*.dl=38;5;13:*.xcf=38;5;13:*.xwd=38;5;13:*.yuv=38;5;13:*.cgm=38;5;13:*.emf=38;5;13:*.axv=38;5;13:*.anx=38;5;13:*.ogv=38;5;13:*.ogx=38;5;13:*.aac=38;5;45:*.au=38;5;45:*.flac=38;5;45:*.mid=38;5;45:*.midi=38;5;45:*.mka=38;5;45:*.mp3=38;5;45:*.mpc=38;5;45:*.ogg=38;5;45:*.ra=38;5;45:*.wav=38;5;45:*.axa=38;5;45:*.oga=38;5;45:*.spx=38;5;45:*.xspf=38;5;45:",
"MAIL": "/var/spool/mail/root",
"PATH": "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin",
"PWD": "/root",
"SHELL": "/bin/bash",
"SHLVL": "3",
"SSH_CLIENT": "10.0.0.74 53446 22",
"SSH_CONNECTION": "10.0.0.74 53446 10.0.20.5 22",
"SSH_TTY": "/dev/pts/0",
"TERM": "xterm-256color",
"USER": "root",
"XDG_RUNTIME_DIR": "/run/user/0",
"XDG_SESSION_ID": "270",
"_": "/usr/bin/python2"
},
"ansible_fips": false,
"ansible_form_factor": "Other",
"ansible_fqdn": "kev-ansible.kev",
"ansible_hostname": "kev-ansible",
"ansible_interfaces": [
"lo",
"ens192"
],
"ansible_is_chroot": false,
"ansible_iscsi_iqn": "",
"ansible_kernel": "3.10.0-693.21.1.el7.x86_64",
"ansible_lo": {
"active": true,
"device": "lo",
"features": {
"busy_poll": "off [fixed]",
"fcoe_mtu": "off [fixed]",
"generic_receive_offload": "on",
"generic_segmentation_offload": "on",
"highdma": "on [fixed]",
"hw_tc_offload": "off [fixed]",
"l2_fwd_offload": "off [fixed]",
"large_receive_offload": "off [fixed]",
"loopback": "on [fixed]",
"netns_local": "on [fixed]",
"ntuple_filters": "off [fixed]",
"receive_hashing": "off [fixed]",
"rx_all": "off [fixed]",
"rx_checksumming": "on [fixed]",
"rx_fcs": "off [fixed]",
"rx_vlan_filter": "off [fixed]",
"rx_vlan_offload": "off [fixed]",
"rx_vlan_stag_filter": "off [fixed]",
"rx_vlan_stag_hw_parse": "off [fixed]",
"scatter_gather": "on",
"tcp_segmentation_offload": "on",
"tx_checksum_fcoe_crc": "off [fixed]",
"tx_checksum_ip_generic": "on [fixed]",
"tx_checksum_ipv4": "off [fixed]",
"tx_checksum_ipv6": "off [fixed]",
"tx_checksum_sctp": "on [fixed]",
"tx_checksumming": "on",
"tx_fcoe_segmentation": "off [fixed]",
"tx_gre_csum_segmentation": "off [fixed]",
"tx_gre_segmentation": "off [fixed]",
"tx_gso_partial": "off [fixed]",
"tx_gso_robust": "off [fixed]",
"tx_ipip_segmentation": "off [fixed]",
"tx_lockless": "on [fixed]",
"tx_mpls_segmentation": "off [fixed]",
"tx_nocache_copy": "off [fixed]",
"tx_scatter_gather": "on [fixed]",
"tx_scatter_gather_fraglist": "on [fixed]",
"tx_sctp_segmentation": "on",
"tx_sit_segmentation": "off [fixed]",
"tx_tcp6_segmentation": "on",
"tx_tcp_ecn_segmentation": "on",
"tx_tcp_mangleid_segmentation": "on",
"tx_tcp_segmentation": "on",
"tx_udp_tnl_csum_segmentation": "off [fixed]",
"tx_udp_tnl_segmentation": "off [fixed]",
"tx_vlan_offload": "off [fixed]",
"tx_vlan_stag_hw_insert": "off [fixed]",
"udp_fragmentation_offload": "on",
"vlan_challenged": "on [fixed]"
},
"hw_timestamp_filters": [],
"ipv4": {
"address": "127.0.0.1",
"broadcast": "host",
"netmask": "255.0.0.0",
"network": "127.0.0.0"
},
"ipv6": [
{
"address": "::1",
"prefix": "128",
"scope": "host"
}
],
"mtu": 65536,
"promisc": false,
"timestamping": [
"rx_software",
"software"
],
"type": "loopback"
},
"ansible_local": {
"is_installed": {
"is_vim_installed": {
"vim": "true"
}
},
"package_list": {
"all_kev_packages": {
"package1": "acl-2.2.51-12.el7.x86_64",
"package10": "authconfig-6.2.8-30.el7.x86_64",
"package11": "basesystem-10.0-7.el7.centos.noarch",
"package2": "aic94xx-firmware-30-6.el7.noarch",
"package3": "alsa-firmware-1.0.28-2.el7.noarch",
"package4": "alsa-lib-1.1.3-3.el7.x86_64",
"package5": "alsa-tools-firmware-1.1.0-1.el7.x86_64",
"package6": "ansible-2.6.1-1.el7.noarch",
"package7": "ansible-lint-3.4.21-1.el7.noarch",
"package8": "audit-2.7.6-3.el7.x86_64",
"package9": "audit-libs-2.7.6-3.el7.x86_64"
}
},
"system_owner": {
"system_owner": {
"owner": "kev"
}
}
},
"ansible_lsb": {},
"ansible_machine": "x86_64",
"ansible_machine_id": "072bb764550746bd9695d73f43c9cf3b",
"ansible_memfree_mb": 1307,
"ansible_memory_mb": {
"nocache": {
"free": 1579,
"used": 260
},
"real": {
"free": 1307,
"total": 1839,
"used": 532
},
"swap": {
"cached": 0,
"free": 0,
"total": 0,
"used": 0
}
},
"ansible_memtotal_mb": 1839,
"ansible_mounts": [
{
"block_available": 3300883,
"block_size": 4096,
"block_total": 3929344,
"block_used": 628461,
"device": "/dev/sda2",
"fstype": "xfs",
"inode_available": 7804215,
"inode_total": 7863808,
"inode_used": 59593,
"mount": "/",
"options": "rw,relatime,attr2,inode64,noquota",
"size_available": 13520416768,
"size_total": 16094593024,
"uuid": "d49a9903-d546-4981-bffb-4e5147e1199b"
},
{
"block_available": 207739,
"block_size": 4096,
"block_total": 259584,
"block_used": 51845,
"device": "/dev/sda1",
"fstype": "xfs",
"inode_available": 523947,
"inode_total": 524288,
"inode_used": 341,
"mount": "/boot",
"options": "rw,relatime,attr2,inode64,noquota",
"size_available": 850898944,
"size_total": 1063256064,
"uuid": "619dcc55-451d-44be-b364-8c94278c567c"
}
],
"ansible_nodename": "kev-ansible",
"ansible_os_family": "RedHat",
"ansible_pkg_mgr": "yum",
"ansible_processor": [
"0",
"GenuineIntel",
"Intel(R) Xeon(R) CPU X5660 @ 2.80GHz"
],
"ansible_processor_cores": 1,
"ansible_processor_count": 1,
"ansible_processor_threads_per_core": 1,
"ansible_processor_vcpus": 1,
"ansible_product_name": "VMware Virtual Platform",
"ansible_product_serial": "VMware-42 3b 24 ce 91 e0 3a be-b1 02 3c 83 0f 86 02 e8",
"ansible_product_uuid": "CE243B42-E091-BE3A-B102-3C830F8602E8",
"ansible_product_version": "None",
"ansible_python": {
"executable": "/usr/bin/python2",
"has_sslcontext": true,
"type": "CPython",
"version": {
"major": 2,
"micro": 5,
"minor": 7,
"releaselevel": "final",
"serial": 0
},
"version_info": [
2,
7,
5,
"final",
0
]
},
"ansible_python_version": "2.7.5",
"ansible_real_group_id": 0,
"ansible_real_user_id": 0,
"ansible_selinux": {
"status": "disabled"
},
"ansible_selinux_python_present": true,
"ansible_service_mgr": "systemd",
"ansible_ssh_host_key_ecdsa_public": "AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBHa2kNk4tpZ4/rXxM6969XkR29JQa91M7sSRHheXeQxmZjnRp/5o2ADQjFmXz+PouYA8PMiBU9u5Mx44oEXxDmU=",
"ansible_ssh_host_key_ed25519_public": "AAAAC3NzaC1lZDI1NTE5AAAAIE5MKxH1C+uyIHjAz48pwHj+6HdXw/9vCnc2PHRQZVND",
"ansible_ssh_host_key_rsa_public": "AAAAB3NzaC1yc2EAAAADAQABAAABAQDMNVNNOgPb+L9rnrm0D2dQWRVEjtnWAgbgVDtdixE79+jDR5TGfxuUmf74yRXM0flrdvirQtBvZjSwsj3/fUReUas0gt3LVs1b7jsxK6QeGgQCx6CCeopMgUb0JYXsMexbekZxxnpBcWAXh/Bjhko/8FpZaZhIvk0VTzQMCP7+/netcTi1m+CCCF1YhQmy8bGhN+aJuaaP2VMSDSauOFGUQUUaJkw+pjata+qWMwYemDabszkePFp0rBQEDSo6fIMlXvInm75Jf24tyb+X9+kOycGk4Rits/jXseB6j+L3rZRCX6b/F3JMNtqoBc7nybGvD/8Njn9Sl67DQUZenkcX",
"ansible_swapfree_mb": 0,
"ansible_swaptotal_mb": 0,
"ansible_system": "Linux",
"ansible_system_capabilities": [
"cap_chown",
"cap_dac_override",
"cap_dac_read_search",
"cap_fowner",
"cap_fsetid",
"cap_kill",
"cap_setgid",
"cap_setuid",
"cap_setpcap",
"cap_linux_immutable",
"cap_net_bind_service",
"cap_net_broadcast",
"cap_net_admin",
"cap_net_raw",
"cap_ipc_lock",
"cap_ipc_owner",
"cap_sys_module",
"cap_sys_rawio",
"cap_sys_chroot",
"cap_sys_ptrace",
"cap_sys_pacct",
"cap_sys_admin",
"cap_sys_boot",
"cap_sys_nice",
"cap_sys_resource",
"cap_sys_time",
"cap_sys_tty_config",
"cap_mknod",
"cap_lease",
"cap_audit_write",
"cap_audit_control",
"cap_setfcap",
"cap_mac_override",
"cap_mac_admin",
"cap_syslog",
"35",
"36+ep"
],
"ansible_system_capabilities_enforced": "True",
"ansible_system_vendor": "VMware, Inc.",
"ansible_uptime_seconds": 137627,
"ansible_user_dir": "/root",
"ansible_user_gecos": "root",
"ansible_user_gid": 0,
"ansible_user_id": "root",
"ansible_user_shell": "/bin/bash",
"ansible_user_uid": 0,
"ansible_userspace_architecture": "x86_64",
"ansible_userspace_bits": "64",
"ansible_virtualization_role": "guest",
"ansible_virtualization_type": "VMware",
"gather_subset": [
"all"
],
"module_setup": true
},
"changed": false
}