Enterprise Infrastructure
Estimated Reading Time: 6 minutes Last updated on 29th April 2024Between reading Admin magazine and encountering the output of the Techstrong Group, I have come to realise that there is a burgeoning market for tools that manage computing operations at the enterprise level. Some of these are open-source offerings, and I try to list the ones that I have met so far in this collation. There are many more out there in this age of added complexity and an ever more hostile networked computing landscape.
It feels as if a lot is becoming containerised these days, and Docker is one facilitator of all of this. Even my own activities do not escape using it because of Pi-hole and SAS. Given that it enables the packaging, distribution, and deployment of applications by providing a containerisation platform for consistent behaviour across different environments and efficient resource utilization, that perhaps is not so surprising, especially when there is reduced overhead compared to virtual machines.
After all, Docker containers are a lightweight, portable, and efficient solution for running applications in isolated environments. Based on the Linux kernel, they package code, runtime, libraries, and settings into standalone units that can be executed consistently across different computing environments. With a size of only tens of MB's, they are more lightweight than VMs. Using namespaces and control groups, Docker ensures efficient resource management and limits for containers. A Dockerfile is used to build an image, which serves as a template for creating runtime instances called containers.
Grafana is a platform that provides solutions for observability, including log aggregation (Loki), visualization, and alerting. It offers multiple products like Grafana Cloud Logs, Traces, Metrics, and Profiles, powered by various backend systems such as Grafana Loki, Tempo, Mimir, and Pyroscope. The platform also provides AI/ML capabilities for anomaly detection and root cause analysis through its Asserts product. Additionally, it offers a range of pricing options, including a free plan with limited features. Users can access documentation, webinars, tutorials, and workshops to get started. Grafana supports various data sources including Kubernetes, Prometheus, OpenTelemetry, Graphite, GitHub, and more. It provides collaboration features for teams to share insights and manage alerts centrally. The platform is available in multiple languages, with localized content in Japanese, German, French, Spanish, and Portuguese.
Istio is an open-source service mesh that provides a solution for connecting, securing, managing, and monitoring microservices-based distributed applications. It extends Kubernetes to establish a programmable, application-aware network using the powerful Envoy service proxy, bringing standard, universal traffic management, telemetry, and security to complex deployments.
Computing infrastructures that use containers can get unwieldy to manage using other tools. Google created Kubernetes to better automate the deployment, scaling, and management of containerised applications across a cluster of nodes. It adds features like service discovery, load balancing, storage orchestration, and declarative configuration management. Because of the pervasiveness of containerisation these days, this is one tool that keeps getting mentioned when discussing their administration.
Nextcloud is a popular open source content collaboration platform used by thousands of organizations, enabling productivity and control through its self-hosted file storage and sync solution. Its Nextcloud Hub product integrates Files, Talk, Groupware, and Office into one platform, offering easy access anywhere with powerful access controls. Designed for humans, it's trusted by the public sector, enterprises, service providers, and education institutions to minimize operational expenses while improving communication and reducing risk. Nextcloud is committed to providing a secure solution that keeps data on servers owned by the organization, ensuring compliance with business requirements. With over 400,000 deployments, it offers productivity across platforms, extensive data policy enforcement, encryption, user management, and auditing capabilities. It's constantly improving through an open-source community development model.
OpenTofu is a forked version of HashiCorp's Terraform, created in response to its licence change from open-source to the Business Source Licence (BSL). It's fully compatible with Terraform v1.6.x and backward compatible with all prior versions, designed as a drop-in replacement using the same syntax and commands but replacing 'terraform' with 'tofu'. OpenTofu is published under the open-source Mozilla Public Licence (MPL) and is now an official Linux Foundation project on track to join the Cloud Native Computing Foundation (CNCF). The community-driven project, supported by companies like Gruntwork, Spacelift, Harness, Env0, and Scalr, offers features such as execution planning, state management, a vast ecosystem of providers for various cloud platforms and services, support for modules and reusable components, and encrypted state management. OpenTofu aims to maintain feature parity with Terraform while ensuring long-term open-source availability for infrastructure as code solutions.
ownCloud is a secure, scalable file sharing platform designed to boost collaboration for teams of all sizes. Its current version, Infinite Scale, offers state-of-the-art security features and seamless integrations with Microsoft Office Online, Collabora Online, and OnlyOffice. It's compatible with various devices and comes with a user-friendly web interface that can be extended through custom web apps. ownCloud offers rolling releases with the latest features every three weeks and is supported by a community of contributors.
Podman is a free and open-source container management tool that allows users to manage containers, pods, and images without the need for a daemon. It is lightweight, secure, and compatible with various platforms, including Kubernetes and Docker. Podman Desktop provides an intuitive user interface, making it easy to create, start, inspect, and manage pods. The tool supports various container formats and has gained positive feedback from users due to its speed and ease of use. Podman is also open-source, allowing integration with other tools such as Visual Studio Code, Cirrus CLI, GitHub Actions, and Kind's local Kubernetes clusters. The maintainers have applied to contribute Podman, Buildah, and Skopeo to the Cloud Native Computing Foundation (CNCF). Regular updates provide new features, improvements, and networking enhancements for a better user experience.
Prometheus is an open-source monitoring solution that enables users to power their metrics and alerting using a dimensional data model. It supports various languages for client libraries and integrates with several third-party systems, such as Docker, HAProxy, StatsD, and JMX. Prometheus offers precise alerting based on flexible PromQL queries and provides multiple modes for visualizing data through built-in expression browser, Grafana integration, or console template language. It boasts efficient storage with functional sharding and federation, enabling scalability. The software is simple to operate, and each server functions independently while being written in Go for easy deployment. Its components are 100% open source under the Apache 2 Licence on GitHub, and has been adopted by numerous organizations, including Mixpanel. It is also a graduated project of Cloud Native Computing Foundation.