Performance problems in Vagrant when using host files into guest

I am working in an application that has to access a good number of resource files (good both in numbers and file sizes). As usual I am working in a Vagrant instance, and everything was going fine for the initial work.

But eventually the number of files passed from just testing to production, and while developing in my host the file access operation was ok (in the order of seconds to load everything), when the same code was running in Vagrant it took more than ten minutes to be ready.

At first I thought it was a memory problem, and increasing it to 6GB helped a bit (nine minutes instead of ten), it still didn’t cut.

I tried creating an instance in AWS, and surprising enough the performance was similar to running in my Mac.

I decided to copy all the files to the Vagrant instance, and then the problem was sorted, performance is on par with the host and AWS. That was it. Looking at the documentation, I noticed a shared directory option that is rsync, but I haven’t tried it, because I wrote a set of scripts that take care of preparing those resources to be deployed (both in Amazon and Vagrant) and dropping them on destination (which is a nice addition to my attempts to automate as much as I can both in development and deployment).

facebooktwittergoogle_plusredditpinterestlinkedinmailby feather

Changing the remote repository in git

I needed to move a project from Bitbucket to Github.

I was expecting a little dance to be made there, but it was pretty straightforward:

In a terminal, at the directory where I have my project, just did a

 

facebooktwittergoogle_plusredditpinterestlinkedinmailby feather

USB tethering with the Mac

I am in the train to Cork today, and being two and a half hours trip I am using the time to work a bit in my Fabric scripts.

Something I usually do is to get updates and packages form the Internet, and while the wifi connection in the train is good for browsing, getting updates is slowing it to a crawl.

I realised that the USB tethering connection with my phone was not recognised by the Mac, and have to download a driver for it, which worked very well after a reset.

The code is in github, together with a compiled package too.

facebooktwittergoogle_plusredditpinterestlinkedinmailby feather

Ubuntu version

As a reminder to myself, to check the version of Ubuntu in the terminal the command is

and you get something like

 

 

facebooktwittergoogle_plusredditpinterestlinkedinmailby feather

Logstash

in every application now I have at least some logging going on, and if I don’t I am missing it. But having servers distributed around, getting details from the logs is a lot more difficult than when the whole application lived in a single server/directory.

There are services on the Internet now (I friend interviewed with some guys coming out of UCD, just a couple of kilometers from home), and some others like New Relic are going further ahead and giving you profiling details too. But I am not that eager to go with Internet services.

The option then is to deploy my own, or to use an existing package. I tried collecting my own details, but in the end it look too laborious, and I am not getting that much value from the extra effort.

From searching on the Internet one of the candidates is Logstash. It combines logging with ElasticSearch, I tool that I tried briefly and really liked, then I decided to give it a go. One of my colleagues at Ngramatic tried it, but bombed soon after following the tutorial, then we left it aside.

Now, at home, is time to try it. The first step is to make a Vagrant machine for deployment, to follow the tutorial.

facebooktwittergoogle_plusredditpinterestlinkedinmailby feather

More work on Ngramatic

Past night I took a break and went early to bed (during the weekend I drink less coffee than usual, and probably that has something to do with my sleepiness). But tonight I fired the machine again after dinner, working into Ngramatic to get a fresh version out.

Right now I am cleaning the code and adding a new set of HTTP controls to fire the processes from a web client. Monitoring and orchestration are more valuable than usual with a mesh architecture, and I am trying to cover as much as I can outside the working day.

facebooktwittergoogle_plusredditpinterestlinkedinmailby feather

More work for Ngramatic

Today I continued working in Ngramatic’s code instead of a side project. I know that it might not be the best idea, but I really want to see the product moving, and a quick fix of half an hour end up eating two hours and something.

While I was waiting for scripts to run, I gave a quick shot to deploy Ghost in OVH. The site is still not working, it is complaining about the access rights, and I haven’t really looked at them yet.

facebooktwittergoogle_plusredditpinterestlinkedinmailby feather

Domains and hosting

Nothing too exciting tonight. I was checking hostings outside AWS, because the prices don’t fly too well with me if it is only for a messing around after working hours.

In the end I picked up a VPS Classic from OVH. For 6.5 euros I get two cores, 2GB of RAM and 25 GB of disk, which should be enough to do some experiments. The contract goes monthly, then I can stop it for the price of three coffees. Not too bad.

Then I was busy with administrivia, a few of my registered domains are close to be renewed, and I am consolidating all those operations with the guys in Blacknight.

Tomorrow I will try to deploy Ghost there, and see how it works.

facebooktwittergoogle_plusredditpinterestlinkedinmailby feather