Using Amazon Lambda

AWS LambdaAs I mentioned last week, I’m in the process of using Lambda with Elastic Transcoder to automate conversion of m4a files into mp3 files. I spent the weekend writing a few scripts in node.js; here’s what I’ve learned so far:

  1. A Lambda function is a pretty simple thing to write.
    1. There are tons of examples to reference
    2. You can write your functions in 3 languages – javascript (node.js), Java, and Python
  2. Lambda plays nicely with most AWS services
    1. I’m interacting with CloudWatch, SNS and S3… no problems, except for…
  3. IAM/Security can trip you up if you’re not careful
    1. 25% of my debgging time was spent figuring out what permissions I needed to add (without given “wide-open” permissions to my IAM role).

Continue reading “Using Amazon Lambda”

Using Amazon Elastic Transcoder

Elastic TranscoderI’m a big fan of music and I manage my 50001 songs using iTunes. iTunes has it’s share of problems2, but overall it’s a pretty good media management application – especially if you’ve bought into the Apple ecosystem (which I have).

My problem is that most of my files are in the m4a format. That’s fine for my personal use, but it’s a problem when I want to share a file with someone else (who may not be part of the Apple ecosystem). iTunes allows you to convert a music file into mp3 format, but you have to remember to remove the duplicate file3. Again, this really isn’t a problem… but there’s got to be a better way to do batch conversions of files.

This became a bigger issue when I started re-publishing old posts to my blog. Many of those post have links to since-expired media files – which means I need to replace the links to valid files. I’m using the “WP Offload S3” plugin – which uploads my media to an S3 bucket. I’m also using the “zbPlayer” plugin to make my files available to play within the post. Problem is:zbPlayer only works with mp3 files4.

Continue reading “Using Amazon Elastic Transcoder”

Getting Started with my Blog on AWS

I workAWS_Services as a technology consultant, and it’s been some time since I’ve been hands-on (these days, I typically architect solutions on paper and the work with technology architects, designers, and developers to implement the solution). This blog will give me the opportunity, in a live environment, to get my hands dirty. Along the way, I’ll document what I’ve done, so others can follow (or use for their own purposes).

Step 1: Take AWS training. The best place to get instant hands-on experience is aws.qwiklabs.com. The website provides everything you need to learn about AWS and to build working examples.1

Step 2: Sign up for a free account. And yes, free means free, for the most part (more on that later).

Step 3: Build a LAMP server. The instructions here (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/install-LAMP.html) are easy peasy.

Step 4: Install WordPress. Again, super simple instructions (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/hosting-wordpress.html) Continue reading “Getting Started with my Blog on AWS”

Hello world!

Hello-WorldWelcome to my blog. It’s still a work in progress, and it’s purpose will change over time… but for now, its serves the following purposes:

  1. Exercising the “right hemisphere” of my brain, as I share my thoughts on music, technology, books, hobbies, etc….
  2. Gives me a place to rehost posts from my old blog
  3. Helps me to grow my experience with AWS and other technologies that I’m becoming familiar with. Today, I’m hosting my own WordPress instance on a LAMP server that I installed on an AWS EC2 micro instance. I’m using S3 to host the images and media. Over time, I hope to use AWS (or scripting in PHP) to
    1. write a program (or use AWS media technologies or Lambda) to convert m4a files for mp3 (it’s easier to share my music in mp3 format)
    2. change the WP-S3 plugin to use S3 infrequent storage (no need for the redundancy that S3 provides)
    3. convert the DB from MySQL to Amazon Dynamo (or another noSQL db).

So, thanks for checking out my blog and feel free to leave a comment!

dbj