Skip to content

Storage

Goodbye ownCloud, Hello Nextcloud! The Aftermath of Disrupting Open Source Cloud Storage

If you are vaguely familiar with ownCloud, you may have noticed quite a bit of ruckus on the tech blogs back in July when their US business entity was essentially gutted.  The Chief Executive Office and cofounder, Frank Karlitschek, announced he was resigning.  Within a few weeks, most of the core development team followed suit.  This left many long time ownCloud users, such as myself, completely puzzled.  Here we are a few months later and a few questions still linger, but many have been answered.  First, let’s briefly review what the ownCloud platform provides and why this matters.

 

What is ownCloud?

 

ownCloud is an Open Source cloud platform that closely mimics the functionality of Dropbox, Box, Google Drive, and all the other big guys.  There is an ownCloud server, that runs on a simple LAMP stack (Linux, Apache, MySQL, PHP), and then there’s a client(s).  The client is an application that can be installed on Linux, Windows, OSX, iOS, Android and pretty much everything else.  Each user has a folder full of files that magically stays synchronized on the server and each device the client has the software installed on.  Then users can share files and folders with other users, collaborate, and the list goes on.  Functionality has expanded quite a bit over the years, in way of apps.  Apps have integrated mail, calendar, contacts, music, photo galleries and so much more into the ownCloud ecosystem.  The main difference between ownCloud, and the big guys mentioned earlier, is it’s completely free.  Well, it started out free.  Needless to say, with thousands of developers contributing code, and tens of thousands of installations later, it grew.  So, when did things go sour?

 

What happened?

 

A couple years ago, things started to change.  Instead of the community being the driving force behind development decisions and what direction the project was heading (the core principle of Open Source software) venture capital had another idea.  Less attention was being given to community submitted bugs and feature requests, and a divide was being formed between the community and ownCloud’s business entities, ownCloud GmbH (Germany) and ownCloud Inc (USA).  The business makes money by charging for support, but that started to expand into other areas.  The list of complaints from the Open Source community is pretty long, so I’ll give you the headlines.

 

  • ownCloud developers were ignoring feedback and hoarding functionality for their paying “enterprise” customers.
  • User interfaces were mutilated for many of the core services, such as the contacts and calendar apps.
  • Any attempt to give construction criticism was taken as a personal attack and/or just ignored.
  • Major defects in the code were being released, such as broken updater utilities.
  • ownCloud GmbH/Inc was not sharing future road maps and maintained a veil of secrecy.
  • Lack of real innovation and development of the platform as a whole.

Click Here to Keep Reading!

Configuring ownCloud 9 & Active Directory / LDAP Plugin Successfully

With this step-by-step guide, you will have your ownCloud 9 (and earlier) cloud server authenticating against Active Directory or LDAP correctly in no time!

Introduction

 

Recently, I went through the process of setting up a brand new ownCloud 9.1 server, after my previous ownCloud server had seen upgrades from 6.x all the way up to 8x.  If you’ve used ownCloud that long, you know the abundant changes and improvements that have been made along the way did not come without their growth pains; especially if you delved into encryption.  So, I decided to start fresh.  I use Active Directory to provide a centralized authentication source for everything in my personal “cloud,” so after setting up my new Dropbox clone, the first thing I needed to do was configure the LDAP user and group backend plugin.  I had a lot of problems getting the Active Directory usernames to match the ownCloud usernames, instead of showing a long string off numbers.  It was a lot of confusing UID, UUID, SAMAccountName and DN related confusion.  There aren’t any great guides to keep you from getting a headache, so I decided to make one.

 

Problems with the LDAP user and group backend plugin

 

It’s pretty straight forward to get an ownCloud server authenticating against and Active Directory server, but the biggest problem I’ve seen is the mapped usernames end up being long strings of numbers in ownCloud.  Although the display names are correct in owncloud, the actual username for all AD mapped logins, by default, are a long unique string makes things difficult.  For one, if you need to get to a users ownCloud data folder, there’s no intuitive way of knowing who’s is who’s folder from the command line.

With this step-by-step guide, you will have your ownCloud server authenticating against Active Directory / LDAP, with the following benefits:

 

  • The ownCloud username will match the Active Directory / LDAP username (no long incomprehensible string of numbers)
  • Any user added to a specified group created in Active Directory will automatically have ownCloud login privileges.
  • ownCloud users will be able to login using their username or email address (if specified in AD) interchangeably.

These three pluses make everything very seemless and saves a lot of headaches. So, lets get started.

Click Here to Continue Reading!

How-To Install ownCloud 9 / 9.1 / 9.x on Ubuntu 16.04 LTS for the ULTIMATE, Private, Dropbox Clone

Introduction

 

Let’s face it, since the advent of Dropbox, Box, Google Drive and the bazillion other cloud-based file synchronization platforms that have came into existence over the past decade, it’s almost a necessity. For the road warrior, using multiple devices, or even the traditional white-collar worker, having access to all of your files no matter what device you’re using is extremely convenient and adds an enormous productivity boost to our lives. One of my biggest concerns with all of the third-party services, however, is privacy and security. Allowing another entity to store my sensitive data, and trusting they will keep in secure, is pretty scary. Thankfully, there are many options to roll-your-own cloud file synchronization and it really doesn’t take much horsepower on the server side. With a low cost VPS (virtual private server), retired computer at home, or even a $25 RaspberryPi, you can easily build your own Dropbox clone that will put you in control of your own data. Today, I’ll walk you through setting up ownCloud 9.1 on Cannocial’s Ubuntu 16.04 LTS. I will be setting up my cloud on a virtual machine running on VMware ESXi, but the process is very similar no matter what hardware platform you choose. This step-by-step guide assumes you have a plain, unmodified, minimum installation of Ubuntu Server 16.04 LTS, with only SSH access. If you don’t have SSH running, or don’t want to enable it, console access will work just fine. So, lets get started!

 

Installing Prerequisites (Apache/MySQL/PHP)

 

Go ahead and login to your freshly installed Ubuntu 16.04 server.  Be sure to login with a username that has sudoer privileges.  This can be the username you selected during installation or specified when you provisioned your VPS.  Let’s make sure everything is up-to-date before going any further. We will use Aptitude to do so.

 

#  sudo apt-get update

#  sudo apt-get upgrade -y

 

Now we can jump in to the nitty gritty.  There are a few standard prerequisites needed for ownCloud to run.  Most people refer to this as the LAMP stack (short for Linux, Apache, MySQL, PHP).

Click Here To Continue Reading!

How to Create an iSCSI Target & Extent / Share on FreeNAS 9 (and previous versions)

Today, I’m going to guide you through the process of creating an iSCSI target / extent on FreeNAS-9. This will also work on previous versions of FreeNAS, such as version 7 and 8. There are a few different ways you can go about creating an iSCSI share. You can dedicate an entire device (Hard drive, or RAID array) to the iSCSI share, or you can simply create a Volume, and create multiple iSCSI shares and each is simply a file on the volume. This approach works well because you can use part of a volume as an NFS share, part of it as a CIFS share for Windows, and if you want a few separate iSCSI targets you can just create a single file for each. Lets get started.

How to create an iSCSI Target / Share on FreeNAS

 

First, we need to add a volume using your hard drive or RAID array that is connected to your FreeNAS server. If you have already done this, you can skip this step.  Let’s get started with the rest.

Log into your FreeNAS web interface, and go to Storage > Volumes > Volume Manager.  Fill in a volume name (make sure it starts with a letter, and NOT a number, otherwise you will get an error).  Add one or more of your Available Disks (by clicking the + sign).  Select a RAID type if you wish to do so.  In my case, I’m using hardware RAID, so I will leave the default (single drive stripe, IE, JBOD).  Now click Add Volume.

 

freenas-1

 

Now that we have added a volume, we can begin the process of creating an iSCSI share.  This process required multiple steps, in the following order:

  1. Add a Portal
  2. Add an Initiator
  3. Add a Target
  4. Create an Extent (the file that corrasponds to the iSCSI share)
  5. Link the Target and the Extent together
  6. Start the iSCSI service

Click Here to Continue Reading!

FreeNAS 9 Error When Adding Volume – You must specify a new volume name…..

I’ve had quite a few friends and colleagues run into a problem trying to create a volume on FreeNAS.  This applies to FreeNAS 9, as well as older versions such as 8.  The error they get when clicking “Add Volume” is this:

“You must specify a new volume name or select an existing ZFS volume to append a virtual device.”

and under that:

“The volume name must start with letters and may include numbers, “-“, “_” and “.” “

Here is a screenshot:

 

freenas-error-1

Click Here To Read More!

How to install ownCloud on Ubuntu 14.04 LTS – Your own Open Source Dropbox

Dropbox is great.  But, you are putting your private, personal data in a corporations hands.  That is a bit scary if you stop and think about it.  The good news is that you can run your own Dropbox, using an Open Source software package called ownCloud.  It’s amazing and works very well.  In this guide, we’ll be installing ownCloud on Ubuntu 14.04 LTS.  It’s not very hard, and when it’s all said and done you have your own personal cloud storage platform that you control.  You can even enable server-side encryption so that if you server is compromised, your data is still safe.  Lets get started.

 

How to install ownCloud on Ubuntu 14.04 LTS

 

This tutorial assumes you have installed Ubuntu 14.04 and have updated it to the latest and greatest using the commands below.  Just FYI, I’m installing it on a virtual machine on ESXi 5.5.  So, make sure everything is updated using these two commands.

 

#  sudo apt-get update

#  sudo apt-get upgrade

 

Next, we need to install a webserver (Apache), a database server (mysql) and PHP.  This is commonly called the LAMP stack.  Fortunately, this only requires two simple commands now, thanks to taskel.

 

#  sudo apt-get install taskel

#  sudo taskel install lamp-server

 

During installation, you will be prompted to set a root password for mysql.  Make sure to set this as a secure password, and do not forget it!

 

2016-03-03 15_36_10-mike@stash_ ~

 

Click Here To Continue Reading!!

How to setup a NAS with GlusterFS Striped & Replicated + NFS on Ubuntu 14.04

Gluster is one of the most amazing storage technologies to hit the Open Source world in quite some time. Since it’s been acquired by Red Hat, it’s growth and adaptation has only been accelerated even more. Some refer to it as software defined storage. I agree with that, if you like to use industry lingo. Gluster allows you to create a pool of storage that can span multiple servers / nodes and grow over time. You can create volumes that mirror or replicate data across multiple servers or you can stripe a volume across multiple servers. You can even strip with redundancy, kind of like a RAID 5 but instead of disks, its servers. Very cool stuff.

Gluster has an NFS server built in. It actually works very well too. This makes it compatible with pretty much every hypervisor there is, such as VMware ESXi, Citrix XenServer, KVM, Proxmox, oVirt, and every other virtualization platform there is. I have yet to come across one that doesn’t support NFS. More so, every OS and server variation also supports NFS. This makes Gluster an excellent choice to build a storage infrastructure on. You can start small and grow it over time, or go all in. Either way, this guide will help you get started.

Today I’m working with four Ubuntu 14.04 LTS servers (virtual machines, actually). Each has a second virtual disk attached, 30GB in size, that will be dedicated to Gluster on each host. I’m going to set up a stripe, with redundancy, across these four nodes, which will be presented as a single NFS share available to a hypervisor for virtual machine storage, or a server for file storage. If you plan on following this guide exactly, go ahead and provision four Ubuntu 14.04 virtual machines with an extra 30GB drive attached to each. 1GB of RAM and 1 CPU will be more than sufficient. Lets get started.

Creating a GlusterFS volume striped + replicated across 4 nodes

FYI, look at the bash prompt label to see which server i’m working on. I.E. [email protected]:~$ is the gfsu1 node. If the bash prompt is a #, that means the instruction needs to be performed on all four nodes.

The four Ubuntu Gluster nodes i’m working with are named:

  • gfsu1 (GlusterFS-Ubuntu-1)
  • gfsu2
  • gfsu3
  • gfsu4

So, just keep an eye out for what node I’m working on based on the bash prompt label. First, make sure everything is updated and upgraded.

#  sudo apt-get update
#  sudo apt-get upgrade

Next, make sure software-properties-common is installed.

#  sudo apt-get install software-properties-common

Click Here To View The Rest!