Backgroound Image

I Passed the Cisco DevNet Associate exam and Joined DevNet Class of 2020!

 I’m excited to announce that I passed the DevNet Associate (200-901) exam, and with that I’ve joined the DevNet Class of 2020!

 To start with, for those that don’t know, DevNet is the Cisco Developer Network, focused around developing solutions in the network space.  It focuses heavily on programability and automation of numerous Cisco products.  The DevNet Class of 2020 includes everyone that passes a DevNet exam during the inaugural year of the program.  Originally, the program was slated to end December 31st of 2020, but it was extended to February 24th, 2021.

I found this exam to be simultaneously one of the most challenging and fun certifications I’ve attempted.  With a near 20-year career in IT I’ve never really done much programming.  I’ve made a few HTML sites over the years, and the odd batch or PowerShells script, but never anything more than that.  In many ways this exam broke into a lot of new areas for me.  For network engineers looking to get into automation I thought this was a great way to start, and for people new to IT this is a great way to get into the automation and programmability mindset early on.

How I prepared

First things first.  Learning Python.  Coming from the network background this took some work, but it really wasn’t too bad.  I started with some YouTube videos and books.  One site specifically that I used a lot was automatetheboringstuff.com, as well as the YouTube videos from the same author.

I found the repetition of the labs got boring after a while, so I started to look for beginner projects.  One project that I worked with was a Python clone of the classic Pong game.  However, instead of just duplicating the code I worked on adding additional functionality.  Players could enter their names, and select their paddle colors, as well as set the game speed and score limit.  I added some input validation to make sure the entries didn’t cause the game to crash.  For me, it was important to actually work with the code and play with the options instead of simply copying what someone else said.

Once I felt I had a decent handle on Python I started reading the DEVASC 200-901 Official Cert Guide, which of course hit a lot of the same Python info I was working with already, but added depth.  The book goes into a lot of other things like Git and API configs.  Which, of course, meant getting Git set up and testing committing, branching, and merging code.

The Cisco DevNet site has access to sandboxes that can be used to test out API calls.  Since I don’t have DNA Center, ACI, Meraki, Webex, FMC, etc. all running in my basement it was really good to have access to the sandbox.  I worked through learning the API methods via curl, Postman, Python, and SDK.  This meant a lot of repetition.  The authorization methods between the Cisco platforms changes, and that means the way you interact with the API needs to change.

Looking back, I wish that I had merged the Git exercises more with the API work.  I could have built out a repository of all the tests I was working with.  So, as a recommendation, use Git early, and get in the habit of using it.

I also watched the Pluralsight videos by Nick Russo.  Personally, I found those difficult to follow.  Coming in to programming fresh, there was a lot that I felt was skimmed.  This meant I spent a lot of time pausing videos to duplicate scripts.  There’s a bunch of files attached to the courses, but I felt it was important to actually write the code.

In addition to Python, Git, and APIs, you also need to know the different data formats.  The main ones would be YAML, JSON, and XML.  Again, not coming from a programming background this was another stumbling block for me.  The different sources I used all covered this, but it took some work to really understand it.  It came down to just going over the formatting and syntax a few times until it really made sense.

If that wasn’t enough to learn, there’s also the automation frameworks.  Things like NETCONF, RESTCONF, YANG, Ansible, Puppet, Chef, NSO, etc.  More to learn.  More terms.  More syntax.

But wait, there’s more! Docker and VIRL/CML.  Learning about the tools to build environments programmatically, and how to make them work.  Yet more terms and syntax.

The exam also covers the software design methodologies.  Things like Agile, Lean, Waterfall, etc.  The DevOps ideas.  Testing methods.  Luckily, no syntax, but more terms.

The final topics were (for me) the easiest.  Basic network security and network operations.  Things like attack types and remediation mechanisms, subnetting, and other layer 2/3 functionality.  Since this is stuff I’ve spend years working with these topics were a breeze.  However, for someone new to network operations the process of learning the layer 2 and layer 3 configuration can be a bit more complicated.  Luckily, this isn’t the CCNA.  You don’t need to configure STP or OSPF.  You just need to know what the terms mean.  If you can articulate what a switch and router do, what the OSI model is, and you understand how subnets work then you should be OK.

Thoughts on the exam

As I’d mentioned at the beginning, I found this exam to be both fun and challenging.  There were questions where I stared at the screen slack-jawed trying to understand what was being asked.  Often, those questions were ones I was overthinking, and after a brief befuddlement I figured it out.  This isn’t because the questions were poorly worded.  In fact, it was the opposite.  I thought the questions were well written, but since some of the concepts are still new to me it took a moment to really wrap my head around it.
I think the exam was fair, and it asked good questions.  I didn’t feel like there were any trick questions, or things that were intentionally misleading.  There were definitely some challenging questions, but they seemed fair and I felt like I should have known the answers.  Without giving anything away, I’ll just say that since this is a technical exam knowing the terms, acronyms, and syntax for all of the topics is important.

Final notes

I want to reiterate that I thought this was a great exam, with really good content.  Whether we network engineers want it or not, network programmability is going to be a thing.  Think back to the people that wanted to maintain a PBX instead of moving to VoIP, or the adoption of virtualization.  These shifts take time, but they are happening.  As difficult as some of this was for me to learn, I’m glad I did.  Comparing this to many of my other certifications, this one really feels like there’s a ton of value and I gained some useful skills preparing for it.

vSphere Lab Build Out – The ESXi Server Deployment

Finally, after getting the domain controller and client built now it’s on to actually deploying ESXi!

You can download eval copies of VMware software directly from VMware (after creating an account) here: https://my.vmware.com/web/vmware/downloads/info/slug/datacenter_cloud_infrastructure/vmware_vsphere/7_0

You can also register for the VMware User Group’s VMUG Advatage program and get access to 365-day trial licenses.  More info on the VMUG Advantage program can be found here: https://www.vmug.com/membership/vmug-advantage-membership

After getting the ESXi ISO downloaded we can start the VM builds

VM Creation

  1. In VMware Workstation press CTRL+N to open the New Virtual Machine Wizard, and make sure Typical is selected, then click Next
  2. Select the ISO that was downloaded and click Next
    1. I’m still using Workstation 15.5, and installing ESXi 7.0, so it doesn’t autodetect the OS
  3. Select VMware ESX, and in the drop down select VMware ESXi 6.x, then click Next
  4. Name the VM, and change the location (if needed) then click Next
  5. The default storage of 40GB is more than enough.  The hosts will be configured to connect to an iSCSI target, so leave the default and click Next.
  6. Click Customize Hardware
  7. Configure the hardware.  
    1. Since these will be the virtualization hosts allocate as much CPU and RAM as you can. 
    2. When setting the CPU count verify the box is checked for Virtualize Intel VT-x/EPT or AMD-V/RVI
    3. Set the NIC to Bridged
    4. Click Close
  8. Click Finish

ESX installation

  1. Power on the VM
  2. The VM should automatically boot from the ISO, and it will take a moment to load everything
  3. When prompted to start the install press Enter to continue.
  4. Make sure to read the EULA in its entirety, and if you accept it press F11 to move on.
  5. By default the hard drive created with the VM will be present and selected.  Press Enter again to continue.
  6. Select the correct keyboard layout, and again press Enter to continue.
  7. Type in a password, and then press Tab to re-enter the password to confirm it.  Then press Enter to continue.
  8. Finally, press F11 to confirm the configuration and begin the installation.
  9. The install is fairly quick.  When it is done press Enter to reboot.
  10. It will take a little while for the VM to reboot and come back up.
Initial ESX configuration
  1. At the main screen press F2 to Customize System.
  2. Enter the credentials and press Enter 
    1. Remember, the username is: root
    2. The password is what was entered during the initial set up
  3. In the System Customization window use the Down Arrow to highlight (or is it blacklight? lowlight?) Configure Management Network and press Enter.
  4. Select IPv4 Configuration and press Enter
  5. Select DNS Configuration and press Enter to open the DNS options.
  6. Use the Down Arrow to highlight “Use the following DNS Server…” and press Space to select that, then use the Down Arrow to enter the DNS server address information.  Use the IP of the DNS server that was created for the lab.  Also, type in the the FQDN that matches the DNS record created.  Press Enter to submit these changes.
  7. Again, use the down arrow to select Custom DNS Suffixes (I’m not adding a screenshot since there’s already two for the same page)
  8. Enter the lab domain name and press Enter.
  9. Press Escape to exit the configuration menu, then press Y to accept the changes and restart the management network.
  10. (Optional) Test the management network to verify things work.  It should return OK if everything works as expected.
This completes the configuration of the first ESXi host.  This process can be repeated to create a second host, which will allow the creation of an HA cluster.

vSphere Lab Build Out – The Domain Controller Configuration

For the Domain Controller build the entire process is much easier and quicker when working from PowerShell instead of the GUI.  It also makes it more repeatable, which is awesome for labs.

The first steps are the basic config of the server.  Below is each command needed, with the variables in red.  Change what you need, then paste the commands into PowerShell.

Set the computer name: 

Rename-Computer LabDC

Enable Remote Desktop access (optional)

Enable-NetFirewallRule -DisplayGroup “Remote Desktop”

Set-ItemProperty -Path ‘HKLM:SystemCurrentControlSetControlTerminal Server’ -name “fDenyTSConnections” -value 0 

Disable DHCP, set the IP address, DNS, and default route:

Set-NetIPInterface -InterfaceAlias Ethernet0 -AddressFamily IPv4 -Dhcp Disabled 

New-NetIPAddress -InterfaceAlias Ethernet0 -AddressFamily IPv4 -IPAddress 192.168.1.210 -PrefixLength 24 

Set-DnsClientServerAddress -InterfaceAlias Ethernet0 -AddressFamily IPv4 -ServerAddresses 8.8.8.8 

New-NetRoute -AddressFamily IPv4 -InterfaceAlias Ethernet0 -DestinationPrefix 0.0.0.0/0 -NextHop 192.168.1.1

Install the AD, DNS, iSCSI, and Remote Server Admin Tools.
Install-WindowsFeature -name AD-Domain-Services,DNS,FS-iSCSITarget-Server,RSAT-ADDS

Reboot to apply the name change:

shutdown -r -t 0

Log into the server again, and create the domain:

Install-ADDSForest -DomainName Lab.local -InstallDNS

When prompted for the AD Restore Mode password enter the password, and then confirm it.  After that, accept the prompt by pressing the “A” key and hitting Enter.  Wait, while the new domain is configured.  When the process completes the server will automatically reboot.

The final task will be getting DNS configured with a reverse DNS zone, and records created for the various devices that will be deployed.

Add-DnsServerPrimaryZone -NetworkID “192.168.1.0/24” -ReplicationScope “Forest” 

Add-DnsServerResourceRecordA -Name “ESX1” -ZoneName “Lab.local” -IPv4Address “192.168.1.211” -CreatePtr 

Add-DnsServerResourceRecordA -Name “ESX2” -ZoneName “Lab.local” -IPv4Address “192.168.1.212” -CreatePtr 

Add-DnsServerResourceRecordA -Name “vCenter” -ZoneName “Lab.local” -IPv4Address “192.168.1.213” -CreatePtr 

Add-DnsServerResourceRecordA -Name “vRO” -ZoneName “Lab.local” -IPv4Address “192.168.1.214” -CreatePtr 

Add-DnsServerResourceRecordA -Name “vLCM” -ZoneName “Lab.local” -IPv4Address “192.168.1.215” -CreatePtr

That concludes the initial DC config for the environment.

vSphere Lab Build Out – The Client PC Peployment and Config

In the VMware lab it’s nice to have a client OS to work from.  This client can be joined to the domain, and pointed to the lab DNS, which streamlines some of the config tasks. 

Get the Win10 ISO

This process is a little more involved, and it requires the use of the Media Creation Tool.  You can get that here: https://www.microsoft.com/en-us/software-download/windows10

  1. After the download completes run the tool
  2. Click Accept (after you read the full terms and conditions of course)
  3. Select “Create installation media…” and click Next
  4. Verify the options say English, Windows 10, and 64-bit
    1. If not, uncheck the box and select those options and click Next
    2. If so, click Next
  5. Select ISO file and click Next
  6. Select your download location and click Save.
The downloads might take some time to complete.

Create the Client VM

  1. In VMware Workstation press CTRL+N to open the New Virtual Machine Wizard, and make sure Typical is selected, then click Next
  2. Select the option for Installer Disc Image File, and browse to the location you downloaded the Windows 10 ISO to then click Next
  3. Enter the name for the client and select the location
  4. Use the default hard drive size of 60GB (another drive will be added later for the iSCSI target storage), and click Next
  5. Click Customize Hardware
  6. Adjust the CPU and RAM as needed for your environment (2 vCPUs 4-8GB RAM would be recommended), and change the Network Adapter from NAT to Bridged
  7. Click close, verify the box is checked for “Power on this virtual machine after creation” and click finish.

Deploy the Client OS

NOTE: While in the VM you will need to press Ctrl+Alt to release the cursor to get to your desktop
  1. While the VM is booting you might see a prompt to press a key to boot from CD.  If that happens click into the window and press a key.
  2. Select the language, and keyboard settings
  3. Click Install Now
  4. At the Activate Windows screen click “I don’t have a product key”
  5. Select Windows 10 Pro and click Next
  6. Read through all of the licenses terms, and if you accept the terms check the box to accept them and click Next
  7. Select the Custom install option
  8. By default it should already select Drive 0, which is the 60GB drive initially created.  Click next.  The OS install will start, so just let that process run.

OS Initial Config

Windows 10 has a number of steps to go through to get the OS configured before actually loading to a desktop.
  1. Select your regions and Click Yes
  2. Select your keyboard layout
  3. Skip adding the additional keyboard
  4. Wait a moment for it to progress to the account creation screen, then select “Set up for personal use” and click Next
  5. Microsoft is going to try to link to an online account, but since this is for a temporary lab PC click on “Offline account” in the bottom left.
  6. Microsoft really tries to push the online account, so again look in the bottom left corner and select “Limited experience”
  7. Enter a username and click Next
  8. Create a password and click Next
    1. The next screen will ask to confirm the password.  Reenter the password and click Next
  9. When prompted for the three security questions I just select the first three options and enter random characters.  This is lab, and if I happen to forget the password I can easily recreate the VM.  Click Next
    1. Repeat the process for the other two questions.
  10. For the privacy settings this really doesn’t matter, as it’s a lab machine that won’t exist for long.  Everything can be left enabled by default, or it can be disabled.  After applying the settings click Accept.
  11. The install will prompt to enable activity history.  Again, as a lab machine this isn’t needed, so select No.
  12. Cortana… Microsoft really wants people to enable all their stuff.  Click “Not now” to move on.
  13. Success! The post-install prompts are done.  Now wait for the configuration to complete.

Client OS config

To configure the OS there’s only three tasks that are going to be performed.  
  • Install VMware Tools
  • Configure DNS
  • Join the domain

Install VMware Tools

    1. Log into the VM using the password set previously
    2. Right click on the VM in the Library an select Install VMware Tools
    3. Navigate to the D: drive and double click it.  That should kick off the Autorun for the installer.
    4. Follow the defaults for the install.  Next > Next > Install > Finish and then click Yes when prompted for a reboot.
Configure DNS
  1. Open Powershell as admin
    1. Press the Windows key and type powershell
    2. Press Crtl+Shift+Enter to run as admin
  2. Run this command (replace the IP in red if needed):
Set-DnsClientServerAddress -InterfaceAlias Ethernet0 -ServerAddresses 192.168.1.210

Join the domain
  1. Open Powershell as admin
    1. Press the Windows key and type powershell
    2. Press Crtl+Shift+Enter to run as admin
  2. Run this command (replace the IP in red if needed), and enter the password when prompted
Add-Computer -Credential labadministrator -DomainName lab.local -Force -Restart

This completed the Client PC configuration for the lab.

vSphere Lab Build Out – The Domain Controller Deployment

When building out a lab the first thing I do is build out a Domain Controller and DNS server. I can then use AD for credential management, and the DNS functionality is helpful as well.  I also use that server to create an iSCSI target for my hosts.

1. Virtual Environment

The first step is to have your virtualization environment ready to go.  It’s easy enough to next-next-finish your way through the VMware Workstation install, so I won’t detail out those steps.

2. Download Windows ISOs

You can download the Server 2019 ISO here: https://www.microsoft.com/en-us/evalcenter/evaluate-windows-server-2019

Select ISO, fill out the info required, and then hit continue.  Select your language, and then start the download.

3. Create the Lab Domain Controller VM

  1. In VMware Workstation press CTRL+N to open the New Virtual Machine Wizard, and make sure Typical is selected, then click Next
  2. Select the option for Installer Disc Image File, and browse to the location you downloaded the Server 2019 ISO to then click Next
  3. Since this will be using the evaluation license leave the product key blank, enter a name and password, and then click Next.
  4. Accept the prompt about not having a product key
  5. Enter the name and location for the VM, and click Next again
  6. Use the default hard drive size of 60GB (another drive will be added later for the iSCSI target storage), and click Next
  7. Click Customize Hardware…
  8. Set the VM hardware
    1. Set the CPU and RAM to what you’d like.  I used 2 vCPUs and 8GB RAM on my VM.
    2. Change the Network Adapter to Bridged
    3. Click Close
  9. Uncheck the box for Power on this virtual machine after creation and click finish.
  10. Now to add a the hard drive for the iSCSI target and remove the floppy drive.  In the library view right-click on the VM and click Settings
    1. Find the Floppy drive and click Remove (NOTE: If you don’t remove the floppy drive the OS install will encounter an error and fail), then click Add
      1. Select Hard Drive and click Next
      2. Leave the default drive (mine happens to be NVMe) and click Next
      3. Leave the default option to create a new drive and click Next
      4. Enter the size for the drive (I used 750GB) and click Next
      5. Leave the default file name and click Finish
    2. Click OK to finish the hardware changes
  11. Power on the VM

4. Install the OS to the Lab DC

NOTE: While in the VM you will need to press Ctrl+Alt to release the cursor to get to your desktop
  1. While the VM is booting you might see a prompt to press a key to boot from CD.  If that happens click into the window and press a key.
  2. Select the language, and keyboard settings
  3. Click Install Now
  4. When prompted to select the OS choose Windows Server 2019 Datacenter Evaluation (Desktop Experience) because we like graphical interfaces, and click Next
  5. Read through all of the licenses terms, and if you accept the terms check the box to accept them and click Next
  6. Select the Custom install option
  7. Select Drive 0, this should be the 60GB drive, and click Next
  8. Wait for the install to complete.  This might take some time.
  9. When the install is complete it will prompt for a password.  Set that and click Finish.
  10. The last thing to do for the VM deployment is to install VMware Tools.
    1. Log into the VM using the password set previously
    2. Right click on the VM in the Library an select Install VMware Tools
    3. Navigate to the D: drive and double click it.  That should kick off the Autorun for the installer.
    4. Follow the defaults for the install.  Next > Next > Install > Finish and then click Yes when prompted for a reboot.
The DC configuration will be detailed out in another posting in this series.

VMware lab design

 I am going to be building out a lab to test out some automation tools in VMware, so I decided I’d write up a few posts detailing the process.  I’m calling this part Phase 1, where the goal will be to get two ESX hosts, vCenter, and vRealize up and working.  I after that, I need to decide if I’ll go SRM, NSX, Horizon, or start playing the the Tanzu stuff.  For now though, vSphere and vRealize.

I put together a high-level design of what I will be building out:

(Shameless plug for Draw.io.  It’s an awesome tool for creating diagrams!)

I am running VMware workstation on my desktop, so I’ll be running the entire lab within Workstation.  I’ll also point out that there are free eval copies of everything except vRealize Automation.  You can also register for the VMware User Group’s VMUG Advatage program and get access to 365-day trial licenses for everything except vRealize Automation.  More info on the VMUG Advantage program can be found here: https://www.vmug.com/membership/vmug-advantage-membership

My Home Lab

I recently decided to build up a PC for my home lab environment.  I know a lot of people find old rack mount servers that they use as a lab, but I didn’t want to deal with the space, power, or noise of a bunch of old servers.  Instead, I decided to build a desktop PC that could run everything I wanted.  

Here’s a list of my build, and why I selected the parts that I did.  I will point out that pricing and part availability has changed, so your mileage may vary.

1. The CPU 

AMD Ryzen Threadripper 3960X 24-Core ($1,349.99)

I chose this CPU for a few reasons.  First, the new Threadrippers can use up to 256GB RAM, so there’s plenty of room there.  Second, 24 cores.  This thing is fast!!  And third, when comparing against the other Threadripper CPUs this one was the cheapest.  I debated going with the 3970X, but I couldn’t justify the extra cost for it.

2. Motherboard

MSI TRX40 PRO WiFi Motherboard ($389.99)

When I started this build it was near the beginning of the COVID-19 pandemic, so some parts were in short supply.  One of the primary advantages of this board was that it was in stock.  Also, it has 2x PCIe 4.0 M.2 slots, it supports up to 256GB RAM, and it has PCIe 4.0 slots.

In hindsight, I wish I’d spent the extra $50 and went with the MSI TRX40 PRO 10G Motherboard

That’s effectively the same board, but it drops the built-in Wifi in place of a 10GbE NIC.   Since a Wifi6 adapter (if needed) can be picked up for under $50, and a 10GbE NIC is nearly $100 it’s cheaper to just go with the 10G board.  Granted, doing that with both Wifi6 and 10GbE would consume an extra PCI slot.

3. CPU Cooler

Corsair H115i RGB Platinum AIO Liquid CPU Cooler ($169.99)

The Threadripper requires a water cooling solution, and since I didn’t want to mess with building a water cooling rig I went with an All-in-one (AIO) cooler.  First off, it’s imporant to be aware that there’s an H115 Pro and an H115 Platinum.  For the sTRX4 socket you need the Platinum version.  The copper base on the Pro series is too small for the sTRX4 CPUs.  

This cooler has two 140mm fans and a 280mm radiator, which is what fit best with the case I selected.  One important thing to be aware of with this cooler with the MSI motherboard is the USB power connection covers one of the RAM slots when it’s installed.  However, there’s an easy fix for this. 

I got a Cerrxian 9Inch Micro USB Cable which has a low profile 90-degree micro USB connector, and now the cooler is connected and not blocking the RAM slot.  Additionally, I used a CY 50cm 10Pin Motherboard Female Header to Dual USB 2.0 Adapter Cable to connect to the motherboard header.

I can say that this cooler is amazing!  I can run Folding@home and get the CPU up over 90°C and when I stop folding the temp is down to 50°C in seconds.

4. RAM

OLOy DDR4 RAM 128GB (4x32GB) 3000 MHz ($529.99)

The most important thing for me when looking at RAM was getting 32GB DIMMs.  That way I’d be able to get the full 256GB the CPU and motherboard would support.  I ended up with this OLOy RAM because it was cost effective.  There’s options for higher clock speeds, but I’m more concerned with memory capacity than speed.

5. Storage

Seagate Firecuda 520 2TB Performance Internal Solid State Drive SSD PCIe Gen4 X4 NVMe ($397.99 for 2TB, and $252.63 for 1TB)

I ended up going with two of these.  One 2TB drive, and a 1TB drive.  I have my OS and applications on the 1TB drive, and my VMs on the 2TB drive.  These drives are PCIe Gen4 drives, so they are stupidly fast.

6. GPU

XFX Rx 5700 XT Raw II ($379.99)

The GPU market is rapidly changing, but at the time of this build this card was one of the few PCIe 4.0 cards available.  I’m not a big 3D gamer, so I didn’t need the greatest GPU on the market.  This card seemed to be a good balance between cost and performance.

7. Case

CORSAIR CARBIDE SPEC-05 Mid-Tower ($66.23)

I didn’t want to spend a huge amount on one of the fancy RGB cases.  This one has enough room for the water cooler radiator, and room for three 120mm exhaust fans (two top, and one rear).  Coming from a full ATX case I like the smaller size, but I found it a tight fit between the exhaust fans and some of the motherboard connections.

8. Power Supply

EVGA 850 GQ, 80+ GOLD 850W ($169.99)

It’s an 850 Watt modular power supply.  It has two 8-pin CPU connectors.  All in all,  it fits what I needed.

9. Exhaust Fans

When I built this I ended up using a 3-pack of Thermaltake Pure Plus 12 RGB TT Premium Edition 120mm fans.  They work well enough, but since they use the Thermaltake RGB software, and the water cooler uses the Corsair software I wish I would have gone with the Corsair ML120 PRO 120mm fans.  Then they’d all be controlled by the same software.

Accessories:

There were three additional things that I added when I completed this build.  The first was a UPS.  I went with this: APC Sine Wave UPS Battery Backup & Surge Protector (BR1500MS) This unit can support the 850w PSU (and a few other devices) and it has a USB port to trigger a shut down in the event of a power loss.  I’ve had issues in the past with brownouts and in some cases I’ve had components damaged due to power fluctuations, so I’m happy with this.

The second item was an external storage array.  I used to run internal RAID sets, but it was always a pain when a drive failed to find which specific drive had failed, remove it, and RMA it.  So to solve that problem I added a 4-bay NAS, and loaded it with some old drives I had from my old PC.  I selected a 

QNAP TS-453Be-2G-US 4-Bay Professional NAS because it had front-accessible hot-swappable drives, it was expandable, and QNAP has a number of apps that can run natively on the appliance.

One of the apps that I can run on the QNAP is Plex.  Since Windows 10 removed Media Center I needed to find a new way to get my over-the-air TV recordings (Skol Vikings!)  I decided to go with a SiliconDust HDHomeRun HDHR5-2US Connect Duo Dual Tuner, and tie that in with Plex on the QNAP.  

In some upcoming posts I’ll detail out what I’m running in the lab, and how I deployed the different environments.

Starting the CCDE journey

I’ve finally decided to start the trek toward the CCDE.  With the upcoming changes to the CCNA/CCNP/CCIE programs it made the decision easier.  I wasn’t going to finish a CCIE before February, so that route wasn’t an option.

Step 1: Figure out what to study

Cisco has provided a reading list here: https://learningnetwork.cisco.com/docs/DOC-1673

There’s also a learning matrix here: https://learningnetwork.cisco.com/community/certifications/ccde/written_exam/study-material

I went through both and compiled a book list.  I already had physical copies of most of the books.  I was able to find some use copies that were under $10.  Other books were out of print, or difficult to justify spending the money when only a chapter or two were needed.  I also found that some of the books were available through Safari’s online library.

My library

Step 2: Study

I am hoping to take the written exam in the summer, so I have a lot of reading to do.  As I go through the different books I intend to detail some of the more challenging concepts here.  Doing so helps me reinforce what I’ve learned, and it might help some future reader grasp a topic.  I’m also planning to put more detail around what material I found helpful, and what I thought wasn’t a good use of time.

TOGAF 9.2 Certified

I recently finished the TOGAF 9 Part 2 exam.  Believe it or not, this exam is the follow-up to the TOGAF 9 Part 1 exam.  Having completed the Part 1 exam and certification process already, completing this exam upgrades my certification from TOGAF 9 Foundation to TOGAF 9 Certified.

If you don’t know what TOGAF is, or are unfimilar with the Foundation certification see my post on the Part 1 exam.

About the Exam

There are a couple things to be aware of with Part 2.  First off, it is an upgrade to Part 1.  This means that all the concepts are the same.  The big difference is that Part 1 focuses on knowing the TOGAF Standard, and its components.  Part 2 focuses on how it is used.  It’s also worth noting that the TOGAF 9 Certified certification replaces the TOGAF 9 Foundation certification.

The exam, on paper, looks deceivingly easy.  It is all of eight questions long.  No, these aren’t 8 questions with 14 sub-parts.  Nor are they simulations or other types of questions.  Just eight questions, with four answer choices each.  To pass you need to score at least 60%.  Also, each answer is weighted with the most correct answer being worth 5 points, the second best is 3 points, the next is only 1 point, and the worst answer will get you 0 points.  If you do the math, you can pass by getting the best answer five times, and completely missing the rest.  You could also get the second best answer for all eight questions and still pass.  The test is also open book.

Sounds easy, right?  Well, here’s where that takes a bit of a turn.  The questions are scenario based, which means there’s a lot of reading during the exam.  Also, because the answers are weighted it means it can be difficult to pick which of the four choices really is the best.

How I prepared

I took the Part 2 exam a week after I did the Part 1, so all of that studying was still fresh.

I picked up the Official  TOGAF ® 9 Certified Study Guide

For this exam I decided to try one of the practice tests in the back of the book first, and use that to guide my studies.  I found that with the knowledge I had after my Part 1 training, combined with some critical thinking and I was able to pass the practice test with flying colors.

I then went through the questions a second time and I ranked the answers from what I thought was best to worst.  I had about 85% accuracy with that, so I felt confident enough in my understanding that I went ahead and scheduled the test.

The Exam

As usual, this is a proctored exam from a Pearson VUE test site.  The exam experience was uneventful.  I’ve taken plenty of tests at this site, so getting in and out was a breeze.

The one thing about the exam that I will say is that critical thinking is important.  You need to be able to evaluate four different answers to a scenario, and at times it can be difficult to really decide which one is best.