ISconf
This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)
|
In computing, ISconf is a software tool to manage a network of servers.
ISconf operates on a pull model, meaning even servers that are not up when a change is made will receive the change once they come back up. As of version 4, ISconf requires no central server, though it does expect all servers to start identically, which is easiest to accomplish using some form of automated install which may require a central server.
Theory
ISconf comes from the "InfraStructure administration" movement which created and defined most of the OS-side backgrounds (in theory terms) of what is now making up the DevOps sphere. It is based on the idea that the best way to keep servers from diverging is to apply the same set of operations in the same order.
This is in contrast to the "convergence" theory of system automation, which attempts to "converge" servers to known states from arbitrary states using sets of rules such as "if a package outside of this set is installed, uninstall it", "if package X is not installed, install it", or "if daemon X is not running, start it". According to Steve Traugott, there is no way to guarantee that a given set of rules will actually be able to converge from any given state.
ISconf enforces the order of operations by assuming only commands issued through it change the state of the system. As a result, if a package or file is installed on a system manually, it will stay there, which may eventually cause problems such as version conflicts. ISconf is targeted at environments where configurations must remain identical. In such environments, it is typical to give only a few systems administrators root access to hosts. This minimizes the risk of manual changes because it is easy to train a small group of people to only make changes through ISconf.
ISconf was inspired by, and originally implemented as, Makefiles. However, Makefiles specify dependencies and not a total ordering of operations. ISconf version 1 dealt with this by making each operation dependent on the previous one, but this was tedious and poorly suited to Make. More recent versions of ISconf use a simple append-only journal.
Major versions
The major version in common use apparently were ISconf2 and ISconf3, while ISconf4 stayed in a very long beta period. It had in fact been finished and put to use in larger environments but due to the delay saw limited community adoption.
- ISconf 1 (Makefiles)
- ISconf 2 (early 200x?) written by Steve Traugott
- ISconf 3 (2002) was a rewrite of version 2 by Luke Kanies.
- ISconf 4 was mostly written by the original author, Steve Traugott.
Trivia
Luke Kanies later switched to CFengine2, until finally authored and released Puppet. As a result, one could consider ISconf an ancestor of Puppet, though both CFengine and Puppet implement the "convergence" model of configuration management, essentially the opposite of the "order of operations" model implemented by at least ISconf versions 1, 2, and 4.
See also
External links
- ISconf's web site
- Bootstrapping an Infrastructure, Steve Traugott and Joel Huddleston's LISA '98 paper about the ideas that led to ISconf (pre-dates ISconf itself)
- Lukes description of ISconf 3 theoretical background and goals
- Theory section and mailing list archives for system management automation
- Github Repository for ISconf4
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.