Mamba implementation in Scientific Pipelines.

What is Mamba? Mamba is intended to be a drop-in replacement for /reimplementation of conda (written in C++). Mamba has been something that I have implemented into all of my pipelines, since it trivializes the package management process. I do almost all of my work within the context of containers/virtual environments, and mamba makes my work life so much easier. Previously, I used to use Conda as my package manager of choice, relying on it to cut down the amount of time I would need to build an environment using pip as an installer. Once I discovered Mamba, however, I never went back to Conda. ...

November 18, 2023 · 9 min · Naveen Kannan

Moving Docker's Data directory to another location.

Introduction Docker is a container service that we have discussed previously in my blog posts. The default storage location for Docker is at /var/lib/docker. Speaking from experience, as images and containers are built over a period of time, especially if there are multiple users using the Docker service, the root filesystem can run into issues where the size of the Docker storage directory can cause potential out-of-space crises, and significantly deteriorate overall system performance. ...

October 30, 2023 · 7 min · Naveen Kannan

Using Ansible to remotely configure a cluster.

What is Ansible? Ansible is an open-source IT automation tool that allows for automated management of remote systems. A basic Ansible environment has the following three components: Control Node: This is a system on which Ansible is installed, and the system from which Ansible commands such as ansible-inventory are issued. This is also where Ansible playbooks and configuration files are stored. Managed node: This is a remote system that Ansible intends to manage and configure. ...

June 24, 2023 · 10 min · Naveen Kannan

Docker, Singularity, and HPC.

Containers Containers are environments that are intended to be lightweight and standalone software, with isolation from the host machine, which ensures that containers work uniformly across different staging and development instances. Containers share the host OS’s kernel and do not require an OS per application, which is a key difference between containers and virtual machines, which otherwise share a lot of similarities. A very basic overview of container architecture. ...

June 17, 2023 · 7 min · Naveen Kannan