February 4, 2012

Between a Rock & OSPFv3 : My Cisco CCNP Test

Cisco Systems Logo

will make your head hurt

Hard to believe but I have been a CCNA for almost three years now. October is the three year anniversary which also makes it the month my CCNA expires. I had planned on moving on to my CCNP tests well before the three year deadline but I got distracted by becoming a manager, having two more kids, and fall head over heels into virtualization with VMware.

Even with all the distractions I still studied when I could. The plan was to take the tests one by one and whittle them down. A new problem arose when Cisco decided to update the tests. They put a firm July, 31st 2010 deadline on the tests I had been studying for.

So now I had two deadlines. I had one deadline for having to start all over (October) and another one to get at least the two big tests or the bigger composite test out of the way.

Well, time has a way of sneaking up on you and in the beginning of this month I realized I had 31 days to pass either both Building Scalable Cisco Internetworks (BSCI) and Building Cisco Managed Switched Networks (BCMSN) tests or risk it all by taking the composite test which combines both. On top of this I was booked for at least two weeks of customer calls and side projects for my team.

About two weeks before the deadline I booked the test. July 31st @ 11:00am. Only one shot because by the time I walked out, the test would be retired.

I locked myself in my office that whole week beforehand. And with a steady supply of coffee, Reese’s pieces, Dr. Pepper, bottle of water, and stress I proceeded to find everything I didn’t know and beat it into my head.

I used a combination of Cisco official material, a TON of the Cisco configuration guides, and a big GNS3 setup on my workstation. I did everything: OSPF, IS-IS, EIGRP, BGP, IGMP, PIM DM/SM/DM&SM, etc, etc. I forced myself to sit for hours and build an entire set of autonomous networks and then integrate them without looking at the book. If I did have to look at a guide or book, I would do it again until I didn’t. I focused mainly on the big routing protocols that I don’t touch on a day to day basis.

I did this for at least twelve hours a day that week. No video games, no beer, no fun, and not much family time. Brutal but I couldn’t risk missing the test on Saturday.

So the test day came. I had gone to bed at 2:00am and woke up at 7:00am to start reviewing OSPFv3 and IPv6 stuff before the test. When the time came I drove down and lined up along with about seven or eight other Cisco procrastinators. It took 30 minutes before my testing workstation would work and about 11:30am I got started.

I have taken some hard tests before. This one was no joke. They threw stuff at me I didn’t expect would be as big a part. The questions were rough and many require that intimate knowledge you only get by doing. By far my lab work was answering most of the questions for me.

After waiting for eight long minutes the testing machine informed me that I had passed. I almost dropped out of my chair. While I was sitting there two other exam takers had finished and from their frustrated curses and storming out I was sure my fate was the same.

The surprising thing is, I did much better on the stuff I had not used. I actually got dinged on some things I know and have done, i.e.VLAN hopping, QoS tagging, etc. I actually scored 100% on several categories including BGP, OSPF, and ISIS.

I am still not officially a CCNP yet. I have to take the TSHOOT exam which I am much more relaxed about. I have however held off the Cisco expiration monster for another three years from my precious CCNA :)

My next goal after TSHOOT? Don’t know 100%… I need to upgrade my MCSE2k3, start my VCDX, continue my EMC path, and start my RHCE path. Good to have goals I guess… But first, maybe another swim in the pool with the kids…

.nick

Cisco Live 2010 : It’s all about the Milk & Cookies

DAVOS/SWITZERLAND, 30JAN10 - John T. Chambers,...

Watching John Chambers, CEO of Cisco, give the keynote presentation today at Cisco Live 2010 I was struck by two important things:

  1. The focus on changing the way the consumer / business users utilizes technology
  2. The strong emphasis on the demand for a new model for business operations.

Both of these appear on the surface to be great marketing statements. But, what makes these different is the timing with the evolution of technology today.

I think the value proposition of the video on every business/consumer device is obvious. I know the Cisco Cius brings the capability to change the way interactions occur and collaberation begins. But, what affected me most was a simple statement that Mr. Chambers made:

“Today, change starts from the consumer and moves to the datacenter”

It just clicked for me with this statement. The drive for the private cloud, for infrastructure that is flexible, agile, and easily consumable is based on demand. It isn’t based on just the energy savings, cost efficiency, or enabling of new technology.

The consumers want more. They want their milk with their cookies. They want to do things quickly with lots of choice and a multitude of interaction. This trend is obvious with devices like iPhones, iPads, Flip Video, even mobile hotspots like Sprint Overdrive.

And because the consumers want more and the competition to fill that need accelerates; business development is demanding more from the way it interfaces with technology. The point being, that the acceleration of technology is imposing an demand on the way business is done today.

John Chambers illustrated this by pointing out the massive changes Cisco has done itself to the way it does business. The amount of patents, new products, and different markets Cisco is participating in is incredible. Their success is strongly tied to the speed with which they deliver new technology and business development.

The big two pillars that were built for this were Operational Excellence and Innovation. And John made strong statements around the VCE coalition (VMware, Cisco, EMC) and how important virtualization implementation from the consumer to the datacenter has become.

The idea of a business model where technology is a consumable that is distributed, flexible; and most importantly fast to deliver, is compelling. Another powerful statement was that the greatest obstacles are the culture and process and not the technology architecture itself. The strong focus is on modernizing the business architecture to be able to fully utilize the new technology innovations around the private cloud.

In the end, demand for interaction in our hands and between each other has created the demand for collaboration in the datacenter.

Having seen the focus at EMCWorld 2010 and now the strong alignment at Cisco Live 2010 I am excited to see what lays in store for VMworld 2010.

Opinions? Questions? Recipes for success? Feel free to comment below.

.nick

 

EMC Certification : My Experience

Yesterday I officially passed my first EMC certification test. I am now a full fledged EMCPA! So I know, this isn’t the highest-level and I am not going to impress the ladies down at the civic center. But, this is the first *storage* certificate for me and I am happier than a tornado in a trailer park.

I am working towards the Technical Architect track and so this test (E20-001) was the first step. I went through the Web Classroom training which was good. But the real secret is studying the ISM book (Amazon link).

I really enjoyed the material on fibre-channel protocol and the in-depth work calculating IOPs/capacity. I ended up making a huge Excel spreadsheet so I could play with the formulas.

The test was challenging. Some of the questions were not in the book or Web training and instead required some careful thought. Knowing your data replication methods and SAN topologies (even FC-AL) is extremely important.

I take tests more to help advance my knowledge (forced studying goals) than to get a certificate. I think EMC certification tracks will definitely add value to you as an individual. The track I am on is for employee/partners only. But they have a multitude of tracks available for customers also.

Take a look at their certification framework here.

So what is next for me? Well my CCNA is expiring in October, so I am going to focus on the CCNP composite test next. I will be using a combination of Boson NetSim and Train Signal material.

.nick

Look I’m A Tool! : vSphere Session Monitor 1.0

Patio hacking

(version 2.0 is now released! Go here)

So eight days ago I decided I was going to give another try to write an application that uses the VMware vSphere Web SDK. I had attempted this at least a year ago and never finished anything because of *insert excuse here*.

I always have ideas for cool (at least in my mind) tools swirling in my head. Even though I am a data center quadruple threat kind of guy (Microsoft, VMware, Cisco, and EMC), I like to do scripting and development to sharpen my mind. I always thought I was going to be a developer in college and love to turn ideas into reality.

So last week I fired up Visual Studio 2008 and started spending some nights coding. Along the way I found out some interesting things, caused a great blog post, and had a blast learning more about vSphere. I have a tendency to roll my challenges together and so decided to make this slick as possible including:

  • Making it a Tray Icon (A must for this app)
  • Doing all forms in WPF which I have never worked with before (XAML crash course)
  • Making all background processes multithreaded and eliminating the need for timers
  • Learning how to effectively use PropertyCollector.WaitForUpdates method to touch vCenter as little as possible
  • Building a proper MSI setup

On top of all this I went and wrote all the operations, connections, and credential pieces into classes for re-usability.  I am a bit of a perfectionist and probably went WAY overboard without much gain.

So without further self flagellation and glorification I present the: [drain file 2 url vSphere Session Monitor]

 

This little bad boy right here’s only purpose is to keep you informed of who is on your vCenter server.
Let me walk you through the steps to try it out.

Download the x86 installer from here: [drain file 2 url vSphere Session Monitor]

I do not endorse using this tool in production. Please test in a lab environment until you (if ever!) are comfortable using elsewhere.

Run the installer on the workstation of your choice. You must have .NET 3.5 installed. Also this workstation must have the ability to hit the vCenter Web SDK which is https://*your vCenter Server/sdk

After the application is installed, launch it from your new desktop shortcut or Program Files menu.

The application will prompt you for your vCenter fully qualified domain name (FQDN):

It will then prompt for you vCenter credentials:

If you entered everything correctly the tool will open up the main page:

And down in your notification tray a little pop-up will list current vCenter sessions:

 

Couple quick UI things to get out of the way:

  • To close the application, click the “X” in the main window.
  • Minimizing will hide the form. You can bring it back or hide it with a left-click on the notification tray icon.
  • If you right-click on the tray icon it will list the current users on the vCenter host.
  • The “Change Credentials” button will allow you to switch username and password. And the ‘Change vCenter Server” will let you change the FQDN you entered.

I bet at this point you are thinking: “Well Nick, that is cool and dandy but I can get that info from my vSphere client! Way to reinvent the wheel…”
Well… now for the best part. This is the real reason I wrote this little app. It all started with my senior engineer, Justin. He had a nasty habit of yelling out “What are you doing?” every time someone did something on a vCenter server. That got me thinking; “It would be cool if something popped up telling Justin someone logged in. And it would be even cooler if you didn’t have to have the vSphere Client running to do it.”
So with the vSphere Session Manager, the instant someone logs into your vSphere vCenter, you see this:

Not super fancy but if you want to know when someone is playing in your pool (like Justin) this will let you know.
Here are couple features I was going to add but will (maybe) later:

  • Storing of credentials (encrypted) – not too difficult, a little RSA key generation, mix in some environment specific salt, and dehydrate a class to XML.
  • Allow multiple vCenter hosts – You can open multiple monitors to watch each vCenter for now

So that is a few hours of my life dedicated to seeing how easy it is to utilize the VMware vSphere Web SDK. And from a datacenter guy I can definitely say that the documentation, community (thanks @sjin2008), and SDK made this a pretty easy task. I highly recommend everyone take your cool tool ideas and try something out too.

Do me a favor and leave comments with feedback/questions. Thanks!

 

.nick

Virtualization & Abstraction : The New Paradigm

This post is inspired by this outstanding post by Chuck Hollis (@chuckhollis) and this one by Chad Sakac (@sakacc).

Chuck mentions my favorite way to summarize what virtualization encompasses: “abstracts logical from physical”. What makes abstraction critical is that it breaks historical dependencies that develop as technologies are built over time. I have said this phrase hundreds of times over the last four years of my career and in my mind it translates into an incredible paradigm shift in data center approach over the next ten years.

A good example of this is the push to service-oriented architecture design principles in the enterprise application space over the last decade. The whole gist was to enable business functionality to achieve independence and agility by breaking hard coded dependencies to platforms and systems. A loosely-integrated system can provide value to multiple business units by removing the overhead of inherited designs. Any ability to move quickly to market with business features brings competitive advantage. In simple terms, removing boundaries opens more opportunities.

Virtualization is the same approach with the end goal of the four food groups (CPU, memory, storage, networking) becoming commodities that can used as needed and where needed.  The status quo has been large CapEx investments in infrastructure where efficiency was limited by the boundaries of the physical needs and the return on labor cost to optimize. Even with a large team invested in tuning and sizing, the organic growth of the business can waste resources quickly as usage patterns change and new infrastructure is purchased.

The virtualization of hardware resources, effectively coupled with the ability to treat hardware as single pools, removes that physical boundary. This allows single investment in infrastructure resources to be carved up for multiple needs. It also allows the refactoring and control of these resources without the large operational cost and risk that physical resources historically bring. This abstraction means that a single server is no more special to an application than another; which means I can move, change, add, remove, or make a host of operational changes without risk. The virtual machine is coupled with the service that needs it and therefore applies fewer boundaries.

With the release of VMware’s vSphere product, critical aspects have been added. This includes the extending of network control to the virtual machine with Cisco’s Nexus 1000v. Now, both management and security of this layer can follow standard process of governance and operational models.

And now with EMC’s new FAST and the deployment models around the V-Max unit, the approach to storage is following the same design principles. If my data workloads are no longer bound to physical boundaries then I can deploy, react, and manage with less risk and more efficiency. I can focus higher expense storage at specific business needs when they need them and maintain cost effective use with lower cost storage on workloads that are diminishing. This translates directly into higher efficiency and lower total cost. Better yet, with approaches like NPIV, virtual machines can be matched to security, quality of service, and metrics. These features extend management, service-levels, and security on the storage layer to the virtual machine as well. Storage abstraction is the last great milestone to the virtual machine becoming the foundation of a data center. EMC is making a huge investment in both technology and people to make this a reality.

Despite the “coolness” factor in abstraction, the one important benefit is simple. Virtualization of servers, storage, networking, and ultimately business functionality brings efficiency. With vSphere I can take a set of CapEx impacting infrastructure and achieve higher utilization, less operational management, and be faster to market with features. To the business, this translates into a competitive advantage that can be measured. Because this hardware can be incrementally grown (EMC V-Max, vSphere), I can horizontally scale with growth demands and bring agility to change as well. And with new models like the VCE vBlocks even the large and complex standup cost in time/effort can be drastically reduced.

In the end only the goal of making people and business more successful is important. The abstraction that virtualization brings opens possibilities where they have not existed before.

As always, comments and criticism  are welcomed.

Reblog this post [with Zemanta]

Optimization vs. Scaling: How virtualization affects the scorecard

A typical server "rack", commonly se...
Image via Wikipedia

Many times I have seen situations where an application or process grows incrementally to a point where it is no longer able to meet it’s SLAs (whether official or imaginary). The cause of this can vary but is usually:

  • Overworked/Unbalanced teams -  Too much effort dedicated to new feature-add and not enough to technical debt
  • Poorly planned systems – Designs for immediate need without taking into account needs for things like instantiation or scaling of decoupled components.
  • Poor maintenance/understanding – Lack of knowledge or effort to tune application/process to more effectively use resources. This can exist in both the application and infrastructure groups.

Usually the performance degradation is known early on but accepted because the business users are not making a big enough stink; or at least not big enough to reduce the drive for new features. In addition, lack of monitoring and baselining of application performance is a critical problem. It eliminates the ability to effectively plan for growth and manage team resources.

Eventually the impact reaches a point where someone significant (business executive) resets priorities to fix it (technical debt due date). Many options will be evaluated immediately, from trying to buy time by tuning components to finding misconfigurations. However if no easy answers exist, it usually comes down to two options.

  • Optimize the application/process (Fix the code)
  • Scale the application/process with faster hardware (Throw metal at it)

Both of these options impact the same core factors: time and money. Depending on what time of the year it is, what the next feature would be, and what staffing is available, the choice can go either way.

Optimization has benefits in that better running code has long-term cost effectiveness built-in. But, optimization can have a reduced rate of return when repeatedly used without a complete architectural rewrite. Coupled with this, optimization often consumes productivity from the same teams that were unable to spend cycles maintaining it the first place. Also, the cost of optimizing is can be much greater than the labor involved. It includes what a possible delay on new features does to the firms overall revenue and commitments.

Scaling benefits from not directly affecting the product teams and being more focused on configuration and infrastructure resources. Scaling is also usually easier to estimate and deliver being that both the current application design and hardware resources are usually known. Where scaling can lose ground is in risk and cost. Anytime a change is made, a risk is taken. Moving a application from a set of hardware resources whether server, SAN, network, can end up being more disasterous for the business than the performance issue itself. Failues in configuration, QA testing, implementation, and planning are a dime a dozen. Cost can also be a problem when dealing with a fixed budget. The next incremental step to scale might be a big pill to swallow given the wiggle room available. Along with hardware itself, cost can be found in long-term commitments to power, space, cooling, and staffing to maintain ever increasing data centers.

Another factor is what I call the optimization-bias. If scaling will cause a IT leader to both beg for more money and possibly incur the risk of an outage, she/he may decide to trust in the application team instead. It is better to risk schedule under the covers than business ops and budget above the table.

This is where Virtualization can change the balance of this decision by improving the agility, cost-effectiveness, and reduces the risk of migration for scaling significantly. I see Virtualization as both a layer and a toolkit. It directly changes the balance of choices in the following ways:

  • Reduced configuration, schedule impact, and risk in migration
    • With an application that resides on virtual machine(s) the migration to new servers, SAN, or networking can be performed without a single change to the configuration of the application itself. Technologies like VMware‘s VMotion, Storage VMotion, and partnerships with major storage vendors such as EMC, NetApp, and 3PAR allow the application to truly be treated as an object. This eliminates the need to build platforms in parallel at anything above the hypervisor layer. This can be made even simpler with newer stateless platforms such as Unified Computing System (UCS) from Cisco which can reduce the hypervisor provisioning dramatically. In the end this can remove the need for QA resources and shorten implementation schedules. In some small cases migration can even occur while the application is under load.
  • Better efficiency and life-cycle management
    • Server consolidation has been a foundation of the VMware platform for a long time. When an application is primarily vertically scalable the efficiency of virtualization becomes a part of the life-cycle. An example is a database that must reside on a single server (not easily decoupled). In a physical migration, after the new server has inherited the application, the old server is placed into an equipment stack. Utilizing the old server for another existing application means starting all over again with another migration with the same risks. More often then not, this resource sits idle until it depreciates off the books or is needed in a lab.
    • In a virtual migration the new server would be added to an existing or new VMware cluster. When the application is moved to the new server the old server is still present and available for use. In fact with technologies like VMware DRS, this server would be immediately used for existing application loads. The available resource are equal for both physical and virtual models. However, the virtual model abstracts resources as a pool. This promotes efficiency in the long run and possibly significantly reduces hardware resource management and ultimately data center cost.

The advantages of virtualizing mean scaling as an option gains ground against optimization. Though every situation is different, the added sophistication and agility of virtualization provide any IT leader with possibilities they may not have had.

By far my favorite part of Virtualization is what it can do when coupled with a very well designed application platform. By designing application platforms with the intention of being decoupled and horizontally scalable, Virtualization can be used most effectively. Single components of the system can be quickly migrated to new hardware as needed, loads can be dynamically managed by VMware DRS, platforms can be quickly instantiated for new customers, and resources can be leveraged across physical locations with reduced cost. The major project of my career, of which I am working on right now, is this goal.

As always please comment if you agree/disagree.

Reblog this post [with Zemanta]