Installare Ansible su Windows con Cygwin

Non stiamo a interrogarci sul perché ma vediamo il come.

Per prima cosa ci occorre il file di setup di Cygwin.

A questo punto, da un terminale lanciamo il comando che installerà Cygwin con tutte le dipendenze necessarie per installare successivamente Ansible:

setup-x86_64.exe -q --packages=binutils,curl,cygwin32-gcc-g++,gcc-g++,git,gmp,libffi-devel,libgmp-devel,make,nano,openssh,openssl-devel,python-crypto,python-paramiko,python2,python2-devel,python2-openssl,python2-pip,python2-setuptools

Ora possiamo avviare Cygwin e verificare che pip sia stato installato correttamente:

/c/cygwin64 $ which pip2
/usr/bin/pip2

E installare Ansible:

pip2 install ansible

Per testarlo:

ansible

Ci manca un ultimo passaggio per poter usare Ansible su Windows. Dobbiamo creare il file ansible.cfg e inserirvi le righe seguenti:

[ssh_connection]
ssh_args = -o ControlMaster=no

Quest’ultimo parametro è assolutamente fondamentale per il funzionamento in ambienti Windows di Ansible. Possiamo passarlo anche come variabile d’ambiente così:

export ANSIBLE_SSH_ARGS="-o ControlMaster=no"

Installare lo Zabbix Agent su CentOS 7

Lo Zabbix Agent è la componente che è necessario installare sulle macchine che vogliamo monitorare con Zabbix. La sua funzione è quella di collezionare dati sui client e di renderli disponibili al server.

Esistono due modalità di comunicazione tra la componente agent e il server:

  1. Passive: il server richiede i dati al client
  2. Active: il client manda i dati al server

Dopo aver visto l’installazione del server Zabbix, vediamo come si installa un client su una macchina CentOS 7.

Per prima cosa occorre configurare il repository ufficiale

rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm

Ora possiamo installare lo Zabbix Agent con il comando

yum install -y zabbix-agent

Il passo successivo sarà la configurazione dell’agent inserendo nel file i parametri per contattare il server.
Il file è /etc/zabbix/zabbix_agentd.conf

#Server=[indirizzo del zabbix server]
#ServerActive=[indirizzo del zabbix server]
#Hostname=[ Hostname del client ]
#EnableRemoteCommands=[ per eseguire comandi dal server ]

Server=192.168.1.100
ServerActive=192.168.1.100
Hostname=Server1
EnableRemoteCommands=1

Se stiamo utilizzando un firewall locale apriamo la porta utilizzata dall’agent

firewall-cmd –-add-port=10050/tcp –permanent
firewall-cmd –reload

E infine avviamo il servizio e lo abilitiamo all’avvio

systemctl start zabbix-agent
systemctl enable zabbix-agent

Terminate queste operazioni si può aggiungere il nuovo host dalla console web dello Zabbix Server e iniziare a monitorarlo.
Nel caso ci fossero problemi si può consultare questo post sul troubleshooting dello Zabbix Agent.

Troubleshooting zabbix agent

Verificare che il servizio sia attivo

systemctl status zabbix-agent

Esaminare i log

Il file si chiama zabbix_agentd.log e si trova sotto /var/log/zabbix
tailf /var/log/zabbix/zabbix_agentd.log

Verificare che la porta sia in ascolto

Sul server su cui è installato lo zabbix agent

netstat -na | grep 10050

Controllare SELinux

cat /etc/selinux/config

Dallo zabbix server possiamo usare nmap come segue.

nmap -Pn -p 10050 10.138.136.47

-Pn fa in modo che dia per scontato che l’host è acceso saltanto il processo d host discovery
-p è la porta da controllare, nel nostro caso la 10050

Installare Ansible su CentOS 7


Ansible è un software libero che consente di automatizzare le procedure di configurazione e gestione sui sistemi unix-like e Windows

Da Wikipedia

Dopo aver visto come installare Ansible su Ubuntu 18.04 LTS, vediamo come farlo su CentOS 7.

Dal momento che la versione inclusa nei repository della distribuzione è un po’ vecchia, per prima cosa configuriamo i repo di EPEL

yum install epel-release

Ora possiamo procedere all’installazione

yum install -y ansible

Verifichiamo che funzioni tutto

ansible --version
ansible 2.7.6
config file = /etc/ansible/ansible.cfg
configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python2.7/site-packages/ansible
executable location = /usr/bin/ansible
python version = 2.7.5 (default, Oct 30 2018, 23:45:53) [GCC 4.8.5 20150623 (Red Hat 4.8.5-36)]

Google Analytics su WordPress: Analytics Cat il plugin più leggero che possiate installare

Partiamo col dire che si può aggiungere Google Analytics a WordPress anche senza alcun plugin e che, probabilmente, sarebbe meglio fare così.

Ma noi siamo pigri e non abbiamo nessuna intenzione di toccare a manina i file del nostro template. Fortunatamente ci sono decine di plugin per ottenere il nostro scopo.

Il più famoso è Google Analytics Dashboard Plugin for WordPress by MonsterInsights (più di 2 milioni di installazioni).
Quello che ho scelto io è invece Analytics Cat, essenziale, ridotto all’osso ma con la possibilità di escludere dalle statistiche gruppi di utenti. Che è tutto quello che mi serve e che ho da chiedere a un plugin per le statistiche su Google Analytics.

Installare Zabbix Server 4.0 su CentOS 7

Zabbix è un software libero per il monitoraggio di reti e vari sistemi informatici, atto a tracciare lo stato di server e servizi di rete correlati. Ideato dal programmatore russo Alexei Vladishev, è rilasciato sotto i termini della GNU General Public License versione 2.

da Wikipedia

Installazione di Apache e PHP

Passaggi preliminari.

yum -y install httpd php
systemctl start httpd
systemctl enable httpd

Configurazione dei repository ufficiali

Non esistono versioni di Zabbix nei repository di CentOS, dobbiamo quindi configurare il repository ufficiale, per farlo usiamo il comando che segue.

rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm

Installazione di Zabbix

Ora possiamo installare il server, l’agent e i pacchetti che servono al funzionamento dell’interfaccia web. Nell’esempio che segue si fa riferimento alla versione che utilizza MySQL/MariaDB, nel caso si voglia utilizzare PostgreSQL i pacchetti saranno, ovviamente, diversi.

yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent 

Installazione e configurazione di MariaDB

Installiamo e configuriamo il database.
NOTA BENE: sicuramente non è una buona idea usare la password del mio esempio.

yum -y install mariadb-server

systemctl start mariadb
systemctl enable mariadb

mysql_secure_installation

mysql -uroot -p

mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'password';
mysql> quit;

Popoliamo il database appena creato

zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix

Configurazione di Zabbix

Ora è necessario modificare il file di configurazione /etc/zabbix/zabbix_server.conf aggiungendo la password che abbiamo scelto in precedenza.

DBPassword=password

Configurazione di PHP

Occorre modificare anche un parametro nel file /etc/httpd/conf.d/zabbix.conf

php_value date.timezone Europe/Rome

Abilitazione e avvio dei servizi

Abilitiamo i servizi e avviamoli

systemctl restart zabbix-server zabbix-agent httpd
systemctl enable zabbix-server zabbix-agent httpd

Configurazione firewall

Apriamo le porte del firewall necessarie al funzionamento dei servizi.

firewall-cmd --permanent --add-port=10050/tcp
firewall-cmd --permanent --add-port=10051/tcp
firewall-cmd --permanent --add-port=80/tcp
systemctl restart firewalld

Gli ultimi passaggi sono piuttosto intuitivi e si portano a termine usando l’interfaccia web. La url sarà qualcosa di simile a http://nostroserver/zabbix.

Installare Ansible su Ubuntu 18.04 LTS


Ansible è un software libero che consente di automatizzare le procedure di configurazione e gestione sui sistemi unix-like e Windows

Da Wikipedia

Vediamo velocemente come installare Ansible su Ubuntu 18.04 LTS:

$ sudo apt-get update
$ sudo apt-get install software-properties-common
$ sudo apt-add-repository --yes --update ppa:ansible/ansible
$ sudo apt-get install ansible

Verifichiamo che funzioni tutto

$ ansible --version