A Guide to Writing SOPs That Your Team Will Actually Follow

Prajjwala Nandeesh
5 min readFeb 21, 2023

--

A Step-by-Step Guide with Example

Standard Operating Procedures (SOPs) are essential to ensure that an organization’s processes are efficient, effective, and consistent. SOPs provide step-by-step instructions for performing tasks, which helps to minimize errors and ensure that work is completed to a high standard. In this blog post, we’ll discuss how to write an SOP.

Determine the objective of the SOP: Before you start writing an SOP, determine the objective of the procedure. Ask yourself what the SOP is intended to achieve. What process or task is being documented, and what is the expected outcome? Understanding the objective of the SOP will help you to determine what information to include and how to structure the procedure.

Identify the audience: Consider who will be reading the SOP. Will it be used by employees, customers, or suppliers? The level of detail and technical language used in the SOP will depend on the audience. Write the SOP in a language that is easy to understand and avoid technical jargon that may confuse the reader.

Break down the procedure into steps: Break down the procedure into steps and list them in chronological order. Each step should be concise and should not include unnecessary information. Use bullet points or numbered lists to make the steps easy to follow.

Include relevant details: Include any relevant details that are necessary to perform the procedure correctly. This may include safety instructions, equipment requirements, or specific software instructions. Ensure that all the details are accurate and up-to-date.

Use clear and concise language: Use clear and concise language to ensure that the instructions are easy to follow. Avoid using complex language, and be mindful of using technical jargon that may be unfamiliar to the reader. Use simple language that is easy to understand.

Use graphics and diagrams: Graphics and diagrams can help to clarify instructions and make the SOP more user-friendly. Consider using images, diagrams, and flowcharts to explain the procedure visually. This can be especially helpful when documenting a complex process.

Test the SOP: Before finalizing the SOP, test the procedure to ensure that it is accurate and easy to follow. Ask someone who is unfamiliar with the process to follow the instructions and provide feedback. This will help to identify any areas that may need clarification or improvement.

Review and update the SOP: Regularly review and update the SOP to ensure that it remains accurate and up-to-date. Any changes to the process should be reflected in the SOP, and any outdated information should be removed. Consider assigning a responsible person to ensure that the SOP is reviewed and updated regularly.

Example 1:

Objective: To install and configure ESXi hosts for virtualization of workloads.

Scope: This SOP covers the steps required to install and configure ESXi hosts on physical servers.

Prerequisites:

  • A physical server with compatible hardware for ESXi installation.
  • ESXi ISO image.
  • An installation media such as CD/DVD or USB drive.
  • Knowledge of server hardware configuration and networking concepts.

Steps:

  1. Verify the hardware compatibility: Check the VMware Hardware Compatibility Guide to ensure that the server hardware is compatible with the version of ESXi that you intend to install.
  2. Configure the server BIOS: Enter the server BIOS settings and configure the boot order to boot from the installation media (CD/DVD or USB drive) first. Also, ensure that the virtualization technology is enabled in the BIOS.
  3. Install ESXi: Insert the installation media and boot the server. Follow the prompts to install ESXi. During the installation process, you will be prompted to configure the network settings, such as the IP address, subnet mask, and default gateway.
  4. Configure the host: Once the installation is complete, log in to the ESXi host using the vSphere client or web interface. Configure the host settings such as hostname, DNS, and NTP.
  5. Configure the storage: ESXi requires storage to host virtual machines. Configure the storage by adding a datastore to the ESXi host. A datastore can be a local disk, SAN or NAS.
  6. Configure networking: Configure the networking settings by creating virtual switches, port groups, and VMkernel interfaces.
  7. Configure monitoring: Configure a monitoring solution to monitor the ESXi hosts. Monitoring helps to detect issues before they become critical.

Conclusion: Following this SOP will help you to install and configure ESXi hosts for virtualization ready to deploy Virtual Machines. Proper installation and configuration will ensure that the virtual machines are running efficiently and securely. It is important to follow best practices for virtualization to ensure the reliability and availability of your virtualized workloads.

Example 2:

Purpose: The purpose of this SOP is to document the steps involved in setting up an Elastic Kubernetes Registry (EKR) for use in a Kubernetes environment. The EKR provides a secure and scalable way to store and distribute container images.

Scope: This SOP is intended for use by Kubernetes administrators and developers who need to set up and configure an EKR in their Kubernetes environment.

Prerequisites: Before beginning the EKR set up process, the following prerequisites must be in place:

  • A Kubernetes cluster is set up and running
  • Access to the Elastic Cloud Console to create an EKR instance
  • A Docker image to be stored in the EKR

Procedure:

1. Create an EKR instance in Elastic Cloud Console
— Login to the Elastic Cloud Console
— Navigate to the Kubernetes section and select the Kubernetes cluster where you want to create the EKR
— Click on the “Registries” tab
— Click “Create registry”
— Choose a name for the EKR and select the region where it should be hosted
— Click “Create” to create the EKR instance
— Configure Kubernetes to use the EKR

2. Configure Kubernetes to use the EKR
— Create a Kubernetes secret to authenticate with the EKR:

kubectl create secret docker-registry <secret-name> \
--docker-server=<ekr-url> \
--docker-username=token \
--docker-password=<token-value> \
--docker-email=<your-email>

— Update the Kubernetes deployment YAML file to use the secret and specify the EKR URL as the image repository:

spec:
template:
spec:
imagePullSecrets:
- name: <secret-name>
containers:
- name: <container-name>
image: <ekr-url>/<image-name>:<image-tag>

3. Push a Docker image to the EKR
— Tag the Docker image with the EKR URL:

docker tag <local-image>:<tag> <ekr-url>/<image-name>:<image-tag>

— Tag the Docker image with the EKR URL:

docker push <ekr-url>/<image-name>:<image-tag>

4. Verify the Docker image is in the EKR
— Verify that the Docker image has been successfully pushed to the EKR:

curl -u <elastic-cloud-user>:<elastic-cloud-password> -XGET https://<ekr-url>/v2/_catalog

Conclusion: The above steps will help in creating an EKR instance and using it in a Kubernetes environment. It is important to follow these steps carefully to ensure that the EKR is set up securely and is functional for storing and distributing container images.

--

--