Just a few years ago PCs used in the office were superior to those people had at home. This situation has changed now – while most organizations still use bulky PCs or laptops with a limited set of business software, users at home have access to fast laptops of the brand they like, tablets that allow them to run thousands of highly attractive applications and they have fast broadband internet connections at home that are often faster than the network in the office.
To attract new employers and because people will take their personal device to the office anyway, most organizations are now confronted with a new paradigm, called Bring Your Own Device (BYOD).
BYOD allows people to bring personally owned – typically mobile – devices to the office, using them to access the organization’s applications and data, as well as their personal applications and data.
The BYOD concept creates conflicting interests. Systems managers want to fully control the end user device, while the owners of the devices want full freedom. And since the user paid for the device (they brought their own device), it will not be acceptable that systems managers can erase the device at will (including all family photos or purchased music) or that this data is even visible to the systems managers.
Virtualization techniques can be used to create separate environments on these devices. This is still a niche market, but there are solutions that implement a hypervisor on the device that runs two virtual machines:
- One virtual machine with has access to the organization’s data and applications and is fully managed by the organization’s systems managers. This virtual machine is managed using Mobile device management (MDM) that can be used to monitor, maintain and secure devices. When needed, the machine can be remotely wiped to remove all sensitive data.
- One virtual machine that is owned and managed by the end user. This machine runs whatever applications the user wants (browsers, social network clients, games, music and video players, etc.).
Both virtual machines use the same underlying hardware like network connections, screen, GPS, compass, sound system, etc. Since both virtual machines are run on top of a hypervisor, no sensitive data will be available from the user’s managed virtual machine.
This entry was posted on Friday 30 November 2012
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 Friday 16 November 2012