Rackspace cloud server using Arch Linux and pdns with sqlite 3 backend

Wow that title was a mouthful.

I need a tertiary DNS server that is remote from any of my current networks.  Doing this using a dedicated server is expensive so I am testing out Rackspace’s cloud service.

I decided to go with Arch, pdns and sqlite as this would allow me to have a minimal server.  I am attempting this on a 256Mb server but can upgrade if necessary.

As I have not used Arch Linux in anger as a server, I haven’t used Sqlite ever and I have only installed pdns once before and that install was 4 years ago and is still running this should be an interesting side project.

It took about 2 minutes for the server to be setup and for me to be logged in via SSH.

My first task was to check for running processes – The answer was zero just how I like it.  There is an agetty process running but I am guessing this is the console access from the cloud service control panel.

It looks like I have 71Mb to run pdns in. I have a feeling this won’t be enough so an upgrade will be required.

First task was to check that pacman was configured and up to date.

And everything is up to date and pacman is working.

Next was to install pdns with sqlite backend.
Here is where my first problem hit.

A quick google and as per usual arch problems, lots of posts and a quick solutions was found…

So that is pdns installed? Unfortunately not. You need to install the pdnsd as well which drags the postgres and mysql libs in…

With pdnsd installed I now needed to edit the configuration file at /etc/powerdns/pdns.conf

Initially I just wanted to see if it would start. I can then go onto getting it working as a slave.

Memory still looks ok. I doubt if I will have 57Mb of DNS zones on this server.

Creating the database;

Copy and paste the sql commands from this page http://doc.powerdns.com/gsqlite.html#id447152

Then type this command in and check the results are the same. This confirms the database has been created ok.

Now edit the pdns.conf file and edit the

You will also need to create a user and groupname and chown the /var/lib/sqlite3 directory and contents. Then set this in the pdns.conf file.

I added the IP address of my primary nameserver to the supermasters table and restarted pdns. It all starts up and says it is working. There are no errors in the log files but it is not doing any transfers.

More on this later…. (I will update this when I have a little more time to spend on it)

Be the first to comment

Leave a Reply

Your email address will not be published.