Seite wählen

NETWAYS Blog

Managing your Ansible Environment with Galaxy

Ansible is known for its simplicity, lightweight footprint and flexibility to configure nearly any device in your infrastructure. Therefore it’s used in large scale environments shared between teams or departments. This leads to even bigger Ansible environments which need to be tracked or managed in version control systems like Git.

Mostly environments grow with their usage over time, in this case it can happen that all roles are managed inside one big repository. Which will eventually lead to quite messy configuration and loss of knowledge if roles are tested or work the way they supposed to work.

Ansible provides a solution which is called Galaxy, it’s basically a command line tool which keeps your environment structured, lightweight and enforces your roles to be available in a specific version.

First of all you can use the tool to download and manage roles from the Ansible Galaxy which hosts many roles written by open-source enthusiasts. 🙂


# ansible-galaxy install geerlingguy.ntp -v
Using /Users/twening/ansible.cfg as config file
 - downloading role 'ntp', owned by geerlingguy
 - downloading role from https://github.com/geerlingguy/ansible-role-ntp/archive/1.6.4.tar.gz
 - extracting geerlingguy.ntp to /Users/twening/.ansible/roles/geerlingguy.ntp
 - geerlingguy.ntp (1.6.4) was installed successfully

# ansible-galaxy list
# /Users/twening/.ansible/roles
 - geerlingguy.apache, 3.1.0
 - geerlingguy.ntp, 1.6.4
 - geerlingguy.mysql, 2.9.5

Furthermore it can handle roles from your own Git based repository. Tags, branches and commit hashes can be used to ensure it’s installed in the right version.


ansible-galaxy install git+https://github.com/Icinga/ansible-icinga2.git,v0.2.0
 - extracting ansible-icinga2 to /Users/twening/.ansible/roles/ansible-icinga2
 - ansible-icinga2 (v0.2.0) was installed successfully

It’s pretty neat but how does this help us in large environments with hundreds of roles?

The galaxy command can read requirement files, which are passed with the „-r“ flag. This requirements.yml file can be a replacement for roles in the roles path and includes all managed roles of the environment.


# vim requirements.yml
- src: https://github.com/Icinga/ansible-icinga2.git
  version: v0.2.0
  name: icinga2

- src: geerlingguy.mysql
  version: 2.9.5
  name: mysql

Then run ansible-galaxy with the „–role-file“ parameter and let galaxy manage all your roles.


# ansible-galaxy install -r requirements.yml
 - icinga2 (v0.2.0) is already installed, skipping.
 - downloading role 'mysql', owned by geerlingguy
 - downloading role from https://github.com/geerlingguy/ansible-role-mysql/archive/2.9.5.tar.gz
 - extracting mysql to /Users/twening/.ansible/roles/mysql
 - mysql (2.9.5) was installed successfully

In case you work with Ansible AWX, you can easily replace all your roles with this file in the roles directory and AWX will download and manage your roles directory automatically.

A example project could look like this.


awx_project/
├── example_playbook.yml
├── group_vars
├── host_vars
├── hosts
└── roles
    └── requirements.yml

In summary, in large environments try to keep your code and configuration data separated, try to maintain your roles in their own repository to avoid conflicts at the main project.

Check out our Blog for more awesome posts and if you need help with Ansible send us a message or sign up for one of our trainings!

Thilo Wening
Thilo Wening
Manager Consulting

Thilo hat bei NETWAYS mit der Ausbildung zum Fachinformatiker, Schwerpunkt Systemadministration begonnen und unterstützt nun nach erfolgreich bestandener Prüfung tatkräftig die Kollegen im Consulting. In seiner Freizeit ist er athletisch in der Senkrechten unterwegs und stählt seine Muskeln beim Bouldern. Als richtiger Profi macht er das natürlich am liebsten in der Natur und geht nur noch in Ausnahmefällen in die Kletterhalle.

günstig Strom messen und schalten – Temperatur messen geht auch noch!

Kürzlich erreichte mich eine Anfrage unseres Kunden bezüglich der Temperaturmessung. Je nach den Anforderungen empfehlen wir hier in aller Regel die Geräte von HWgroup, AKCP oder Gude. Somit wurden diesem Kunden auch gudeLösungen von diesen 3 Herstellern angeboten.
Nun kam eine neue Anforderung dazu: Strom messen und schalten. Nach kurzer Überprüfung habe ich festgestellt, dass es keine Erweiterung der oben genannten Lösungen gibt, welche dieses Szenario abdeckt.
Es gibt aber einen ganz einfachen Ansatz – nur andersrum gedacht. Wieso nicht eine Schalt- und Messsteckdose mit Temperatursensor? Die gibt’s auch bei uns im Shop, nur den Sensor müsste man extra kaufen. Natürlich ist dieser auch als Kombisensor zu haben. Die Steckdose ist – wie man es von Gude gewohnt ist, via Webfrontend und SNMP (auch SNMP-Traps) benutzbar (Messwerte ablesen, Schalten…). Aber auch via Mails kann die Steckdose auf sich aufmerksam machen.
Sollten darüber hinaus auch noch SMS gewünscht sein, empfiehlt sich die Lösung von Braintower (Variante mit Nagios wird benötigt), dieses Gerät hat eine E-Mail2SMS-Schnittstelle, und E-Mails können praktisch von jedem Messgerät aus versendet werden.

Teltonika ModemUSB/E10 – Jetzt auch mit x64 Treiber für Windows!

teltonika sms berater
In letzter Zeit häuften sich die Anfragen seitens unserer Kunden, ob ein x64 Treiber für Windows Systeme verfügbar wäre. Diese Anfragen können wir heute positiv beantworten:
Ab sofort steht für das Teltonika ModemUSB/E10 eine x64 Software sowie ein Treiber zum Download bereit. Der Treiber wird mit der Software-Installation nicht automatisch mit installiert, sondern lediglich im Installations-Ordner unter „Driver“ abgelegt. Daher haben wir diesen extrahiert und separat angeboten.
Die Software selbst macht aus dem USB Modem ein sehr nützliches Addon für Windows-Systeme. Man verfügt nicht nur über die Möglichkeit, das Modem als richtiges Gateway für die Internetverbindung zu nutzen, sondern sie fungiert auch gleich als SMS-Client, da hierüber sowohl SMS versendet als auch empfangen werden können.
Das wirklich hervorzuhebende ist, dass man eine komplette Übersicht über die gesendeten, empfangen sowie die gelesenen und ungelesenen SMS hat. Die Weboberfläche ist ebenfalls sehr schön anzusehen und intuitiv bedienbar.
Hier ein Screenshot, der die Software Oberfläche zeigt:
Teltonika ModemUSB/E10 - Software
Wer bei der Installation des Treibers oder der Software Hilfe benötigt, findet hier einen FAQ-Eintrag in unserem Online-Shop, der Schritt für Schritt das Vorgehen zur Installation zeigt.
Interesse an diesem oder anderen Produkten für Ihre Überwachung?
Dann besuchen Sie einfach unseren NETWAYS Online-Shop.
Für einen persönlichen Kontakt stehen wir Ihnen ebenfalls sehr gerne zur Verfügung – nutzen Sie hierfür einfach unser Kontaktformular, schreiben Sie uns eine E-Mail oder rufen Sie uns an! Alle Details zum Shop-Kontakt finden Sie hier.

Christian Stein
Christian Stein
Manager Sales

Christian kommt ursprünglich aus der Personalberatungsbranche, wo er aber schon immer auf den IT Bereich spezialisiert war. Bei NETWAYS arbeitet er als Manager Sales und berät unsere Kunden in der vertrieblichen Phase rund um das Thema Monitoring. Gemeinsam mit Georg hat er sich Mitte 2012 auch an unserem Hardware-Shop "vergangen".