What is provisioning?

Authors

Michael Goodwin

Staff Editor, Automation & ITOps

IBM Think

Provisioning defined

In IT and computing, provisioning refers to the process of setting up IT infrastructure, including hardware, networks, virtual machines and other resources, and making resources available to systems and users.

The term is used (sometimes loosely) in various ways in IT, but generally means to make something available for use. Provisioning is an early step in the deployment process and is not to be confused with configuration. Once resources such as servers, network components, applications or devices are provisioned, they are then configured according to organizational or user specifications, deployed, managed and maintained over their lifecycle.

Effective provisioning is important because it provides the access and resources that systems and users need to operate effectively, and helps promote IT security and organizational efficiency. 

The latest tech news, backed by expert insights

Stay up to date on the most important—and intriguing—industry trends on AI, automation, data and beyond with the Think newsletter. See the IBM Privacy Statement.

Thank you! You are subscribed.

Your subscription will be delivered in English. You will find an unsubscribe link in every newsletter. You can manage your subscriptions or unsubscribe here. Refer to our IBM Privacy Statement for more information.

Types of provisioning

For IT environments to function efficiently, all facets must interoperate seamlessly. Proper provisioning plays a significant role in the success of this endeavor. Provisioning needs vary by organization, but the following are some of the most common types of provisioning:

Server provisioning

Server provisioning is the process of setting up physical or virtual servers with the resources (such as CPUs, RAM and storage) they need to operate. There are many different types of servers—file servers, web servers, application servers, proxy servers and policy servers, for example—each with their own function. Businesses also have their own distinct server requirements.

Server provisioning includes determining how a server, whether cloud-based or on-premises, will be used and what that use requires. It also includes setting up the hardware, installing software such as operating systems and applications, and any other steps needed to create a new machine in that desired state.

Network provisioning

Network provisioning refers to the setting up of the components that comprise an enterprise network, such as routers, switches, hubs and firewalls, to create a functioning networking that authorized users, devices and servers can access.

In the network provisioning process, IT teams assign IP addresses, define which devices and user identities can access the network (and the hardware and devices it connects) and implement network security measures to help keep the network secure.

Application provisioning

Application provisioning and service provisioning encompass the setup of enterprise applications and services that users need to do their job. This includes setting up user accounts and access credentials, granting access rights to software-as-a-service (SaaS) platforms, applications, data and other resources. It can also include the maintenance and removal of application accounts and permissions as user roles evolve.

User provisioning

User provisioning, or account provisioning, is a type of identity management responsible for creating, modifying or deleting user accounts and profiles. It is usually handled between HR and IT teams.

In user provisioning, access permissions and privileges are established and authentications are granted, often using role-based access control (RBAC). RBAC grants a user access to specific resources based on their role and work requirements.

User provisioning usually occurs during the onboarding of a new employee, or when someone takes on a new role within the organization. The opposite process, deprovisioning, occurs when an employee is leaving the company, or offboarding.

These processes help ensure that users have access to the resources and tools that they need to do their job. These also help protect the integrity of the IT environment by verifying that access to IT resources are appropriately assigned.

Identity and access management is a crucial component of cybersecurity.

Cloud provisioning

Cloud provisioning is the process of creating the infrastructure that supports a cloud environment. It involves setting up the foundational hardware, virtualization, storage and networking components necessary for cloud computing, as well as the cloud-based resources, apps and services that users need to access.

Device provisioning

Device provisioning is the setup of IT equipment such as smart phones and computers. It is often used to manage devices within the Internet of Things (IoT).

Device provisioning helps ensure that a user's device operates seamlessly within the organization's IT environment, and that the device is set up with access and resources appropriate for the end user to which which it is assigned.

AI Academy

Achieving AI-readiness with hybrid cloud

Led by top IBM thought leaders, the curriculum is designed to help business leaders gain the knowledge needed to prioritize the AI investments that can drive growth.

Provisioning vs. configuration

Provisioning and configuration are distinct operations in the deployment process. Before a resource, such as a device or server, can be configured, it must be provisioned, or set up.

A slightly crude, but helpful, analogy is to think of the construction of a house. Provisioning is akin to building the structure itself. Once the house is up, it must be configured to meet the needs of its owner: for example, keys must be made, smoke detectors and security systems installed and the rooms of the house outfitted to satisfy the requirements of the people living in it.  

In the case of a server, provisioning includes the setting up of virtual and physical hardware, installing the operating system, connecting to networks and making resources (such as CPU, memory, storage and a network connection) available for that server.

Once that is complete, the server can be configured to meet the specific requirements of a particular application or workload. Configuration includes partitioning drives, adjusting operating system settings, configuring firewalls, installing and configuring applications, and ensuring the system remains in the desired state.

Just as there are many different types of provisioning, there are many types of configuration, and both processes can be automated.

Automated provisioning

Traditionally, IT teams had to manually provision and configure IT infrastructure for each new deployment or new user, a tedious and time-consuming process that is not compatible with DevOps workflows. In many modern enterprise IT environments, provisioning is automated. Automated provisioning provides a faster, more efficient and more consistent way to create IT infrastructure and is often accomplished through infrastructure as code (IaC).

Infrastructure as code enables the provisioning, configuration and management of IT infrastructure using code and templates. This means that developers no longer need to manually provision and manage infrastructure components each time an application is developed or deployed, a new hire is brought on or a new network or cloud deployment is needed. With IaC, infrastructure can be provisioned, modified or taken down by running a script.

Benefits of automated provisioning

Automated provisioning helps organizations improve resource allocation and ROI, and strengthen IT security. Additional benefits include:

Productivity gains

Automated provisioning can deliver productivity gains across an organization by helping streamline processes and optimize how employees spend their time. When IT teams are freed from the burden of repetitive manual provisioning, they can focus their efforts on higher-level strategic work.

Automated provisioning helps developers accelerate the delivery of new applications, features and services, as the environments they need to do so are automatically and consistently provisioned. It also helps ensure that end users companywide have access to the resources they need to do their job, eliminating workflow slowdowns and similar drags on productivity.

Dynamic scaling

As a business grows, so too does its provisioning needs. Automated provisioning enables a business to scale in a flexible, efficient manner by allocating (or de-allocating) servers, storage, network components and other resources to match real-time need. Essentially, resources are spun up when needed, and taken down when they are not. This dynamic alignment helps prevent bottlenecks during periods of high demand, and reduce cost overruns during slower periods. 

Increased compliance

Automated provisioning helps an organization maintain compliance because it facilitates the consistent implementation of policies and procedures across the entire IT ecosystem. When changes need to be made, they can be rolled out automatically (and uniformly) across all resources.

Fewer errors

Like all things human-powered, manual provisioning is susceptible to human error. With automated provisioning, resources (and access to them) are consistently provisioned to predefined standards. Also, an automatic audit trail is maintained, showing how access was defined, how authentication was granted, what resources were accessed and when.

Through this process, automated provisioning can reduce misconfigurations, and the time it takes to troubleshoot and correct them, and mitigate the security perils that accompany such errors. Crucially, however, extra care must be taken to ensure there are no security vulnerabilties or issues in the code, as these issues will be replicated anywhere the template is used.

Related solutions
IBM HashiCorp

Optimize your cloud with unified lifecycle automation - secure, scalable hybrid infrastructure designed for resilience and AI.

Explore IBM HashiCorp
Cloud Cost Management

Optimize your cloud spend, improve efficiency, and gain visibility into resource usage with IBM’s cloud cost management solutions.

Explore cloud cost management
Infrastructure Services

Accelerate, secure, and optimize your hybrid-cloud and enterprise infrastructure with expert guidance from IBM Technology Expert Labs.

Explore infrastructure services
Take the next step

Achieve unified lifecycle automation, secure and scalable infrastructure, and full visibility into cloud spend—all designed for resilience and AI readiness.

Explore IBM HashiCorp Explore Cloud Cost Management