We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Sysadmins, too, deserve interface stability

Formale Metadaten

Titel
Sysadmins, too, deserve interface stability
Untertitel
Designing a stable interface to abstract OS configuration across multiple distribution versions - Linux System Roles for Ansible
Serientitel
Anzahl der Teile
561
Autor
Lizenz
CC-Namensnennung 2.0 Belgien:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen.
Identifikatoren
Herausgeber
Erscheinungsjahr
Sprache

Inhaltliche Metadaten

Fachgebiet
Genre
Abstract
APIs strive to make programmers’ jobs easier by staying stable. Less attention is paid to make the jobs of system administrators easier by providing stable configuration interfaces. These interfaces consist of configuration file formats and various utilities that often change with new major OS releases. Ansible is a great tool for system management, but keeping Ansible playbooks working across major distribution version upgrades can be challenging due to this interface instability. We present Linux System Roles (github.com/linux-system-roles) which allow to manage RHEL, CentOS and Fedora with sufficient abstraction to enable using the same playbooks for different releases and to avoid the need of changing playbooks due to implementation changes. The main difficulty of this approach is getting the interface right to avoid the need of incompatible changes in the future. We will show how to use Linux System Roles with Ansible to configure your Fedora, RHEL or CentOS systems and discuss the challenges that one may encounter when designing such a system or Ansible roles in general. APIs strive to make programmers’ jobs easier by staying stable. Less attention is paid to make the jobs of system administrators easier by providing stable configuration interfaces. These interfaces consist of configuration file formats and various utilities that often change with new major OS releases. Ansible is a great tool for system management, but keeping Ansible playbooks working across major distribution version upgrades can be challenging due to this interface instability. We present Linux System Roles (github.com/linux-system-roles) which allow to manage RHEL, CentOS and Fedora with sufficient abstraction to enable using the same playbooks for different releases and to avoid the need of changing playbooks due to implementation changes. The roles currently support configuring: - kdump - SELinux - networking - time synchronization - postfix - storage - logging The main difficulty of this approach is getting the interface right to avoid the need of incompatible changes in the future. We will explain and discuss the choices that we made in the design of the interfaces of our roles. We expect our experience to be generally useful for those who design Ansible roles. Attendees will gain a practical understanding of how to use Linux System Roles with Ansible to configure their Fedora, RHEL or CentOS systems consistently across multiple releases. The audience is assumed to have a basic understanding of Ansible and experience with Linux (preferably Fedora-derived) system administration.