IT Infrastructure Architecture model
The definition of infrastructure as I defined it in my book is based on the IT systems model as shown below. In this model processes use information, and this information is stored and managed using applications. Applications need application platforms and infrastructure to run. All of this is managed by various categories of systems management.
A model is always a simplified version of reality, useful to explain a certain point; not covering all details. Therefore, the infrastructure model is not perfect. Remember, as George E. P. Box stated: “Essentially, all models are wrong, but some are useful.”
Organizations implement business processes to fulfil their mission and vision. These processes are organization specific – they are the main differentiators between organizations. As an example, some business processes in an insurance company could be claim registration, claim payment, and create invoice.
Business processes create and use information. In our example, information could be the claim’s date or the number of dollars on an invoice. Information is typically entered, stored and processed using applications.
Functional management is the category of systems management that ensures the system is configured to perform the required business functions.
The Applications building block includes several types of applications based on the following characteristics:
- Usage: Applications can be single-user or multi-user. A single-user application typically runs on end-user devices such as PCs and laptops. Examples include web browsers, word processors, and email clients. Examples of multi-user applications include mail servers, portals, collaboration tools, and instant messaging servers.
- Source: Applications can be purchased as commercial off-the-shelf (COTS) products or developed as custom software.
- Architecture: Applications can be designed as standalone applications or as multi-tier applications. A multi-tier application consists of a number of layers, such as a JavaScript application in a browser that communicates with an on-premises web server, which communicates with an application server, which communicates with a database.
- Timeliness: Interactive applications respond to user actions, such as mouse clicks. They typically respond in the range of 100 to 300 ms. Real-time systems, such as Supervisory Control And Data Acquisition (SCADA) systems, are used in manufacturing, logistics, or other environments where timeliness is critical. These systems must respond in less than 10 ms. At the other end of the spectrum are batch-based systems that process data for hours at a time.
Each of these types of applications requires a different type of underlying infrastructure.
Applications management is responsible for the configuration and technical operations of the applications.
Most applications need some additional services, known as application platforms, that enable them to work. We can identify the following services as part of the application platform building block:
- Application servers provide services to applications. Examples are Java or .Net application servers and frameworks like IBM WebSphere, Apache Tomcat, and Red Hat JBoss.
- Container platforms like Kubernetes, Azure Container Instances, and Amazon Elastic Container Service, that run docker containers.
- Connectivity entails Enterprise Service Buses (ESBs) like Microsoft BizTalk, the TIBCO Service Bus, IBM MQ, and SAP NetWeaver PI.
- Databases, also known as database management systems (DBMSs), provide a way to store and retrieve structured data. Examples are Oracle RDBMS, IBM DB2, Microsoft SQL Server, PostgreSQL, MySQL, Apache CouchDB, and MongoDB.
Application platforms are typically managed by systems managers specialized in the specific technology.
The following infrastructure building blocks can be depicted:
- End User Devices are the devices used by end users to work with applications, like PCs, laptops, thin clients, mobile devices, and printers.
- Operating Systems are collections of programs that manage a computer’s internal workings: its memory, processors, devices, and file system.
- Compute are the physical and virtual computers in the datacenter, also known as servers.
- Storage are systems that store data. They include hard disks, tapes, Direct Attached Storage (DAS), Network Attached Storage (NAS), and Storage Area Networks (SANs).
- Networking connects all components. This building block includes routers, switches, firewalls, WANs (wide area networks), LAN, dial-in, internet access, and VPNs (Virtual Private Network), and (on the network application level) relatively simple services like DNS, DHCP, and time services, necessary for the infrastructure to work properly.
- Datacenters are locations that host most IT infrastructure hardware. They include facilities like uninterruptible power supplies (UPSs), Heating, Ventilation, and Air Conditioning (HVAC), computer racks, and physical security measures.
Please note that these building blocks are not per definition hierarchically related. For instance, servers need both networking and storage, and both are equally important.
Infrastructure management includes processes like ITIL and DevOps, and tools like monitoring, backup, and logging.
An IT system does not only provide functionality to users; functionality is supported by non-functional attributes. Non-functional attributes are the effect of the configuration of each IT system component, both on the infrastructure level and above.
Although many other non-functional attributes are defined, availability, performance, and security are almost always the essential ones in IT infrastructure architectures.
This entry was posted on Vrijdag 16 November 2012