Fun with Home Media Servers

I am trying to get back into blogging more, and recently I have been doing more with my home media server, so I thought it might be interesting to talk about some of the cool things I have done with that.  This leads to my home lab series I have been wanting to do, but this is kind of the introduction, that lead me to the home lab idea.

As a disclaimer, I do not condone any illegal activities.  I am writing about using a media server for digital content I have purchased or created.  I am not going to write about the implementation of a home media server, lifehacker.com, and a number of other sites have some exceptional walkthroughs on that topic, this is focused more on the design, and ancillary applications.  As always, this is for my personal interest, which often leads to discussions with friends and customers as well as exploring new technologies and learning new skills around coding or integration.

The Research

So this all started when I was talking to a coworker about how he was watching movies on his iPad.  He seemed to have quite a bit of content.  To this point I had been purchasing off iTunes, and downloading on my iPad and streaming on my Apple TV.  We had been using Netflix and occasionally Hulu+, but from a home media perspective when we wanted to watch something not available digitally we were using DVD/Blu-Ray or similar.  I experimented with DLNA, and various other solutions, but the endpoint was always clunky and not user friendly for my family.

I was pretty skeptical about this, I had experimented with ripping DVD’s I had purchased previously, and it had not gone very well.  I went and started researching Plex and XMBC.  While I found both solutions quite impressive, the polished user friendly appearance of Plex won me over, mostly because my family doesn’t care how cool it is, they want a netflix style interface and I wanted it to give me enough functionality to add features like photos, home movies, music, TV Series, and Movies.

The Hardware

I am an unapologetic Apple Fanboy.  Ok that may be a bit of an exaggeration, but I do love all things Apple for the most part since my first iPhone and my first MacBook Pro.  Most of our devices at home are Apple, so it made sense to go with a Mac Mini 2012 model with 16GB of Ram.  I opted for the extra ram for caching, I have found that I have very few buffering issues even when running multiple streams.  I did find that running over wireless tends to be a bit difficult, so I ended up using the 1GBe Nic.

For the storage I debated heavily on purchasing a NAS, and I was pretty close to picking up a Synology, but when I looked at the cost versus what I would use it for I changed my mind.  Since I use VSAN in my home lab, it was tough to justify the added cost of a NAS.  I thought a 4TB hard drive would be good.  I selected a WD My Cloud 4TB drive from Best Buy with USB 3.0.  This performed exceptionally well, so I bought another, and then a friend gave me a 4TB Toshiba 4TB USB 3.0 drive.  Recently I ordered a Toshiba 5TB USB 3.0 drive.  Now this is quite a lot of space, but I will explain more about that in a later section.  I opted not to use a software raid on the drives, selecting exFAT for for the file system for maximum compatibility between OS X, Linux, and Windows.

A late addition, which will become clear later was a Raspberry Pi B+.  This is used for monitoring and 3rd party plugins which I continue to experiment with.

Endpoints

Of course all this work would be no good if we had no way to watch.  The initial tests were done with a web browser.  Being a chrome user, I was impressed with the performance and the lack of plugins required to play.  It even worked well on my old Chromebook.

As we have two Apple TV’s, again, this was critical.  A friend told me about the Plex Connect project on GitHub.  A quick search and I was installing and configuring.  The basic premise is it forwards one of the apple TV Apps, in my case Trailers, to my Plex Server.  There are frequent updates and it is very simple, looking much like Netflix which served my family well.

I tested the XBOX 360 interface which worked well enough, but honestly it wasn’t as good as the Apple TV interface.  I also tested the Chromecast for a while, but that ended up in my travel bag since we have Apple TV’s on the TV’s that are using Plex.  Using the Chromecast in hotels has been exceptional, and enabled me to enjoy my home media while traveling using the Hotel Wifi.

3rd Party app integration

So as a geek, I decided just having the Plex server stood up was not quite enough.  I wanted to get some statistics on who was watching what on my Plex Server, and see what media was popular.  I found the PlexWatch and PlexWatchWeb projects on Git Hub, which were compelling.  I tried installing them on my Mac Mini thinking why not.  Going through the install it appeared I would need to install several pre-requisites, including MacPorts to get it to work.  Now I love my Mac, but I am not a fan of having to do such unnatural things to get software installed.

I loaded up Raspian on a Raspberry Pi B+ and did the install with no issues.  Pulling up the web interface I was impressed, it was skinned to look like Plex, with some very powerful data.  Now I am able to track my children’s viewing, trust but verify, and also look at statistics to determine what I might want to purchase next, or what types of movies are interesting.

That got me thinking about having more of a unified interface of my plex server.  I found the Marachino project for XMBC which had been ported for Plex.  I have to admit, it’s use is minimal, but a pretty dashboard does make it interesting.  I plan to look at the code behind it, the widget interface is compelling, and could prove to have many uses.

One final note on the Raspberry Pi, I did have some thoughts that I might need to access the media directly, not through the Plex interface.  Initially I thought NFS would be the easiest since it was linux and OS X, but I found that NFS doesn’t work with exFAT, or at least not easily.  I started to look at other options, when I realized the Mac can nativly share via SMB.  I configured the SMB shares and tested, but realized I didn’t need them.  I suspect this will come up in the future though, and remains in the back of my mind as something I will explore again.

So that’s it, my home media setup.  I do have a Roku3 on the way since we just added Sling TV to our cord cutting efforts.  That should be interesting, but I don’t suspect it will materially change things.  My next project will be a home lab, I plan to start with the design.  I hope to make it interesting, compelling, but mostly give some insight into the design process, and document my steps and the lessons learned through the design phases.

Fun with Home Media Servers

VMware certification framework, long walks on the beach, teddy bears…

I am not a VMware administrator. I know this may come as a surprise to some of you, but I occasionally have to look things up in the docs, or hunt in the GUI for where some alert may be burried. I spend a fair amount of time in the labs, honing my skills, but it is generally for the purpose of understanding more about the products I represent, and being able to speak intelligently about them. I have been a VCP-DV since 2010, but I have worked on VMware ESX since 2006. I consulted on and wrote a great deal of documentation and many designs prior to becoming a VCP. I have the utmost respect for the certification, knowing how challanging it was for me, and how I continue to struggle with the exam itself, largely because I need to be better disciplined about sitting down and studying for it, and because I am not dealing with it as an administrator.

That being said, I am not a fan of the current certification process for VMware. I have brought this up to the education services team as well as those in the community, and we have seen some changes, but I think we need to see more. Looking at other vendors, EMC or HP for example, certifications are geared at career paths. As a consultant I obtained the EMC Technical Architect certificaiton on the VNX products. It was challanging, and required three exams, but it was very focused on design with some interface and hands on knowledge required, but for the most part, it was around design principals which are specific to the product with some general design principals. HP’s storage architecture certification was similar, very focused on good design and solid product knowledge.

The main thing that differentiated these from the VMware certification process was the seperation of an architect track from the implimentation and engineering tracks. It is important for a architect to be able to understand the admin and engineering functions, VMware’s entry point with a very specific administration exam is counter intuitive. Continuing on with the new VCIX certification, formerly VCAP, requiring an implimentaiton exam again seems to be a bit off.

In my opinion, VMware Education should look at seperating out the tracks, and changing some of the course work to reflect this. By forcing everyone up a single path the value of the lower certifications are diluted, as it becomes a core requirement for many companies. That being said, I think that there should be some cross over one each exam and in each course. We need to drive more people to a higher level. I will also say that the addition of the Network Virtualization track to the others is refreshing, I am excited to see that we are growing the education and certification tracks, but there needs to be more clarity and better paths to get more advanced certifications.

One final thought I would leave you with, certifications are not the end all be all, much like education. I hold a BS and an MBA. The first thing I learned when I finished those is that my learning had just begun. As IT professionals it is incumbent upon us to continuously learn, grow, and improve. Versioning certifications is a necessary evil to make sure we are keeping up with our learning, but it falls to each of us to make sure we are pushing ourselves to learn, to seek out mentors, and to grow our own career.

VMware certification framework, long walks on the beach, teddy bears…

If you always do what you’ve always done…

If you always do what you’ve always done, you’ll always get what you’ve always got. These words of wisdom come from Henry Ford, someone who was all about disruption.

Looking at the tech industry, I sometimes think we are becoming more deeply divided than ever. When I started, it was very divided between developers and infrastructure. Developers wanted admin access to everything, for better or for worse, and infrastructure fought to keep developers from getting access to anything. Within infrastructure, we became siloed, typically separating critical infrastructure into something similar to storage, servers, and networking. Of course this varies, and smaller companies generally merged these out of necessity. This has created significant stagnation for many in the IT industry, both personally and as a group.

Within IT we can no longer afford to be siloed. I have talked about this in the past, but I can’t say this enough. We need to start creating disruption within our own teams. Cross functional teams are no longer just a good idea, they are the future of IT. Moving to the software defined datacenter, the policy driven datacenter, requires that a team be made up of all resources required to complete a project or support an application.

As we continue down the path of further automation and application driven infrastructure it is time to disrupt our teams, learn broader skill sets, and move to an agile architecture, engineering, administration, and support model. That or we can keep doing what we have always done, and keep sending our users to the public cloud since it is easier to get things done.

If you always do what you’ve always done…

I am NOT a developer…and I am ok with that

One of the perks of my job is I get to meet some really smart and interesting people. I am grateful that many of them keep in touch and challenge me to think differently. For years now I have had conversations with some of these people around our careers and the future of our industry. What follows are some thoughts from those conversations.

Over the two decades I have served many roles in IT. I have supported mainframe, linux, and windows systems, I have been a storage engineer, a DBA, an IT Architect, a technology consultant, and for a couple years in college, I tried my hand at software development. Those lessons were invaluable, and I am very thankful I was given those opportunities.

Looking at the landscape of IT, we are constantly asked to do more with less. The role of the IT Operator is becoming less and less relevant in favor of IT Administrators. There seems to be a push, as automation and management software becomes more efficient, to again up level those administrator functions, move them closer to the end user, eliminate more of the middle. With OpenStack, developers want, and often are getting more access to infrastructure, albeit virtual infrastructure.

Considering the Google and Facebook models, it becomes apparent that while we are not going to see the end of the IT Administrator/Engineer any time soon, it is a good time to increase our skills. I am not a developer, and I have no intention of changing that. I understand code, and I can write well enough for a few utility apps, but it is not my passion. As I look at the IT landscape though, the future of our profession, in my opinion, belongs to developers, and those who understand code well enough to talk to developers with some level of intelligence about platforms, and infrastructure in terms that matter to them.

I have no crystal ball, but I have been in the industry long enough to say for certain that software is the future. Darwin said, “It is not the strong who survive but the adaptable”. It is up to us to adapt, we are writing the future of our industry, it is time to join the movement and be a part of something bigger. That said, I am not a developer and I am ok with that.

I am NOT a developer…and I am ok with that

Communities are a messy thing

A couple months ago, I wrote a post about VMUG being community event, not a vendor fair. That sparked some discussion, but not the desired outcome of more community involvement. Long before I was a VMware employee, I was a member of the VMUG. Before that I was a member of the technical community. I write posts like this, show up to VMUG events, put this out on twitter, not because I am a VMware employee, not just because I think we have really cool technology, but because I believe the tech community is the reason for us being here, it is a part of us, and it is what I care about.

One of the greatest values in the community is comparing notes, asking questions, learning from each other. My challenge is to create micro community gatherings. Gatherings of similar companies. We are trying to create a healthcare community meetup, basically an opportunity for healthcare providers to discuss what works, or just hang out and meet their peers. I would also like to see other similar groups started, and I would love to come hang out and learn from all of you. It doesn’t have to be limited to companies who do the same thing as you, but similar sized companies are a great source of information.

Please come to the VMUG events, they are a great time, and I enjoy meeting those of you in my local area, but don’t let it end there. Small meetups are a great way to interact, after all, the IT community isn’t so large, and we all have something to contribute.

Communities are a messy thing

VMware vSphere: Design Workshop [V5.5] in Seattle!

Just a quick note, we were able to secure a VMware vSphere design workshop in Kirkland, WA, January 20th – 22nd.  This is an interactive course on design best practices, generally geared at VMware, but the concepts translate well to IT Architecture in general.  This is a recommended course for the VCAP-DCD exam, so register here if you are interested.

As always contact me if you have questions and I can get you in touch with the right people if there are other questions.

VMware vSphere: Design Workshop [V5.5] in Seattle!

VMware NSX: Install, Configure, Manage [V6.0]

Last week I completed the VMware NSX: Install, Configure, Manage [V6.0] course, so I wanted to share my thoughts on the training.  This is not an official VMware perspective, but my own personal thoughts on the class, the venue, and the instructors.

Venue:

I have taken a number of technical trainings both live in person, live online, and on demand recorded.  I have to say, the live online is my favorite for this type of trainings to attend since I can be in my own home office, and work on my own equipment which is always nice.  This time I was able to interact with a number of customers and fellow VMware employees not just in the U.S. but also in South America which was exciting.   The interaction was priceless, although I was a little outgunned.  I took the course to get myself up to speed on not just NSX but also on more advanced networking concepts, more on that later, but it turned out almost half the class were CCIE or close to that level.  Coming from a storage and virtualization background this was a little intimidating, but it gave us lots of good discussions and questions.

The labs were great, there were a few hiccups, but it seems like the lab team has really gone all out to fix the bugs, and this was one of the better lab environments I have seen for an online training.  It helped to demystify the product, much more so than simply going through the hands on labs, http://hol.vmware.com, which are great, but not always enough to get you to the point of being comfortable working on the product.

Instructors:

I won’t call out the instructors by name, but they were great.  A little cheesy sometimes as instructors tend to be, but very knowledgable.  I have noticed technical instructors can be hit or miss, but this time our instructors made it interesting.  One big bonus was the reviews.  Every segment we had to go back over what we had discussed, and they pushed us pretty hard to interact.  Not easy to do online, but they handled it well.

Content:

Not having a networking background, I wasn’t sure what to expect here.  I was not 100% sold on the NSX concept.  It was cool, but I didn’t have enough data to make an informed decision.  Going through the course really showed the value of software defined networking.  My take is that there is no desire to replace hardware networking and firewall vendors, just augment them.  There are some use cases that make sense, distributed firewalls, giving the networking team more insight into the virtual network, and even another perimeter to prevent attacks, but overall it was pretty clear, this is not going to replace the physical infrastructure.

Overall, this was a great course, and I recommend it even if you’re not interested in the certification.  The feedback from the CCIE levels in the class was that it was very helpful, and I think everyone was able to take something away.

VMware NSX: Install, Configure, Manage [V6.0]

VCP-DCV and VCP-NV: AKA What I did on winter vacation.

Just kidding, but it makes for a good title.  Seriously though I am taking the VMware NSX: Install, Configure, Manage [V6.0] course this week.  As usual I am taking it live online.  I am always a skeptic, but this course has been good.  I have to admit, I cheated and read most of Networking for VMware Administrators, an exceptional read, which helped since my networking background is pretty light.  I will post a final opinion this weekend, but so far the course is far better than I expected.  I am planning to write the VCP-NV exam mostly because I think it is an important technology, and the cert forces me to study, plus it lends credibility in some circles.

Since I have so much free time, I have also decided to take the VMware Certified Professional 5 – Data Center Virtualization (VCP5-DCV) Delta exam which was re-released here.  From what I can tell, this appears to be the same VCP550 exam, which seems strange for a delta exam, but it is online which saves me a trip.  I am mostly taking it so I can maintain my streak, and to prove to myself I can pass it again.  I am going through the blueprint at length and reading everything I can find.  I will put up some thoughts once I complete it, but I suspect it will be similar to previous ones.

One final thought, if your doing the delta exam to get it done soon, it is only available until March 10, 2015.  Best of luck and if I can help study let me know.

VCP-DCV and VCP-NV: AKA What I did on winter vacation.

How I Learned to Stop Worrying and Love the Bomb

It occurs to me one of the most underutilized resources at VMware is our Online Hands On Labs, https://communities.vmware.com/community/vmtn/resources/how.  Anyone who has been to VMworld should be familiar with the hands on labs, a few years ago the team at VMware decided to make this publicly available online at no charge.  So that being said, I wanted to dig into the labs a little, and talk about some uses, and some of my personal favorites.

Use cases

Cert Prep

Often I get asked about how to pass a VMware exam.  I always suggest hands on experience.  In my opinion, the classes, while valuable, do not prepare you for the test in any way.  In order to be successful you need actual stick time on the system.  In the early days many of stood up labs either with salvaged equipment, or more recently with Mac Mini’s and Intel NUC boxes.  This is still a viable option, but not cost effective for everyone.  This is a perfect way for anyone who wants to get some hands on time with the product, and get comfortable with what you are working on.

Product Knowledge

When I started working on VMware products there were 3 products, Workstation, GSX, and ESX.  It was pretty easy to be good with everything VMware did.  Today, things have changed, both the acquisitions, and organic growth.  Thankfully, the general concepts are similar, but the company has grown.  That being said, so have most of our jobs.  We are expected to get deeper on more products both on the SE side here at VMware but even more so on the IT admin/engineer side.  Having a full lab to walk through and understand is immensely valuable.

Personal Growth

One of my goals is to read one non-fiction book a month.  I try to exceed that, but somehow I am lucky to get through the one.  I find though, most of these books, technical or not, inspire me to want to go deeper into the technology I am talking about.  The more time I spend digging into the labs the more curious I get, and the more questions I take to VMUG members, product teams, or anyone who is interested in discussion.  The best way to get better is to keep pushing yourself and to keep learning.

Personal Favorites

HOL-SDC-1401 – Cloud Management with vRealize Operations

I have found this one to be incredibly helpful since it goes over the newer features in vRealize Operations, formerly vCOPs.  There are significant changes coming, and this tool is proving to be incredibly helpful for a number of users I have spoken with recently.

HOL-SDC-1403 – VMware NSX Introduction

Having very little networking experience outside of architecture, this has been a life saver.  I have decided to work on my VCP-NV, so this lab has been a lifesaver.  Not only have I learned about NSX, but it has helped me to dig deeper into vSphere networking.

HOL-SDC-1408 – VMware Virtual SAN 101

I have been working with VSAN since the early Beta.  I am a huge fan, coming from a storage background, although I am always cautious with the use cases.  Using the Lab helped me to become more successful with my demonstrations, and with my conversations.

I do want to try more of the labs, there are so many, and they are quite well done.  One final tip, I use multiple monitors when I am in my home office, or my iPad when I am not.  I prefer to put the lab in full screen and use the second screen for the lab guide.  It makes things so much easier.

I encourage you to use these labs, not because I work here, but because I think that knowledge is power.  Get familiar with the products, challenge your self, your peers, your VMware sales teams, or just grow professionally.  There are so many valuable tools out there, but there is nothing like hands on experience.  It is your career, use the resources available to you and get better at what you do.

How I Learned to Stop Worrying and Love the Bomb

Changing bad organizational behavior

DISCLAIMER:

As always these are my opinions, and do not necessarily reflect those of my employer.  This post is not directed at my current employer, I am very happy with my job, this is more a broad look at the industry.  I work with customers on a daily basis who are in these types of situations, and hear the complaints about turnover, unproductive employees, etc.  This is my thoughts on how to make things better.  This is not a new concept, I am not the first one to say this, but because this is becoming more of a conversation, I feel it is worth bringing up again.

 

For many of us who came up through the ranks of IT, we were taught that you had to specialize, pick an area of focus, and then become the master in that area.  That was the way of IT.  This has led to our current environments where it is assumed that hiring the best administrator/engineer in the field will somehow bring a greater value to IT.  Of course virtualization has changed the dynamic, but we don’t seem to have kept up on the structure of the organization.

Break the siloed model

We really need to look at the model we use now for IT organizations.  As in the diagram, many enterprises separate out their major roles, some use more, but generally this model helps the discussion.

 Screenshot 2014-11-29 at 15.44.05

The biggest challenge is a process flow issue.  Since everyone is an expert in their field, cross functional teams tend to be created for projects, but are not incentivized to work together on a regular basis, and indeed in many cases have their own agendas, the primary being to protect their territory.

To resolve this issue, in the past many of us have advocated for splitting into cross functional teams split out as Architects to design, Engineers to build, and Administrators to manage, much like the diagram below.

Screenshot 2014-12-01 at 17.29.31

This seems to make sense, but then we start to find the vision of architecture is an ideal, but is not followed by engineering and administration, and we suffer from a serious disconnect.

In the software defined datacenter, it makes sense then to have hybrid teams of each discipline working together, but also defining architecture and design.  I am a firm believer that architects, engineers, and admin’s have very different skill sets, and even personalities, but at the same time, I think there needs to be some cross pollination of the teams.  I think the model above works, but there should be bleed over between groups.

By using cross functional teams, it is then much simpler for the architecture team to work with the deployment/engineering team to put the product into production.  It also allows engineering teams to have input into design.  Administrators as well should be involved not only in the deployment process, but also in the design.  This ensures their feedback is considered, and allows them to buy into the architectural vision.

Recruit the right people

Enough cannot be said about the value of having the right people in the right positions.  It pains me to see people who have been with a company for 10+ years, in the same position, or similar ones, who are there because they have been around and know the processes.  Turnover is a necessary part of any business.  Businesses, even non-profit ones, exist to make money, whether for the shareholders, or for those they serve, it is necessary for them to ensure their employees add value.  It should not be a negative thing when someone moves on, process should be such that when someone leaves the company, they are missed, but it is not catastrophic.  Organizations should be able to recruit quickly, and find good people who are suited to their environments.

When recruiting, we need to stop looking for someone who’s resume meets the job description.  Personality, diverse experience, and future potential should be considered.  Organizations should also consider candidates with a different background.  A software developer might be the perfect enterprise architect, if he has the right personality.  A project manager might be an exceptional engineer if he has the technical proficiency, and might bring a fresh approach.  It isn’t always about the resume, sometimes it is about the fit.

Train people for success

Training is a huge expense, there is no doubt about it, but it is an investment.  Even with higher turnover rates, you are contributing to a future.  Certainly that person may leave after you train them, but the next person you hire may bring those skills or others.  By training your people, you elevate the entire team.  You encourage them to move up within the organization.

Training is not just about technical training either.  Internal training programs, preparing individuals for leadership roles, program management roles, or even just to be better communicators are critical.  If you want people to stick around, develop them, make them better, contribute to their sense of value, and make them important to the companies future.  Make them directly responsible for the companies wellbeing, show them a path to being the best they can be.

Pay people like you want them to stay

Finally pay, that ever painful discussion.  For most of us, there comes a point in our careers that money is not a primary motivator.  That being said, I have been in 1 organization in the past 11 years where I received a pay raise that was above the cost of living index, without having to threaten to leave.  I love what I do, and if I were independently wealthy I would probably do my job for free.  Money has not been a primary motivator for some time.  That being said, I am not independently wealthy, and while money is not a primary motivator, it is a measure of what a company thinks of my performance.

My advice to managers, pay your good employees enough to keep them happy, and keep raising the bar.  If they aren’t worth more money to you, someone else will happily take them.  There is no more work for a single company for 40 years and retire with a pension for most of us.  Loyalty is a two way street, and we are mostly all at will employees.  No hard feelings, if your employees aren’t worth giving raises on a regular basis, you should probably find new ones.

It is really all about a better state of being for companies.  As we automate more and more, IT employees are going to need to develop further skills, and as such are going to become more valuable.  I am very much pro business and capitalism, and I think that individuals should be paid based on their skills.  As many of us continue to develop new skills, and work hard to be the best we can, I think it makes sense to create environments where we can thrive, and where those who choose not to develop their skills can be moved to roles they are better suited for.

Changing bad organizational behavior