I use many devices in many places and find simple set-it-and-forget-it services like Dropbox make my life much easier. I always need access to many different files on a daily basis. Yet I like many others are not comfortable with some of the privacy policies or terms of service most 3rd party services force you to agree to. Plus there is the expense of many of these services. With broadband and DSL speeds offering such great speeds it seems a waste to have a computer at home with much of your music and videos along with important files much too big to be stored even on Dropbox.
Using ownCloud to be your Own Cloud
Most home routers and WFi routers have built in support for dynamic DNS. This allows you to have a subdomain (or top level domain) pointed at your home connection that used DHCP to give you an IP. This means your IP can change and the dynamic DNS service repoints your domain to the new IP. Thus, allowing you to access your home network from anywhere. What I will be describing is installing all needed packages and ownCloud on Debian based system, namely in this example Ubuntu Server Edition 12.04 LTS.
You can also use this example to setup ownCloud using the AWS Free Tier to create your own true cloud based Dropbox replacement for you and your entire family. Simple setup an AWS account and enable EC2, and S3 (optionally). Then fire up a micro instance of Ubuntu Server. Connect an additional EBS volume for added storage. You can also use this same instance to run your own VPN/SSH tunneler, but that is for another post.
Since I have been using Scalr to manage my Amazon Web Services farms I have been wanting more monitoring in terms of statistical information on services, traffic, disk usage, and uptime to name a few. Scalr has built in means of basic event notifications such as host up, host down, etc. Along with providing very basic load statistic via RRDtool. In the past I have always used Zabbix for most projects I have worked on so I wanted to be able to use it with Scalr. I am still testing the setup I am going to speak of so please keep that in mind. This is NOT a howto, but more of a brainstorming of how I plan on getting Zabbix integrated into my Scalr setup. In the Zabbix documentation (PDF) there are a few ways to use the auto-discovery that they cover (page 173). You can have Zabbix monitor a block of IPs to find new Zabbix Agents running for example. So here is what I will have my Zabbix Server do:
- Look for new Zabbix Agents on my AWS internal IP range.
- If the system.uname contains “Scalr” it will add to Scalr server group
- Server must be up for 30+ minutes
There will be other stipulations in order to get the server added to Zabbix. I will have system templates for each of my Scalr AMI roles. Once the server is added to Zabbix it will add them to to their respective groups and monitor for items and triggers listed in the system template. There will also be a rule to remove old instances after 24 hours from Zabbix after receiving the host down trigger. This way I will not have a bunch of old instances that were once monitored still cluttering Zabbix database. If you happen to also have Windows AWS instances you can add a rule to monitor these as well. The AMI just needs to have the Zabbix Windows Agent installed.
I have been playing around with the AWS Console recently released. It is a good start to a nice AWS provided interface for controlling EC2. It seems to only make sense that they provide a console instead of forcing people to look elsewhere such as RightScale or Scalr. For that matter I am not sure why Amazon does not just buy RightScale and provide their services as part of AWS.