PowerShell: Logging in JSON format
· ☕ 4 min read · ✍️ Brett Johnson
When writing scripts for clients, it’;s important to generate good logs. It’;s a common position where a script works perfectly in test. But in production something is askew. Being able to look back at the process and step through after the fact is essential. Usually my logs are written in CSV format. CSV is great for parsing. But, it’;s awful to run in a text file. Due to this, I decided to modify my log function.

Python: Parsing API XML Response Data
· ☕ 3 min read · ✍️ Brett Johnson
Recently I have started to look at the Turbonomic API. Due to my current skill level in Python, I quickly hit a roadblock. The response from an API is in in XML format. Parsing the response in XML slowed things down a little. Which is the focus of the post. How to parse the XML response with Python. After some time I put the pieces together can work with this product through the API.

vBrownBag Schedule Sydney and Melbourne VMUG UserCons
· ☕ 2 min read · ✍️ Brett Johnson
It’s UserCon time down under. Which means, vBrownBag are presenting tech talks. Following the UserCon theme, we a number of presentations of personal development. As well as technical coverage. Talk schedules are below Sydney Time <th class="column-2"> Topic </th> <th class="column-3"> Presenter </th> 10:50 - 11:05 <td class="column-2"> Considerations for running Tier 1 databases on VSAN </td> <td class="column-3"> Murray Oldfield<br /> @murray_oldfield </td> 11:10 - 11:25 <td class="column-2"> Becoming a Subject Matter Expert </td> <td class="column-3"> Grant Orchard<br /> @grantorchard </td> 12:50 - 13:20 <td class="column-2"> Q&A VMWare Technical Interview </td> <td class="column-3"> Tai Ratcliff<br /> @TaiRatcliff<br /> Scott Norris<br /> @auScottNorris </td> 13:40 - 13:55 <td class="column-2"> Title: Multi Cloud Management and governance with vRealize Automation </td> <td class="column-3"> Scott Norris<br /> @auScottNorris </td> 14:00 - 14:15 <td class="column-2"> The Importance of Mentorship </td> <td class="column-3"> Rebecca Fitzhugh<br /> @RebeccaFitzhugh </td> Melbourne Time <th class="column-2"> Topic </th> <th class="column-3"> Presenter </th> 10:50 - 11:25 <td class="column-2"> NVMe for Beginners </td> <td class="column-3"> Derek Hennessy<br /> @derekhennessy<br /> Craig Waters<br /> @cswaters1 </td> 11:30 - 11:45 <td class="column-2"> Becoming a Subject Matter Expert </td> <td class="column-3"> Grant Orchard<br /> @grantorchard </td> 12:50 - 13:20 <td class="column-2"> Q&A VMWare Technical Interview </td> <td class="column-3"> Tai Ratcliff<br /> @TaiRatcliff<br /> Scott Norris<br /> @auScottNorris </td> 13:40 - 13:55 <td class="column-2"> Title: Multi Cloud Management and governance with vRealize Automation </td> <td class="column-3"> Scott Norris<br /> @auScottNorris </td> 14:00 - 14:15 <td class="column-2"> The Importance of Mentorship </td> <td class="column-3"> Rebecca Fitzhugh<br /> @RebeccaFitzhugh </td>

Review: PluralSight Offline Player OSX Beta
· ☕ 4 min read · ✍️ Brett Johnson
Roughly a month ago, I received an invite to beta test the PluralSight offline player. At the time, only a Mac client was available. Previously PluralSight had an offline player, and it was awful. Thankfully this has not been the experience with the new player. My daily commute involves a 45-minute train trip each way. This makes up a lot of my personal study and writing time. For this reason, I have a vested interest in an offline player.

Review: JetBrains PyCharm
· ☕ 3 min read · ✍️ Brett Johnson
PyCharm from JetBrains, is a full featured Python IDE. Which over the last 6 months has been my Python IDE of choice. The official site is: https://www.jetbrains.com/pycharm. I would like to share my experiences, which have mostly been positive. Editions Before jumping into thoughts and experiences, lets preface with the two different editions of PyCharm. Community and Professional. PyCharm Community Edition is the free version. For my usage, it can almost do everything I need.

Python: Getting Started with HTTP Requests
· ☕ 3 min read · ✍️ Brett Johnson
If you’;re looking at Python to interact with API’;s, it’;s likely that you’;ll use the Requests module. Many platforms also offer SDK’;s to help. Such as, Boto3 which is the AWS Python SDK. Requests is very well documented, both official and community documentation. The official site for Requests is http://docs.python-requests.org/en/master/ In this post, we are going to cover the basics of performing a HTTP GET and working with the data.

Python: Parsing values from API Response
Python: Parsing values from API Response
· ☕ 3 min read · ✍️ Brett Johnson
Boto3 was my first real attempt to work with an API interface. At the start, I had difficulty using the API response. This was partly due to only light exposure to Python. Also, an incorrect understanding of what the response was. When people talk about APIs, it’;s hard to go a minute without hearing “JSON format’;. I had seen JSON formatted text before. Combining this, with documentation displaying API call response in JSON formation, lead to a 2+2=5 scenario.

RancherOS: Installing to hard disk
RancherOS: Installing to hard disk
· ☕ 4 min read · ✍️ Brett Johnson
Recently I set about installing RancherOS. This was just to have a look and see what use cases it might help with. I chose to install RancherOS to a VM. In my case, VMware workstation. A roadblock I hit was providing an SSH key to the cloud-config.yml file. The roadblock specifically, how can I send a file to a system I don’;t have a password or SSH key for? This article covers, generating an SSH key, SSH access to live CD and installation to hard disk.

AWS Boto3: Using Boto3 to Describe VPC
AWS Boto3: Using Boto3 to Describe VPC
· ☕ 2 min read · ✍️ Brett Johnson
To describe a VPC is to retrieve the values of it attributes. A task we might perform to validate configuration. This article will demonstrate the following: Find VPC ID using filters Retrieve VPC configuration values Information on Boto3 can be found here. This post assumes that you already have a working Boto3 installation. Including IAM configuration to perform the task. If you have not, click here for the install document.

Palo Alto Networks Traps Forensic Folder Anon Upload
Palo Alto Networks Traps Forensic Folder Anon Upload
· ☕ 3 min read · ✍️ Brett Johnson
During my time deploying Palo Alto Traps. I noticed something a bit concerning with the Forensics Folder security. After verifying the discovery, I raised a ticket with PA. Which confirmed my findings. The PA Traps Forensics Folder, cannot support any authentication. To visit the offical Traps site, click here Traps Terms Overview ESM – Windows Servers which provide services to run PA Traps Endpoints – Windows devices (Laptop, Desktop, Server)

Top 3 Communication Skills Every IT Person Needs
Top 3 Communication Skills Every IT Person Needs
· ☕ 4 min read · ✍️ Brett Johnson
Eric Wright made a blog post titled: he Top 3 Skills Every IT Person Needs”. It’;s an excellent article, focusing on technical skills. Skills you should be learning about to stay relevant. Eric made a number of points that I’;ve taken on board. Eric’;s post is the source of inspiration for this one. In the same spirit, I would like to address communication skills, rather than technical. Written Writing is complex, with rules which sometimes are hard to grasp.

Discover and Clear Admin Count Attribute with PowerShell
Discover and Clear Admin Count Attribute with PowerShell
· ☕ 3 min read · ✍️ Brett Johnson
What is Admin Count? Before we discuss Admin Count, a little background is needed. AD contains an object called AdminSDHolder. Its purpose is to protect objects. Specifically, objects which are members of administrative groups. AD objects have an attribute called “Admin Count”. The default value is for most objects. Changing the value to “1”, flags the account as protected by AdminSDHolder. By adding a user to an administrative AD group. You change the value to “1”.

Quick VM Report with PowerCLI
Quick VM Report with PowerCLI
· ☕ 1 min read · ✍️ Brett Johnson
I primarily use this PowerCLI script after performing VM migrations. The script output focuses on what changed during the migration. Specifically moving to hosts running a newer version of ESXi. The script is simple to modify and adapt to fit your specific needs. Using the Script To make use of the script, all that you need to do is set the $ClusterName and $Path values at the beginning. However, think of this not as a ‘run as it is’; script.