Open Source Tools for the Modern Workplace

0
541
modern workplace
modern workplace

Organisations need a wide range of software tools in order to run efficiently, especially with a large section of their workforce working from home, fully or partially. Thankfully, there are quite a few open source tools they can rely on.

Workplaces have undergone tremendous changes in recent years, from using desktops and laptops, to virtual desktops, the cloud, mobile devices, containers, and so on. A number of commercial tools and platforms have enabled this transformation. Many open source alternative tools have also evolved over time, which reduce cost, avoid vendor monopoly and improve interoperability.

VPNs and remote working

During Covid-19, almost everyone was forced to work from home. To quickly facilitate remote access to IT systems, many IT departments started using VPNs for all. Post Covid, hybrid working has become the new normal. Bring your own device (BYOD) adoption and rise of the gig economy has accelerated remote working even further. Remote teams need to access enterprise applications and data in a secure manner. A virtual private network (VPN) gives online privacy and anonymity. It creates a private network from a public internet connection, and establishes a secure and encrypted connection for greater privacy.

A remote access VPN connection allows a user to connect to an enterprise private network from a remote location using a laptop or desktop computer connected to the internet. The user can access the secure resources on that network as if they were directly plugged into the network’s servers. Pulse Secure, Cisco’s AnyConnect, etc, are some commercial VPN solutions used by enterprises. There are a number of enterprise-level, open source VPN solutions that meet the needs of any corporation, large or small. Popular open source VPNs are:

  • OpenVPN: OpenVPN is a full-fledged, open source VPN solution for enterprises as well as individuals. Using OpenVPN’s technology, we can deploy the certification, encryption, and authentication features of the OpenSSL library for protection. The VPN provides support for dynamic IP addresses and DHCP. OpenVPN is available for Android, macOS, Linux, Windows, and iOS.
  • Libreswan VPN: Libreswan offers free and open source VPN software based on the popular IPsec and IKE standards of VPN protocols. Libreswan has been active for over 15 years.
  • SoftEther VPN: SoftEther stands for ‘Software Ethernet’, and it is a free, open source VPN supporting multiple protocols. SoftEther VPN uses an ultra-optimised SSL-VPN protocol that delivers firewall resistance, low latency, and fast throughput. It can easily penetrate a network firewall with built-in NAT traversal. It supports SSL-VPN, L2TP, IPsec, EtherIP, OpenVPN, and L2TPv3 protocols.
  • Openswan VPN: Openswan VPN is one of the most popular VPNs and is specially designed to cater to the network security demands of Linux users. It is an IPsec implementation for Linux and comes pre-installed in several Linux versions from Fedora, Ubuntu, Debian, Gentoo, and Red Hat.
  • Freelan VPN: Freelan is a free, open source, multi-platform VPN software that abstracts a LAN over the internet. It works on Windows, Linux and Mac OS X.

Desktop virtualisation

Desktop virtualisation is a method of simulating a user workstation so that it can be accessed from a remotely connected device. By abstracting the user desktop in this way, organisations can allow users to work from virtually anywhere with a network connection, using any desktop, laptop, tablet, or smartphone to access enterprise resources irrespective of the device or operating system employed by the remote user.

Remote desktop virtualisation is also a key component of digital workspaces. Virtual desktop workloads run on desktop virtualisation servers, which typically execute on virtual machines (VMs) either at on-premise data centers or in the public cloud. Since the user device is basically a display, keyboard, and mouse, a lost or stolen device presents a reduced risk to the organisation. All user data and programs exist in the desktop virtualisation server, and not on client devices. Some open source platforms/tools that enable desktop virtualisation are listed below.

Hypervisor:  Hypervisor acts as a governing mechanism. It is a software layer that allows you to create and work on many virtual machines on a single hardware unit. There are several open source hypervisors available. Given below are a few popular ones.

  • Xen: Xen is among the market leaders in the open source hypervisor arena. It supports the virtualisation of x86 IA64, and ARM, among other architectures. Xen has been used in the virtualisation of a wide array of guest OSs. A few operating systems supported by Xen are Windows, Solaris, and other versions of the BSD OS.
  • Linux KVM: A kernel-based virtual machine (KVM) is a project based on GNU/Linux that has been developed for x86 computers. KVM is a full virtualisation solution for Linux on hardware containing virtualisation extensions. It provides the hardware virtualisation for a wide variety of guest operating systems, including Linux, Windows, macOS, ReactOS, and Haiku. Using KVM, you can run multiple VMs on unmodified Linux or Windows images. Each VM has private virtualised hardware — a network card, disk, graphics adapter, etc.

HCI: Hyper converged infrastructure (HCI) is fully software-defined IT infrastructure that virtualises all the elements of conventional ‘hardware-defined’ systems. It is essential for deploying modern virtual desktop infrastructure (VDI). A hyper converged environment is one where compute, storage, and network resources are all on the same servers, managed by a single interface.

We can run a full-featured virtualised infrastructure with optimal use of servers by using open source oVirt and Gluster to deploy a hyper converged solution. These two open source solutions work together to provide a hyper converged solution. Each server provides both hypervisor and storage capabilities, with the VM disk images stored on the Gluster volume. The Gluster volume allows storage from multiple servers to be presented as a single, unified name space to the client. It is configured from storage on the three servers as a replica-3 volume, which means every bit of data that’s written is replicated to two other servers to provide redundancy and resiliency against server outages.

Red Hat Hyperconverged Infrastructure—based on leading OpenStack and virtualisation platforms—provides co-located, scalable, software-defined compute and storage, automated by the Red Hat Ansible Automation Platform on economical, industry-standard hardware.

RHV: Red Hat Virtualization (RHV) — the virtualisation management solution to support server or desktop applications — is an open, software-defined platform that virtualises Linux and Microsoft Windows workloads. Red Hat Enterprise Virtualization infrastructures are based on KVM hypervisor (kernel-based virtual machine) and features management tools that virtualise resources, processes, and applications to ensure service performance and business continuity. RHV uses the SPICE protocol and VDSM (virtual desktop server manager) with an RHEL-based centralised management server. The OpenShift container platform is its successor.

Workplace deployment automation and administration

Enterprises need Infrastructure as Code (IaC) tools to automate workplace deployment and provisioning. There are open source tools available for this purpose too. These tools have evolved and matured to meet the diversified demands of enterprises.

  • Terraform: IaC removes the human component of setting up servers, virtual machines, and provisioned cloud computing through an automated process. Terraform is a free and open source tool created by HashiCorp. It is also one of the most popular IaC tools. Terraform makes a pre-execution check to ensure the desired result has been achieved. It is sometimes used as a base tool in conjunction with Ansible. It is highly compatible with cloud services such as AWS, Google Cloud, and Microsoft Azure.
  • OpenStack: OpenStack is a free, open standard cloud computing platform. It is mostly deployed as Infrastructure-as-a-Service (IaaS) in both public and private clouds, where virtual servers and other resources are made available to users. The software platform consists of interrelated components that control diverse, multi-vendor hardware pools of processing, storage, and networking resources throughout a data center. Users manage it either through a web-based dashboard, through command-line tools, or through RESTful web services. Beyond standard Infrastructure-as-a-Service functionality, additional components provide orchestration, fault management and service management amongst other services to ensure high availability of user applications.

Puppet and Chef are two other popular open source tools used for workplace deployment and provisioning.

Workplace support tools

Workplace support teams need many tools to support end users. Three open source tools that can be chosen as alternatives to commercial tools for this purpose are listed below.

Open source helpdesk is software that offers a ticket management system. Built on open source technology, it is a great solution for offering efficient customer support.

OSTicket is an open source helpdesk and ticketing system used by more than 5 million users worldwide, and by more than 15,000 businesses.

Rocket.chat is an open source versatile communication platform that enables you to engage in seamless interactions regardless of how end users connect.

DevOps workplaces

Most DevOps workplaces make use of containers as a primary resource. These workplaces require tools covering container builds, orchestration, microservices networking, configuration management, CI/CD automation, full-stack monitoring and more. Popular open source tools deployed in DevOps workplaces are:

Kubernetes: It is used to orchestrate containers. Instead of releasing microservices manually, Kubernetes can automate deployment, maintenance and scaling of groups of containers in production. It is hosted by the Cloud-Native Computing Foundation (CNCF).

Docker: This free and open source platform is used to build, ship and run an application as a lightweight container. Containers package up the binaries, libraries, configuration files and dependencies required for a program to run. It makes configuration management, issue control, and scaling much easier through the use of containers that can be moved from place to place.

Istio: Istio enables organisations to secure, connect, and monitor microservices, so that they can modernise their enterprise apps swiftly and securely. It manages traffic flows between services, enforces access policies, and aggregates telemetry data, all without requiring changes to application code.

Ansible, Puppet, Jenkins, and Git are a few other popular open source tools used in DevOps workplaces.


Disclaimer: The views expressed in this article are that of the author and Wipro does not subscribe to the substance, veracity or truthfulness of the said opinion.

LEAVE A REPLY

Please enter your comment!
Please enter your name here