Floating Information Technology Environment
I'm not sure where this query belongs but this seems to be the closest.
Does anyone know is there is a floating information technology environment (FITE) type of distribution available? By that I mean that the overall operating environment floats above the hardware and is potentially not dependent on any single piece of it. This would work by using a directory service (probably OpenLDAP in multi-master mode) to define the overall system.
In terms of the initial installation the disk would be placed in the first server and started. The installation would ask for the network and subnet details for the system and the IP address for the server. The default services it would install, and they should be changeable, would be the directory service, the DCHP server, the PXE boot server, the repository server, the terminal server, the Intranet server, the mail server, the print server, and the storage server. It would also ask for the details of the first workstation to be connected to it. It would offer a selection of templates so that the architecture can be selected. It would also pre-select the directory management tool which we'll call “Network Affinity” for now as I don't know of any that exists that would do the job. The installer would also ask for the IP address and hostname for the first workstation and make a reservation in the DHCP server for it. It would also ask for a name and password for the initial administrative user who would also be given management rights to the directory.
Once the server is up and running the workstation with a blank hard drive would be connected to the network and started with the boot order to be the hard drive followed by the network. After failing on the hard drive boot, as there is no OS on it, it would boot to the network and the PXE server would check with the directory service based on the IP address given to it by the DHCP server as to what it should do with the system and based on how the computer object has been defined in the directory build the workstation to those specifications. At that point you would have your initial working system.
From here new systems can be added to the system using Network Affinity. You would right-click the container that you wanted the system to be in and select new computer. You would then select the template for the system, be it workstation or server and the type of architecture that it used along with the MAC address and the hostname that you wanted for it. If it is a workstation you could add any other non-standard applications that were not part of your default template. The printers that it would print to would also be added to the directory object describing the system. If is is a server any server application services that you would want it to run could also be added to the directory object definition. Then when the computer is started it would automatically be set in the way that you have defined it in the directory.
A feature that would help implement the floating characteristic of the system would be the ability to move server application services such as the mail server from one server to another. You would right-click the server that it is to be moved from and select properties which would bring up the properties dialog box. There would be a tab labelled SAS for server application services and it would list the services that it was running. Within the mail service would be buttons for configuration, logs, and data which would point to the location of these items on the server. There would also be a move button which if selected would bring up the option to move the service from that server to another. After selecting which server it is to move to and either initiating the move then or scheduling it for late at night when there are few or no users on the system it would install the mail server from the repository and copy over the configuration and data files. It would then shut down the service on the original server, perform one more sync to make sure everything is across, and then bring up the new mail server and register it in the directory. The workstations would be configured in the installation template such that the mail application either has a switch that queries the directory service on start up for the IP address of he mail server or is started via a script that does the same. That way all the workstations would connect to the new mail server automatically without any intervention.
When a server has reached its end of life, all the server application services could be moved off it preparing it for decommissioning. Then, on the security tab for the servers directory object, you could select to wipe the local drives and what level of wiping you wish to use. It would then do this and place a log file, probably in where the systems back up configuration files are stored, noting whether the wipe was successful or not and then shut itself down ready for removal. This could also be done for workstations although probably in larger numbers at a time. Network Affinity would probably be an GUI interface to scripts so that making same changes would be done through its interface with it calling a script while making large changes such a added a large number to workstations to the system would be done by running a script against a CSV file which would call the relevant scripts to ad the workstations directly. This would enable full cradle to grave management of computers in the whole of enterprise environment.
In addition with the back up of configuration files for workstations and their definitions in the directory, if a workstation was to become unusable the helpdesk could ask the end user to shut down the system and the start it up again but to press the F12 key, or whichever key starts the network boot, and the system would rebuild itself from scratch based on it directory definition including all the applications and printers assigned to it and at the last step lay down the configuration files so that it is set up to the preferred configuration. And because it is built from the repository it would be built with all the latest up dates automatically and there would be no need for maintenance for workstation images. Alternatively, if the workstation can still respond to commands remotely the helpdesk could possibly send a rebuild command from the security tab of the workstations directory dialog box in Network Affinity which would wipe the master boot record and then restart the system which would have the same effect if the BIOS is set to boot to the hard drive first and the network second. This would also work with virtual machines allowing for development and testing of software and system builds with relative ease. And with the system also allowing terminals it would provide a high level of flexibility in mixing different types of computers on the system. And if the PXE boot system can handle it even different architectures such as ARM could also be used on the system along with the more common i386 and AMD64 systems.
Software and templates would be added using a LDAP package system (.lpkg) that would be a zip file containing an LDIF file describing the package to the directory service and the template or software. The the whole of enterprise system is large enough it would be added to the root repository and then distributed to the child repositories based on a schedule, say night time, of when network traffic is low. The software can then be assigned to computers via Network Affinity either to a schedule or immediately. In each computers dialog box would be a command queue tab which lists all the actions scheduled for the computer and when they are scheduled to take place and they would be able to be modified or cancelled. Such and action could be a wake on LAN in the middle of the night for updates to be deployed. New distributions of the OS would be supplied as ISO files for new installations and lpkg files for existing installations. Then the version number in the workstation or server object is incremented and a rebuild initiated, after server application services have been moved to a different server for servers, and the new version would get installed. An lpkg file could also contain other Linux or even BSD distributions as long as a repository can be set up for it and the PXE boot service and be modified to accommodate it. It should be possible to also create installation templates for tablets and phones if the packages are available as long as they have networking built into them and for tablets and phones without an Ethernet socket some kind for boot image that starts up the wireless network interface and some kind of pseudo-PXE boot service to connect to the PXE boot server.
Although I've only provided an brief overview does anyone know if a distribution like this exists or is possible? It would be nice if it is.
Comments
-
I will help one paragraph at a time. Never heard of an operating system that did not depend on hardware it is running from. The only thing that comes close is a linux LiveCD.0
-
Pretty much any distro can accomplish those requests. Basically, the configuration is up to you.0
-
I finally read the whole article. Very impressive if all can be done. Have you build something similar to this, or is this something you would like to do?0
Categories
- All Categories
- 217 LFX Mentorship
- 217 LFX Mentorship: Linux Kernel
- 791 Linux Foundation IT Professional Programs
- 353 Cloud Engineer IT Professional Program
- 178 Advanced Cloud Engineer IT Professional Program
- 82 DevOps Engineer IT Professional Program
- 147 Cloud Native Developer IT Professional Program
- 137 Express Training Courses
- 137 Express Courses - Discussion Forum
- 6.2K Training Courses
- 47 LFC110 Class Forum - Discontinued
- 71 LFC131 Class Forum
- 42 LFD102 Class Forum
- 226 LFD103 Class Forum
- 18 LFD110 Class Forum
- 38 LFD121 Class Forum
- 18 LFD133 Class Forum
- 7 LFD134 Class Forum
- 18 LFD137 Class Forum
- 71 LFD201 Class Forum
- 4 LFD210 Class Forum
- 5 LFD210-CN Class Forum
- 2 LFD213 Class Forum - Discontinued
- 128 LFD232 Class Forum - Discontinued
- 2 LFD233 Class Forum
- 4 LFD237 Class Forum
- 24 LFD254 Class Forum
- 697 LFD259 Class Forum
- 111 LFD272 Class Forum
- 4 LFD272-JP クラス フォーラム
- 12 LFD273 Class Forum
- 148 LFS101 Class Forum
- 1 LFS111 Class Forum
- 3 LFS112 Class Forum
- 2 LFS116 Class Forum
- 4 LFS118 Class Forum
- LFS120 Class Forum
- 7 LFS142 Class Forum
- 5 LFS144 Class Forum
- 4 LFS145 Class Forum
- 2 LFS146 Class Forum
- 3 LFS147 Class Forum
- 1 LFS148 Class Forum
- 15 LFS151 Class Forum
- 2 LFS157 Class Forum
- 28 LFS158 Class Forum
- 7 LFS162 Class Forum
- 2 LFS166 Class Forum
- 4 LFS167 Class Forum
- 3 LFS170 Class Forum
- 2 LFS171 Class Forum
- 3 LFS178 Class Forum
- 3 LFS180 Class Forum
- 2 LFS182 Class Forum
- 5 LFS183 Class Forum
- 31 LFS200 Class Forum
- 737 LFS201 Class Forum - Discontinued
- 3 LFS201-JP クラス フォーラム
- 18 LFS203 Class Forum
- 134 LFS207 Class Forum
- 2 LFS207-DE-Klassenforum
- 1 LFS207-JP クラス フォーラム
- 302 LFS211 Class Forum
- 56 LFS216 Class Forum
- 52 LFS241 Class Forum
- 48 LFS242 Class Forum
- 38 LFS243 Class Forum
- 15 LFS244 Class Forum
- 2 LFS245 Class Forum
- LFS246 Class Forum
- 48 LFS250 Class Forum
- 2 LFS250-JP クラス フォーラム
- 1 LFS251 Class Forum
- 152 LFS253 Class Forum
- 1 LFS254 Class Forum
- 1 LFS255 Class Forum
- 7 LFS256 Class Forum
- 1 LFS257 Class Forum
- 1.2K LFS258 Class Forum
- 10 LFS258-JP クラス フォーラム
- 118 LFS260 Class Forum
- 159 LFS261 Class Forum
- 42 LFS262 Class Forum
- 82 LFS263 Class Forum - Discontinued
- 15 LFS264 Class Forum - Discontinued
- 11 LFS266 Class Forum - Discontinued
- 24 LFS267 Class Forum
- 22 LFS268 Class Forum
- 30 LFS269 Class Forum
- LFS270 Class Forum
- 202 LFS272 Class Forum
- 2 LFS272-JP クラス フォーラム
- 1 LFS274 Class Forum
- 4 LFS281 Class Forum
- 9 LFW111 Class Forum
- 259 LFW211 Class Forum
- 181 LFW212 Class Forum
- 13 SKF100 Class Forum
- 1 SKF200 Class Forum
- 1 SKF201 Class Forum
- 795 Hardware
- 199 Drivers
- 68 I/O Devices
- 37 Monitors
- 102 Multimedia
- 174 Networking
- 91 Printers & Scanners
- 85 Storage
- 758 Linux Distributions
- 82 Debian
- 67 Fedora
- 17 Linux Mint
- 13 Mageia
- 23 openSUSE
- 148 Red Hat Enterprise
- 31 Slackware
- 13 SUSE Enterprise
- 353 Ubuntu
- 468 Linux System Administration
- 39 Cloud Computing
- 71 Command Line/Scripting
- Github systems admin projects
- 93 Linux Security
- 78 Network Management
- 102 System Management
- 47 Web Management
- 63 Mobile Computing
- 18 Android
- 33 Development
- 1.2K New to Linux
- 1K Getting Started with Linux
- 371 Off Topic
- 114 Introductions
- 174 Small Talk
- 22 Study Material
- 805 Programming and Development
- 303 Kernel Development
- 484 Software Development
- 1.8K Software
- 261 Applications
- 183 Command Line
- 3 Compiling/Installing
- 987 Games
- 317 Installation
- 97 All In Program
- 97 All In Forum
Upcoming Training
-
August 20, 2018
Kubernetes Administration (LFS458)
-
August 20, 2018
Linux System Administration (LFS301)
-
August 27, 2018
Open Source Virtualization (LFS462)
-
August 27, 2018
Linux Kernel Debugging and Security (LFD440)