Short Take: Practical Career Advice

One problem I’ve heard in the past is that much of the career advice given in the networking world is not practical. In this short take, I take this problem on, explaining why it might be more practical than it initially seems.

Shell Scripts to Ansible

Shell-Scripts-to-Ansible

During a recent client visit, we were asked to help migrate the following script for deploying a centralized sudoers file to RHEL and AIX servers. This is a common scenario which can provide some good examples of leveraging advanced Ansible features. Additionally, we can consider the shift in approach from a script that does a task to describing and enforcing the state of an item idempotently.

Here is the script:

#!/bin/sh
# Desc: Distribute unified copy of /etc/sudoers
#
# $Id: $
#set -x

export ODMDIR=/etc/repos

#
# perform any cleanup actions we need to do, and then exit with the
# passed status/return code
#
clean_exit()
{
cd /
test -f "$tmpfile" && rm $tmpfile
exit $1
}

#Set variables
PROG=`basename $0`
PLAT=`uname -s|awk '{print $1}'`
HOSTNAME=`uname -n | awk -F. '{print $1}'`
HOSTPFX=$(echo $HOSTNAME |cut -c 1-2)
NFSserver="nfs-server"
NFSdir="/NFS/AIXSOFT_NFS"
MOUNTPT="/mnt.$$"
MAILTO="[email protected]"
DSTRING=$(date +%Y%m%d%H%M)
LOGFILE="/tmp/${PROG}.dist_sudoers.${DSTRING}.log"
BKUPFILE=/etc/sudoers.${DSTRING}
SRCFILE=${MOUNTPT}/skel/sudoers-uni
MD5FILE="/.sudoers.md5"

echo "Starting ${PROG} on ${HOSTNAME}" >> ${LOGFILE} 2>&1

# Make sure we run as root
runas=`id | awk -F'(' '{print $1}' | awk -F'=' '{print $2}'`
if [ $runas -ne 0 ] ; then
echo "$PROG: you must be root to run  Continue reading

Data freshness, not speed, most important for IoT

The age of sensor data is more important than how fast it takes that information to travel around Internet- and Location-of-Things environments, say some experts. Scientists are, in fact, rethinking the network because of it.“It’s not enough to transmit data quickly. That data also needs to be fresh,” says MIT in a news release.The university has been working on better ways to ensure that sensors, which distribute readings for analysis, provide the most salient stuff. It’s not easy because you can’t just send everything at the same time (an obvious solution) — there isn't enough bandwidth.To read this article in full, please click here

IDG Contributor Network: Enterprises evaluate the costs of building versus buying an IoT platform

Almost every week we speak with an enterprise that is curious about building its own IoT application enablement platform (AEP) or IoT device management (DM) platform. The idea is straight-forward – an enterprise wants total control over the technology it deploys, so it chooses to hire developers to build the perfect, inexpensive platform.Then what happens? Sometimes everything goes exceedingly well and the IoT platform delivers as anticipated. Other times, the enterprise determines it takes more time and money to build a platform that anticipated it takes more staff to support the platform on-going than anticipated it is very hard to keep the platform features up-to-date compared to the features offered from best-in-class vendors’ IoT platforms the initial in-house platform was great, but scaling and modifying the platform to meet future requirements is exceedingly difficult due to the chosen platform architecture So, what are the total enterprise costs of building an enterprise-grade IoT platform versus buying IoT platform services from a third-party AEP or DM vendor? It really depends on the IoT solution that the enterprise wants to deploy.To read this article in full, please click here

We’ve Added Another Blockchain Course To Our Video Library!

 

This Course is By Joseph Holbrook and is 4 hours and 34 minutes long. You can view the full course on our streaming Site, or buy the course at ine.com.

A blockchain is a tamper-evident, shared digital ledger that records transactions in a public or private peer-to-peer network. Distributed to all member nodes in the network, the ledger permanently records, in a sequential chain of cryptographic hash-linked blocks, the history of asset exchanges that take place between the peers in the network. This course has been designed for technical architects, pre sales architects, developers and project managers who must make technical decisions about distributed architectures and development platforms.

Cisco developer push yields 500,000 DevNet members working on programmable networks

ORLANDO – Cisco’s developer program, DevNet, is on a hot streak.Speaking at Cisco Live 2018, DevNet CTO Susie Wee said the group, which was founded in 2014, now has 500,000 registered members."That’s a pretty cool milestone, but what does it mean? It means that we've hit critical mass with a developer community who can program the network," Wee said. "Our 500,000 strong community is writing code that can be leveraged and shared by others. DevNet is creating a network innovation ecosystem that will be the hub of the next generation of applications and the next generation of business."At Cisco Live the company also announced it has expanded the DevNet world to include:To read this article in full, please click here

Cisco developer push yields 500,000 DevNet members working on programmable networks

ORLANDO – Cisco’s developer program, DevNet, is on a hot streak.Speaking at Cisco Live 2018, DevNet CTO Susie Wee said the group, which was founded in 2014, now has 500,000 registered members."That’s a pretty cool milestone, but what does it mean? It means that we've hit critical mass with a developer community who can program the network," Wee said. "Our 500,000 strong community is writing code that can be leveraged and shared by others. DevNet is creating a network innovation ecosystem that will be the hub of the next generation of applications and the next generation of business."At Cisco Live the company also announced it has expanded the DevNet world to include:To read this article in full, please click here

Cisco developer push yields 500,000 DevNet members working on programmable networks

ORLANDO – Cisco’s developer program, DevNet, is on a hot streak.Speaking at Cisco Live 2018, DevNet CTO Susie Wee said the group, which was founded in 2014, now has 500,000 registered members."That’s a pretty cool milestone, but what does it mean? It means that we've hit critical mass with a developer community who can program the network," Wee said. "Our 500,000 strong community is writing code that can be leveraged and shared by others. DevNet is creating a network innovation ecosystem that will be the hub of the next generation of applications and the next generation of business."At Cisco Live the company also announced it has expanded the DevNet world to include:To read this article in full, please click here

Examining X.509 Certificates Embedded in Kubeconfig Files

While exploring some of the intricacies around the use of X.509v3 certificates in Kubernetes, I found myself wanting to be able to view the details of a certificate embedded in a kubeconfig file. (See this page if you’re unfamiliar with what a kubeconfig file is.) In this post, I’ll share with you the commands I used to accomplish this task.

First, you’ll want to extract the certificate data from the kubeconfig file. For the purposes of this post, I’ll use a kubeconfig file named config and found in the .kube subdirectory of your home directory. Assuming there’s only a single certificate embedded in the file, you can use a simple grep statement to isolate this information:

grep 'client-certificate-data' $HOME/.kube/config

Combine that with awk to isolate only the certificate data:

grep 'client-certificate-data' $HOME/.kube/config | awk '{print $2}'

This data is Base64-encoded, so we decode it (I’ll wrap the command using backslashes for readability now that it has grown a bit longer):

grep 'client-certificate-data' $HOME/.kube/config | \
awk '{print $2}' | base64 -d

You could, at this stage, redirect the output into a file (like certificate.crt) if so desired; the data you have is Continue reading