Install Nextcloud with Docker on Debian 10 Buster

nextcloud docker installation on debian buster
Nextcloud is a lightweight, open-source StaaS (Storage as a Service) platform, written i PHP and JavaScript, which provides file sync, file sharing and creative collaboration services. The software can be installed on local hardware as a perfect alternative for commercial StaaS solutions like Dropbox, OneDrive, Hightail, etc…
Nextcloud is a typical LAMP (Linux Apache MySQL PHP) software, but instead of ardous and problematic LAMP environment installation and file sharing platform implementation, we can deploy a turnkey Nextcloud platform in just a few minutes, using Docker containers, preferably with docker-compose.

In this article I am launching Nextcloud platform in two Docker containers: nextcloud and mariadb which use local Docker volumes as a file and database storage. This solution will enable us to quickly and painlessly upgrade our Nextcloud to a newer versions in future.
Continue reading “Install Nextcloud with Docker on Debian 10 Buster”

CentOS 7 Installation with LVM RAID 1 – Mirroring

CentOS 7 installation with LVM RAID 1 mirroring
CentOS 7 may offer us a possibility of automatic RAID configuration in Anaconda installer, that is during OS installation, once it detects more than one physical device attached to the computer. Mentioned RAID is generally the LVM-RAID setup, based on well known mdadm – Linux Software RAID. It’s a pretty convenient solution, since we don’t need to setup RAID manually after installation, on already running system.

The below procedure presents CentOS 7 testing installation with LVM RAID 1 (Mirroring) on KVM based Virtual Machine with two attached 20GB virtual disks.
Continue reading “CentOS 7 Installation with LVM RAID 1 – Mirroring”

RAID 1 configuration on HP Proliant Gen 9 server using HP SSA

Mount WebDAV remote storage in Fedora Linux using davfs2 driver
HPE Smart Storage Administrator is a tool that allows to quickly configure and manage storage controllers on HPE Proliant servers. HPE SSA offers simple, intuitive and easy to use GUI interface to quickly create, modify and erase storage arrays based on physical drives installed in the server. HPE SSA replaces the HPE Array Configuration Utility (ACU), and has an updated design for HPE ProLiant servers that enhances the storage experience.

In this short tutorial we will create one of the simplest storage arrays, which is RAID 1 based on two physical drives. RAID 1 (mirroring) provides a replication on all physical drives by writing data to all of them at the same time, it gives us fault-tolerance of N-1 drives where N is a number of used physical drives.
Continue reading “RAID 1 configuration on HP Proliant Gen 9 server using HP SSA”

Mount WebDAV remote storage in Fedora Linux using davfs2 driver

Mount WebDAV remote storage in Fedora Linux using davfs2 driver
WebDAV (Web Distributed Authoring and Versioning) is an extension of the Hypertext Transfer Protocol (HTTP) that allows clients to perform remote Web content authoring operations. The WebDAV protocol provides a framework for users to create, change, copy, move, lock and version the files on a server, typically a web server or web share. This type of protocol is used by some hosting providers (like my favorite HostUpon) in cPanel software, to provide quick and easy access to the files stored in hosting account disk space.

In this tutorial we are mounting remote WebDAV resource in Fedora release 24 via davfs2 file system driver.
Continue reading “Mount WebDAV remote storage in Fedora Linux using davfs2 driver”

Install and Configure OpenStack Mitaka with GlusterFS on CentOS 7

integrate openstack with glusterfs storage
OpenStack can use diffirent backend technologies for Cinder Volumes Service to create volumes for Instances running in cloud. The default and most common backend used for Cinder Service is LVM (Logical Volume Manager), but it has one basic disadventage – it’s slow and overloads the server which serves LVM (usually Controller), especially during volume operations like volume deletion. OpenStack supports other Cinder backend technologies, like GlusterFS which is more sophisticated and reliable solution, provides redundancy and does not occupy Controller’s resources, because it usually runs on separate dedicated servers.

In this tutorial we are going to deploy VLAN based OpenStack Mitaka on three CentOS 7 nodes (Controller, Network, Compute) using Packstack installer script and integrate it with already existing GlusterFS redundant storage based on two Gluster Peers.

openstack installation and integration with glusterfs
Continue reading “Install and Configure OpenStack Mitaka with GlusterFS on CentOS 7”

Extend LVM Volume Group with the new Hard Disk

Extend LVM Volume Group
One of the benefits of LVM (Logical Volume Manager) is the possibility to extend LVM based storage by adding new Physical Volumes which together form LVM Volume Group. Adding new Physical Volume increases the capacity of the whole Volume Group by the capacity of that particular Physical Volume and can be performed online without any outages in LVM activity.
Continue reading “Extend LVM Volume Group with the new Hard Disk”

Backup and Restore Logical Volume using LVM Snapshot

Backup Restore LVM using Snapshot
LVM (Logical Volume Manager) gives us the ability to create Snapshots. LVM Snapshot is a logical volume that temporarily preserves the original data of changing logical volume, so it’s data can be backed up preserving consistency. Snapshot must be created prior to any critical modifications on the Logical Volume in order to fulfill it’s role.

Note: Snapshot Volume needs to be large enough to store the data that will change while it exists. If more data changes than the Snapshot can hold, the Snapshot will become unusable. That means we have to “predict” how much data will be changed on the original Volume while the Snapshot exists to let the Snapshot hold all those data changes.
Continue reading “Backup and Restore Logical Volume using LVM Snapshot”

GlusterFS Storage Setup on Two CentOS 7 Servers and Client

GlusterFS is a simple and easy to configure scalable network attached storage. GlusterFS is a distributed storage consisting of nodes (servers including storage bricks), which export their own local file system as a volume. Volumes can be mounted on client servers as a network storage using NFS and Gluster Fuse. GlusterFS provides failover, redundancy and anti split-brain mechanisms that act as a High Availability system, that’s why in many aspects it is similar to the well known clustering software like Veritas Cluster Suite.

In this tutorial we will install GlusterFS on two CentOS 7 based nodes. We will use KVM Virtual Machines to make things easier and faster, but our main intention is to show you how to install GlusterFS on physical hardware.
Continue reading “GlusterFS Storage Setup on Two CentOS 7 Servers and Client”

How to Create LVM Volume Group and Logical Volume

Create LVM Volume Group and Logical Volume
Logical Volume Manager (LVM) is a device mapper target that provides logical volume management for the Linux kernel. LVM allows to create Logical Volumes from underlying Physical Hard Disks (Physiacal Volumes). Logical Volumes can be easily extended and shrunk according to the file system capacity demands.

LVM Objects:
Physical Volume (PV): underlying physical storage for LVM. These are most often physical hard disks, but also can be: partitions, RAID volumes, etc…
Volume Group (VG): storage pool, created from one or more Physical Volumes.
Physical Extent: small chunk of Physical Volume, used during Volume Group creation.
Logical Extent: mapped to Physical Extent, acting as front-end chunk for Logical Volumes.
Logical Volume: group of Logical Extents, used by the system as hard drive partition.
Continue reading “How to Create LVM Volume Group and Logical Volume”

How to Manually Extend Cinder Volumes Group in OpenStack

Cinder Volumes group is a block storage based on LVM (Logical Volume Manager) volume group, usually situated in Controller node in OpenStack cloud. It provides persistent block storage for runtime instances.

During typical packstack installation Cinder Volumes group size is determined in answer file (insert file) by following parameter:


If the Cinder Volumes group size we chose upon packstack installation turns out to be insufficient to create new volumes, we can attach additional physical volume on Controller node to the existing Cinder Volumes group and extend it with the new physical volume to gain more space.
Continue reading “How to Manually Extend Cinder Volumes Group in OpenStack”