Using SSH Locally to Work With Ubuntu VM + VMware Tools Installation via Shell

I do a lot of work with Ubuntu, 90% or so of that work is from an Ubuntu instance. Often that instance happens to be a local VM running in VMware Fusion (or sometimes Virtual Box). Often I’ll start with a base server image which isn’t entirely setup for SSHing into the instance. These are the steps to get that installed and ready to go.

First install the image, in this particular situation I’m using the Ubuntu 12.04 LTS Server image.

Ubuntu 12.04 Server. Click for full size image.
Ubuntu 12.04 Server. Click for full size image.

That will take a few minutes to install, on machines these days I’ve experience just about 8-15 minutes. There are a million other options to do this too, such as starting with a clean Ubuntu image using Vagrant, which takes all of about 1-2 minutes, sometimes a bit more if you have to download the image. But either way, get one built and running.

Installing Ubuntu using VMware Fusion. Click for full size image.
Installing Ubuntu using VMware Fusion. Click for full size image.

Once the image is installed, login and install openssh-server and openssh-client.

[sourcecode language=”bash”]
sudo apt-get install openssh-server openssh-client
[/sourcecode]

Once that’s installed I pull up my IP address with ifconfig.

[sourcecode language=”bash”]
ifconfig
[/sourcecode]

The ifconfig command shows a lot of information regarding the network configuration associated with the various network adapters in the machine that it is executed on. In the image I’ve circled the local IP address that is assigned to the instance.

The local IP address using the ifconfig command. Click for full size image.
The local IP address using the ifconfig command. Click for full size image.

Now that you have the local IP of the instance, bring up a local terminal (in this case I’m on OS-X, but if you’re on Windows pull up Putty or on Linux or another *nix variant pull up a shell). In the terminal you can now enter the follow SSH command to log in from the local machine versus the running instance. This comes in handy when you want to treat the machine like an actual hosted machine somewhere, in which you wouldn’t be directly logged into the server.

[sourcecode language=”bash”]
ssh username@192.168.77.197
[/sourcecode]

Logged In.
Logged In.

Getting VMware Tool Installed

This assumes that you mount the installation files (aka the cdrom) via the built into mount option in the VMware Fusion menu.

Selecting 'Reinstall VMware Tools' to mount the installation files. Click for full size image.
Selecting ‘Reinstall VMware Tools’ to mount the installation files. Click for full size image.

Once that’s mounted, the machine is ready to install the tools on. However, there are a few other things to install just before installing these. First get the latest updates for apt-get with the update command.

[sourcecode language=”bash”]
sudo apt-get update
[/sourcecode]

Now install the latest gcc, make, kernel headers and other important tools.

[sourcecode language=”bash”]
sudo apt-get install gcc make build-essential
sudo apt-get install linux-headers-$(uname -r)
[/sourcecode]

In the above, everything can be put on one line, but I separated the linux-headers just for extra clarity. I can now via remote SSH on the local machine or directly into the virtual machine and run the following commands to install the VMware Tools.

[sourcecode language=”bash”]
sudo mkdir /mnttools
sudo mount /dev/cdrom /mnttools
tar xzvf /mnttools/VMwareTools-x.x.x-xxxx.tar.gz -C /tmp/
cd /tmp/vmware-tools-distrib/
sudo ./vmware-install.pl -d
[/sourcecode]

Finish everything up with a good reboot.

[sourcecode language=”bash”]
sudo shutdown -r now
[/sourcecode]

Now I have the VMware Tools installed and able to SSH remotely, giving me the ability to use the virtual machine as I would an actual hosted instance.

Vagrant for VMware Fusion with plugin issues… Part 2

After the previous blog entry I wrote up, working through getting vagrant to spool up a vmware image I got a few other suggestions via Twitter.

With that quick delete of the hidden vagrant directory I gave it a shot again with the provider flagh.

[sourcecode language=”bash”]
rm -rf .vagrant/
$ vagrant up –provider=vmware_fusionBringing machine ‘default’ up with ‘vmware_fusion’ provider…
[default] VMware requires root privileges to make many of the changes
necessary for Vagrant to control it. In a moment, Vagrant will ask for
your administrator password in order to install a helper that will have
permissions to make these changes. Note that Vagrant itself continues
to run without administrative privileges.
Password:
[default] Box ‘bosh-solo-0.6.4’ was not found. Fetching box from specified URL for
the provider ‘vmware_fusion’. Note that if the URL does not have
a box for this provider, you should interrupt Vagrant now and add
the box yourself. Otherwise Vagrant will attempt to download the
full box prior to discovering this error.
Downloading or copying the box…
[/sourcecode]

Which this seemed to work. Downloading the helpers and such started and I waited patiently.

A Few Thoughts…

Needing to delete a hidden file struck me as one of those completely arbitrary and random solutions. It worked, which is awesome, but it working is a completely counter intuitive solution. I did a ‘destroy’ previously along with a number of things that were somewhat not intuitive. At this point the steps were fine, I had to ask for help, and I got help really fast. That’s awesome, but needing to go through those steps was unfortunate and ties back around to @jeffsussna‘s tweet earlier.

Anyway, as soon as I did this I decided Virtual Box it is. As it went through a 40 minute download of an image (??) it finished and displayed…

[sourcecode language=”bash”]
$ vagrant up –provider=vmware_fusionBringing machine ‘default’ up with ‘vmware_fusion’ provider…
[default] VMware requires root privileges to make many of the changes
necessary for Vagrant to control it. In a moment, Vagrant will ask for
your administrator password in order to install a helper that will have
permissions to make these changes. Note that Vagrant itself continues
to run without administrative privileges.
Password:
[default] Box ‘bosh-solo-0.6.4’ was not found. Fetching box from specified URL for
the provider ‘vmware_fusion’. Note that if the URL does not have
a box for this provider, you should interrupt Vagrant now and add
the box yourself. Otherwise Vagrant will attempt to download the
full box prior to discovering this error.
Downloading or copying the box…
Extracting box…te: 119k/s, Estimated time remaining: –:–:–)
The box you attempted to add doesn’t match the provider you specified.

Provider expected: vmware_fusion
Provider of box: virtualbox
[/sourcecode]

… because the image isn’t available for vmware according to Vagrant, so for now, with some solutions and more questions I’m just going to go with the Virtual Box Solution and get back on track with the larger picture blog entry I’m writing. Thanks to @brianmmclain, @mitchelh, @jeffsussna and @thoward37.

What really is Open Source Software and what’s this community nonsense they ask…

Open Source Software (OSS), Why Some Fail At It

OSS has won the war. It has been over for years now. Microsoft has ceded, Oracle, VMware and many others have stepped up and attempted to embrace the open source community. Sometimes they’ve been successful, sometimes they haven’t. They’re slowly changing their models to play well with that of the open source software model. Sure, some software is kept closed, but that software in large part is becoming more and more irrelevant while open source efforts are becoming the forefront of technological progress.

What exactly is open source, besides just the opening up of code for others to download? Open source covers a vastly larger ideal than merely providing code for download. A case in point, has been the learning phase Microsoft has gone through. Microsoft, as a company, used to attempt to dictate to its consumer & developer base standards and practices that the company had deemed necessary or in some cases merely a good idea.

Microsoft failed at this miserably over the last decade. Time and time again an open source project would start and Microsoft would create a duplicate library – sometimes directly taking the OSS Project exactly functionality, sometimes they’d merely duplicate it with a basic understanding. Everything from Entity Framework duplicating the functionality of the dozens of ORMs before it. Basically stabbing those efforts in the back instead of being part of the community, Microsoft would remove itself and attempt to subjugate the community efforts.

It back fired over and over and over…

Oracle did something different, yet still blindly stupid. They purchased entire OSS Projects from mySQL to Java. In each case they’ve tainted the efforts significantly by attempting to make these products encourage an unspoken lock in to their proprietary tooling all while litigating (re suing). Their attempt to patent (another issue we can discuss later) the most absurd features and functionality, akin to patenting the breathing process in people! In addition they’ve tried to set legal precedent for things as simple as a URI end point and other notions. Again, something that hasn’t gone over well in the software development world. With the current result being a growing backlash against Oracle. To top all that off, their patent cases have been far worse than even Apple’s Samsung debacle. Oracle, has taken the crown for stabbing the development community, and especially the OSS Community in the back. Multiple wounds too, not just once. They’re doing it over and over as I write this.

Others have continued to make this mistake. They’re starting to suffer for it, and well justified that they do. To stab the community is more than just merely disrespecting one or two developers. It is desecrating the entire community’s efforts, the individuals and their thoughts, ideas, creations and more. It is a slap in the face in so many ways.

Some are starting to do it right, albeit slowly…

Some companies have started to get their act together. One company that is learning right now, slowly but steadily and confidently (they have a good team working on this) is VMware. With their introduction of Cloud Foundry, some could argue this, but they have generally and are trying diligently to open up and be inclusive in the community around their Cloud Foundry Product. Yes, I might have a slightly biased view since I build products for Cloud Foundry with the Iron Foundry Organization at Tier 3, I talk to the teams & individuals at VMware and they, with all their might, intend and do the best they can. As in almost all cases, as long as management keeps everything in their heads clear, they’ll maintain a great project and the future is bright.

Microsoft is another company, with tons of closed things, many attempts at opening products, and is finally starting to get it. They’re starting to be part of the community instead of trying to dictate to it. The windows azure team directly involves itself with jQuery, Node.js and other projects these days. They actively put forth a good foot and have opened up Web API and other web application frameworks and pieces, allowing for pull requests and openly having conversations int he public for full view and inclusion with the community.

So What Really Is Open Source?

Open source software itself, just the code, is simple. But it is assumed and written into the all legal licenses that are included to protect the software from theft and closing by errant companies & individuals. Open source software is code, used as examples or as production web sites is software that is available freely to others to learn from, fix, change, or otherwise modify. It often excludes sharing and using the code with closed source environments or redistributing with closed source products – because OSS efforts do not want to encourage the bad behavior and errant ideals in closed source software by contributing to it.

Building OSS includes a very specific idealism. One doesn’t just throw something into the code, one encourages and builds a culture of openness and being free in thought when working with and contributing to the code bases. The OSS Community is about sharing ideals between individuals to accelerate learning, expand the capabilities of the community as a whole, and push forward progress and development. To summarize with a standard quote, “open source software is about freedom”, and it truly is.

So far, it’s working in a huge way. Some simple successes that have been massive…

OSS Victories

Linux & FreeBSD pretty much hosts the Internet. From Facebook to Google to Amazon they all use some type of Linux variants. Estimates range from 60% to 93% of the Internet & Super Computing is hosted on UNIX machines of the Linux or FreeBSD variety. The notorious Microsoft Windows Server only claims 0.4% of the super computer space and about 30-37% of the Internet Server space. Summarized, the Internet runs on UNIX and specifically on variances of Linux.

When it comes to the web, not only is the majority of the web hosted on systems built by the open source community, but the web applications hosted and run on those systems are open source. The most widely used framework in the world is PHP. One of the biggest up and comers for serving websites and providing interactive web applications is Node.js, with Ruby on Rails being a stalwart for speedy prototyping and production application for thousands of businesses.

Mysql & postgresql round out two of the most heavily utilized databases in existence. Postgresql has grown from zero code to a massively capable database, regularly one-upping the stalwarts at Oracle, Microsoft or other database makers. Mysql has become the go to database for those starting a website or collecting 60 billion rows of data a day, such as New Relic. Many successful businesses have turned these databases into absolutely powerhouses that truly eclipse the need to expend the revenue on databases like SQL Server or Oracles Databases.

NoSQL has come into existence and exists today because of the community. Not everyone has a big data problem and a need for a NoSQL database, or what is sometimes called Not Only SQL these days. The open source community stepped up to build out solutions where relational databases and their history of vertically scaling falls down for modern web applications that run at larger than normal scale. Companies like Facebook, Twitter and others have helped to bring people into this fold and bring more great minds developing the open source that powers these things. This entire movement has been a huge win for the Internet and increased functionality – and the mere ability for many of the large sites to continue to exist at scale (think LinkedIn, Netflix, Facebook, etc)

O’Reilly Books is a company that does a number of things, two of which are run conferences and publish books. They’re a well respected company that encourages open source software and learning through its books, conferences and is heavily involved in supporting the individuals and community around open source software. Even though they don’t create open source software, they provide a massive boost to the ability of developers to write and create open source software by mere involvement. This is a perfect example of example from outside of software development that gains value and adds value back to the community as a whole.

That’s just a few. So really, there’s no reason to resist the freedom of open source. Ignoring or turning away from open source is like turning your back on your family, your community and those around you. There’s no reason to believe the nonsense about TCO (Total Cost of Ownership) that’s been wielded as a weapon against open source solutions. There’s no reason to listen to the FUD about “will it survive” or “what happens when X happens to the project”. There are many companies out there that will help you understand these solutions further, so the TCO argument is dead on arrival. The only path here is toward more software freedoms, preventing large companies from limiting our development options (re: Oracle suing to control API end point pathing, etc). When you do development these days, your first option and thought should be to open source “all the things”. It will help you as a developer, it will be better for you company and those that are leading the way, and it will be better for the community as a whole.

Stay relevant. Write code, individually contribute and be part of your community.

I’m Adron (@adron twitter or @adron app.net) and I write open source software.

The Bad, The Ugly and The Good Bits :: Sexism, VMworld 2012 & Smart Cool People

The Divide in Technologists…

Sexism & Those That are Building Tech

There seems to be a pretty distinctive divide in the technology industry today. There are the young, open minded, devop oriented, free-thinking individuals and then there are the old guard of IT. This later group still brings the “booth babes” and finds an incessant need to assume all women aren’t technologists (which I might add is utter bullshit). This is when I’m going to rant for a minute.

[rant=on]

Ok guys, pull your heads out of your collective asses. I’ve spoke to 11 ladies that are hard core technologists, that would take your old guard IT and replace your sorry ass with a shell script plus some cloud computing and leave you to the dogs. They’re programmers, devops pros, hackers and entrepreneurs  Simply, they kick as much ass as anybody, so shove off.

This however brings up the question, “Why the hell does the conference still perpetuate this bullshit with booth babes and mindless dribble?”  Seriously, can we focus on the technology, the reason we’re here? To learn, to build, to maintain, create and extend our services and capabilities that we work with? Can we not have a mass of “talent” come and stand around just so aging IT guys can ogle their breasts with roaming eyeballs?

Don’t get me wrong, beautiful people are great, and when done tastefully things can be fun. One of the ladies I work with mentioned it’d be great if Thor showed up and hung out at the conference (cuz ya see, we have a product called Thor, and this data company had Data attend. (Brent Spiner)).

I could go on. Simply put, companies and conference organizers need to own up and get with the times. For those of us that are a little evolved past nuckle dragging we should stand up to this time of nonsense. There’s a reason we’re at a conference and it damn well shouldn’t be to devalue people as objects and ogle various body parts.

[rant=off]

Ok, back on track with the successful bits. There were, after all a lot of successful bits and the sexism is a small, yet very sad and noticeable part of the event. The other good news is the amount of women’s groups that are getting together these days to code  (and I also find it unfortunate that to create a positive environment, women usually have to entirely disengage with men, and it is generally men’s fault)  Yup I said code. Rails Girls, Code n’ Splode and many others. So if you’re reading this and are female, check these groups out and get hacking & devoping.

The Big Move, PaaS is Starting to Rock!

VMware made serveral announcements around Cloud Foundry, which is pretty huge. The momentum is still growing, the community is still growing, and the energy is contagious. There’s been some egregious accusations and suggestions that the Cloud Foundry ecosystem is going to collapse. This is, however one of the more absurd notions I’ve heard in months. This definitely falls into the category of FUD flinging with no concrete notion. Lucas (@cardmagic) from AppFog lays out a bit of reality though, and the 20k people at VMworld and the thousands using and hundreds coding to Cloud Foundry give a resounding shout of,

“HELL NO”

Cloud Foundry is not collapsing, VMware is not taking an unfair advantage, and they’re in a position to win along with all the rest of the advocates of PaaS and open source. The thing is, things can indeed be win-win. They don’t have to be win-lose and the later thinking is negative to the industry and counter to the reality of open source.

Either way, toss any ideas this is going away out of your minds. I know most of you already have.

Smart People, Networking and a Few Rounds

The greatest thing about these conferences is the ability to network and meet face to face with hundreds of people that I do business with everyday. These range from people I hack code with, to people I help implement Cloud Foundry or people that simply are involved in the community too. To me, the most valuable ROI is the networking at a conference. Just to throw a few out there, I got to catch up with…

  • Dave McCrory @mccrory – This guy is awesome, if you get to work with him you’re a lucky soul. He’s heading up WMG as SVP of Platform Engineering now to get some cool things built and build out a solid team, which I look forward to hearing about!
  • Andy Piper @andypiper – Andy is VMware’s Cloud Foundry Dev Advocate of Great Britain. I got to meet Andy a while back and got to team up with him and many others to catch up on Cloud Foundry, see were things are heading, talk through some ideas and generally cause mischief around San Francisco.
  • James Watters @wattersjames – I always love running into this guy. Top notch smart, snarky and always ready to go through who’s who and who’s doing what in cloud technology. He’s the VMware Director of Ecosystem for Cloud Foundry and they’re damn lucky to have this guy!
  • Brian McClain @brianmmcclain – When I was originally writing Brian’s name out, I mispelled it “brain” and almost just left it this way. Brian is all over the Cloud Foundry realm working with BOSH, pushing forward with Cloud Foundry in an enterprise environment, and generally always ready to dive into the tech heavy deep end. Always great chatting with Brian about the details and whatever random code adventures come up!

…and there were dozens of others I got to catch up with. Mark Kropf, Ken Robertson, Daine Mueller, Jeremy Voorhis and almost got to catch up with Derek Collison too. Well, there’s always the next trip to San Francisco! If you’re into the Cloud Foundry space, into PaaS technologies, or just interested definitely reach out, follow these guys on twitter, and make an effort to meet them.

VMware’s VMworld Summary

VMworld was good times, for sure. There were the hiccups as I pointed out, but overall a great experience, the organizers did a solid job (still would help if they could crack down on the companies that perpetuate sexism and BS over content on the booth/show floor, but otherwise, kudos on a job well done). It was great catching up with the brain power in the industry and finally meeting many people I’d been wanting to. I even wrote more than a few lines of code and tested out a few deployment ideas based on the conversations. This, in the end, is exactly what the conference is truly about.  Cheers!

Re: Cloudcamp Seattle

Summary Statement:  CloudCamp rocked!  I got to meet a lot of smart people and have a lot of smart conversations!

Ok, so I probably shouldn’t write the summary statement first, but I’m not one for standard operating procedure.  But I digress, I’ll dive straight into the cloud topics and the event itself.

The event kicked off with an introduction and lighting talks by Tony Cowan, Mithun Dhar, Steve Riley, John Janakiraman, Margaret Dawson, and Patrick Escarcega.  Margaret and Steve really stood out to me in their talks, I’ll be keeping an eye on any future speaking engagements they may have.

One of the quotes that led off CloudCamp during the lightning talks was, “If you’re still talking about if the cloud is secure…” you’re already behind, out of touch, missing the reality of it, or simply not understanding the technology.  After further conversation though, it really boils down to the most common excuse.  The statement “the cloud isn’t secure enough” translates to “I’ve got my fingers in my ears and am not listening to your cloud talk”.

Margaret Dawson from Hubspan really took a great stance with her lightning talk.  The talk was titled “To Cloud or Not To Cloud” with “Don’t buy the cloud, buy a solution” as the summarized idea.  The other thing that she mentioned during her talk was she likes adding “AASes” to cloud computing, such as “BPaaS”.  I’ll admit I laughed guiltily along with a few dozen others and forgot to note what BPaaS stands for.  Whoops!  🙂

An attempt at creating a generalized definition of cloud computing was also made.  It was stated that we can, as a community, agree on the following definitions of cloud computing.  The definition involved three parts:

  • Cloud computing is on demand.
  • Cloud computing can be turned off or on as needed.
  • Cloud computing can autoscale without issue to handle peaks and lulls in demand.

Another funny statement came from Dave Neilsen (@daveneilsen), CloudCamp Organizer, “I agree, the cloud isn’t right for everyone” to which someone in the crowd jokingly hollered back “You’re Fired!”  The energy in the audience and each of the sessions was great!

After the lightning talks Dave Neilsen led the conference with a cloud panel to field some questions.  A few topics related to this wikileaks thing 😛 came up along with some others.  I tired diligently to take good notes during this time, but it was a bit fast paced and I left the note taking to be more involved in listening.

These activities kicked off the overall event, which then led into everyone breaking out to different sessions depending on topics created by the attendees.  The sessions included (and I may have missed one or two);

  • Open Source Software in the Cloud
  • Best Practices for Low Latency
  • Intro to Cloud Computing + Windows Azure
  • How does a traditional Microsoft Stack fit in Amazon Web Services (AWS)
  • Google Cloud Services
  • What are your personal projects?

As another aspect of this review I wanted to pull in a few tweets that mentioned or had something useful in relation to the #cloudcamp + #seattle hashtags from last night.

…with that, my cloudcamp review is fini.  Hope to see everyone at the next Seattle Cloud Event!