When I was living in the Netherlands, I used the FreeStyle Libre as Constant Glucose Monitor (CGM). In the USA this is not covered by my health insurance and I had to try the Dexcom G6. When I was out of my FreeStyle Libre, I went to my pharmacy and I received a packet for 90 days.

You have sensors which last 10 days and a sender which would last at least 90 days.

First Impression of Dexcom G6.

Something new and technical is always nice to have it in your hand. There was a lot of documentation, maybe a bit too much. But the most important thing wasn’t told.

Insert the Dexcom G6

To insert the sensor in you skin, there is a big device, which is basically a big spring which can be used only once.

When you insert the sensor, you can put the sender on it. The sticker is very nice and even after 10 days it was still very sticky and I didn’t had any problem with it.

Here is a video where I insert the sensor:

And to be honest, you don’t feel a thing…. I Guess.. πŸ™‚

My Android phone was not supported.

At my pharmacy they told me that Android phones are supported to read the sensor, so I didn’t have to buy the receiver… Well….

On the website of Dexcom there is a list with supported Android Phones. The OnePlus is not supported so I had to buy the receiver. At first I couldn’t have the app working on my phone. I had some chats with the technical support of Dexcom and they are telling me that Android 10 was for them still in testing phase. The Receiver was $ 350 if you had to buy directly from Dexcom!

Now I have a receiver and it’s working on my Android phone. Not via the official way, but if you know something about APK, you can do the trick…. πŸ˜›

Notifications of the Dexcom G6

What I really like of the Dexcom, are the alerts. Sometimes my glucose is very very low during my sleep. Now you can get all kind of notifications.

When I am hiking and going up hill, I change the alert, so that I have enough time to have some carbs when my sugar is going down.

 

Here are some notifications you can get:

 

 

Dexcom Receiver

Dexcom Clarity

This application / website is to view your stats of the Dexcom. It’s nice, but I don’t use it often.

 

 

Conclusion:

Although I had to think in the mg/dL, it is a nice gadget and it’s not working perfectly yet, but I can’t wait until there is a loop with the Omnipod Dash. That would be awesome.

Via Intersight it is possible to install HyperFlex and HyperFlex Edge clusters very easy. Now you can also upgrade the ESXi Hypervisor of the HyperFlex cluster via Intersight.

Upgrade Hypervisor

Go to Intersight.com and select HyperFlex Clusters.

You will see your HX Clusters and on the right you will see 3 dots. When you click on those, you will see:

Upgrade via Intersight

And select Upgrade.

When you receive the following error:

Upgrade only when installed via Intersight

This means you imported a HyperFlex Cluster that is installed via HyperFlex Connect. Right now you can only upgrade when the HyperFlex cluster is installed via Intersight.

 

Selecting HXDP works now (may 2020) only with HyperFlex Edge Clusters. NOT with HX clusters which are connected to Fabric Interconnects!
Check out the What is New page of IntersightΒ  or the Features page of Intersight to see when a upgrade is possible via Intersight of HXDP.

 

To start select the Expert Mode [1] and select Upgrade Hypervisor [2].

Via the drop down menu, you can select the ESXi version [3]

In this example the ESXi will be upgraded from 6.5u3 to 6.7u3.

Upgrade via Intersight

 

The system will first run some pre-upgrade Validation checks.

Upgrade Validations

 

If something is failing, you will see a red bar at the top of the page and you will have to resolve this problem.

HX not healthy

 

When the HX Cluster is Healthy again, you can restart it again.

Here you can see I can upgrade the Hypervisor of the HX Cluster.

lets upgrade hypervisor

 

You will see a summary.

to which hypervisor

 

Lets start

Hit the Upgrade button and the hypervisor on the nodes get the new version of ESXi.

Upgrade hypervisor via intersight

 

As you can see, it is now in progress. You don’t have to do a thing.

 

 

The HyperFlex cluster contains of 4 nodes and the upgrade process of those nodes is in progress.

 

You can see the details of what is going on.

 

During the Pre-Upgrade phase, Intersight shows there is a problem and the process will stop.

In my case I didn’t do the post_install script after the installation and I had to configure vMotion interfaces.

 

Of course this was a build in error, just in case if you hit this πŸ™‚

 

I solved the problem and the started it again.

 

 

And this result is what I was waiting for: SUCCESS! πŸ™‚

 

You can verify the hypervisor version at vCenter

In Intersight

And via HyperFlex Connect.

 

 

 

 

 

I am not a programmer but sometimes I create some small API integration for HyperFlex that make my life easier. I am writing in Python and I am using PyCharm with the plugin Kite. To have my code published and make sure the correct versions are on the web, I am using the PyCharm Github integration. This blog is a reminder for myself how I setup everything and it’s working smoothly.

Settings in PyCharm for Github

Before pushing the files, you must use the local VCS. Select VCS Operation Popup.

PyCharm VCS

Create Git Repository

And select the directory.

When this is enabled for your project, you will see at the bottom GIT and if you click this, the most important thing is the green check marker. When you hit this, the changes will be locally pushed.

 

You must select the files you want to be in the Version Control. I am using a virtual python environment and I don’t want to have those files published.

If you fill in the Author and you get some error messages, leave the Author field empty. This is working for me.

In the Commit Message, just do a brief description so when you are working with a team to the code, it’s easier to see what is changed.

Click commit and the files are locally committed.

 

So the files are NOT on github yet. You must PUSH them to Github.

Push to Github

But there is no Remote destination defined yet.

Pushed to Github

Lets solve this:

Before the code can be pushed to Github, a new Repositry should be created online:

Github create repository

Now a new repository is created and it is set to be public.

Copy the Github url

And paste the link in PyCharm : Define Remote.

Push the files to Github:

 

Right now PyCharm is pushing all files.

 

When the code is pushed to Github, you will see something like :

Pushed to Github

 

Pushed to Github

You can verify the files on your Github directory online.

As you can see, there was no README.MD file yet. So I created on in PyCharm and now you can Add this file to the files that will be pushed to Github.

Pushed to Github

 

Just as a reminder: You can find my HyperFlex Python scripts at : github.com/iamjoost

 

A lot of times testing are done without any load or with a limit amount of used capacity. When I do some test, I like to have the HyperFlex cluster to be at least of 50% of the capacity. How can you achieve this, because compression and de-duplication are default on.

Linux VM

First create a Linux VM on the HyperFlex cluster. In this case I used Ubuntu, thin provisioned, 2 vcpu with 4 Gb mem and 2T diskdrive.

When the installation is done, have a look if cryptsetup is installed. If not install it with:

sudo apt install cryptsetup-bin

If it is not working right away, you will have to update: sudo apt update

Now we can create a big file with:

sudo fallocate -l 500G BigFile

This command will create a file of 500G with the name BigFile. Although you will see this file with a certain amount of size, nothing happens on the HyperFlex cluster.

Now we are going to do a trick.

You can use shred of dd with /dev/urandom to fill the VM with random characters, which are difficult to compress and dedup. The advantage of this method is that it uses a lot of time. The following method is way quicker:

/dev/loopx are connections between a file which can be used as block storage. There are 7 /dev/loop devices. You can see the ones who are used with :

sudo losetup

Just pick one which is not used and type the command :

sudo losetup /dev/loop7 BigFile

Now the file BigFile will be connected with /dev/loop7

Now we are going to encrypt this blockstorage:

sudo cryptsetup luksFormat /dev/loop7

You will have to fill in YES and give a password. We need this password for the next command.

After a couple of second we can type:

sudo cryptsetup luksOpen /dev/loop7 testdev

testdev is just a name.

Now we can fill this encrypted image with zero’s.

sudo dd if=/dev/zero of=/dev/mapper/testdev bs=1M

In this case the blocksize is 1Meg.

 

This method is way faster and it fills up your HyperFlex cluster. As you can see the Compression and Dedup are very very low.

 

And here you see a system almost filled to 70%

Use this method only for testing the Cluster.

 

With my action cam I am creating some video’s. When I want to upload them with web.whatsapp.com it is not possible due to a 64 Mb file size limitation.

There are a lot of programs you can buy or even you can compress the video online. (Some with watermark, time limitation and other limitations.

Compress Video with VLC

The easiest way to compress your video is to use VLC.

I have an action cam movie which is 3 minute 48 and about 284 Mb. Way to big to send it to another mobile device.

 

Open VLC and select Media – Convert / Save…

 

Add the movie you want to compress. [1]

It is possible to convert it already, but in my case I want to change the duration of the video, so I hit “show more options” [2]

As you can see [3] I changed the end time of the video.

Now you can select the option Convert [4]

 

When you see the convert dialog, you can select a lot of profiles. Some are optimized for Android, iPhone, TV. You name it and it is there.

 

 

You can edit or create your own profile with all kind of parameters. I leave it default, because there is a lot to choose form. This screenshot is just for your reference.

 

There is the source and destination with a profile of choise. Hit start and VLC will start compressing and convert the video.

 

You will have to wait some minutes. You don’t see anything on the screen and you have to watch the timer on the left. You will see it changing. The end of the video, we changed to 2 min 22 and what you see in the figure below is the total time of the original video.

 

End Result

Here you see the result of the filesize. It is way smaller, still viewable on a phone and I can send it now with whatsapp.

 

And here you see the result. In my case I changed also the resolution to 720p and you can see the duration of the video is now 2 minute and 22 sec.

This video was created during one of my last small hike. I did some bigger hikes. [LINK]

Due to the weather in California, for me it was obvious to look for a convertible car. It’s not that I needed a car right away, because I commute every day on my electrical scooter. Even groceries and going somewhere with the scooter is easy to do.

Electric Scooter

 

Shelby

In 2014 my son and I had a small holiday in Las Vegas. He wanted to see the “Shelby” Factory. I didn’t know what it was, but we went there. If you are ever in Las Vegas, please take the tour at the Shelby factory. The story behind the cars are awesome !

 

For a business trip in Jan 2017, Hertz gave me a very nice car. Ford Mustang Convertible. Unfortunately it was raining that week, but I could drive it ! πŸ™‚

Ford Mustang Convertible

 

History Ford Mustang SVT Cobra

This 1998 Ford Mustang SVT Cobra is the fourth generation of Ford Mustang. [Link to Ford Mustang wiki page]

If you want to read more about this nice car, here is the link to the Ford Mustang SVT Cobra wiki page.

 

My Ford Mustang SVT Cobra 1998

I was just looking for a convertible car… And there she was…. It is not a real collectors item, but still pretty special with good looks. I went to the Moore Buick GMC dealer and I did a small test ride. I was sold.

Just enjoy the pictures.

Ford Mustang Cobra 1998

 

It’s all fine saddle leather.

Inside Mustang

 

With the nicest floor mat I ever had.

Ford Mustang Cobra Floor Mat

 

The rims are very shiny and even here you see the Cobra symbol.

Ford Mustang Cobra Rims

Mach460 Sound

When I bought the car, the original cassette/radio was still there. I had my old radio from my old Volvo with me and I connected everything. It look like it was working, but I had no sound… Pretty weird. So I had to use google to find out what was wrong.

It seems that the Mustang is equipped with a Mach460 sound system. Three amplifiers with 120 Watt maximum capacity , four woofers and four mid-range tweeters.

I had to connect my blue/white cable from the radio to the blue/white of the Mustang to activate the amplifiers. After connection, the sound is awesome !

Ford Mustang Mach460 Sound System

 

The Engine

The engine is a V8, 4.6 Liter and produce 305 HP. It don’t look much now, but you have to keep in mind this was build in the nineties.

Corba V8 4.6 Liter Mustang Motor

 

The details are also under the hood.

As you can see, you can see the two names of the persons who hand-built the Cobra engine. This makes the engine very special. You don’t see that in a Tesla πŸ˜›

Signed by the guys who assembled the Ford Mustang Cobra Motor.

 

Now you see them everywhere!

A Mustang here, a Cobra there. Even in the Great Mall!

Ford Mustang Small Mall

 

And in a lot of online shops you can get a Ford Mustang Electrical Vehicle.

Ford Mustang Small

 

And now I am looking forward for all the Mustang meetings and race tracks where I can test the car.

When you have a HyperFlex system you must enable the licenses via Smart Licensing.

Make sure you have a Smart License Account and a Virtual Account.

Configure Smart Licensing for HyperFlex

Connect to HyperFlex Connect and go to the WebCLI. Type in the command

stcli license show all

Here we see a HyperFlex cluster without a license. The status of registration is UNREGISTERED

 

 

Let’s go to Software Central [LINK] and clickΒ  “Smart Software Licensing”

 

 

If you have multiple Smart Accounts, select the correct one on top of the right corner.

If there are multiple Virtual Accounts, select the correct virtual account.

 

 

 

Generate a New Token for the HyperFlex Cluster.

In this case I put the max number of uses to 1, so that I am the only one who can use this token.

 

We see the token and select it.

From here you can copy the token to the Clipboard.

Go back to HyperFlex Connect and put in the command :

stcli licens register --idtoken <token>

And that is it!

There will be a blue bar on top of HyperFlex Connect :

The HyperFlex Cluster is now in compliance with the licenses.

Verify it with the command :

stcli license show all

 

Status of the registration is : REGISTERED, so this is a good sign.

 

If you go back to Software Central, you will see the token is now Expired. That’s because only one person, me, could use it.

 

You can see in a nice graph the usage of your licenses.

 

In the overview you will see the cluster name, so this cluster is registered with the Standard HyperFlex Licenses.

 

 

Remove license from a HyperFlex Cluster

In certain scenarios it is possible that you want to deregister your license of the HyperFlex cluster and re-use it somewhere else.

the command to deregister is :

stcli license deregister

 

If we no show the licenses with

stcli license show all

The status is now : UNREGISTERED

 

 

If you have multiple HyperFlex licenses in your account, the license which fits the HyperFlex will be chosen.

A HyperFlex Edge cluster will use the HyperFlex Edge licenses. If you have a stretched cluster or a HyperFlex All NVMe Cluster, Enterprise licenses will be used. etc.

 

 

 

Once a year a part of the Netherlands (mostly south) is totally out of business for a couple of days. You can’t reach anybody, shops are closed. Where is everybody and what are they doing ?

This year I had to skip Carnaval. And next year I will be there because Carnaval 2021 starts at Feb 13, 2021! (Cisco Live is next year in the Netherlands, Amsterdam from Feb 8-12, 2021.)

History of Carnaval

You can have a look at the wiki page about Carnaval, but that is not very exciting. If you google a lot about Carnaval, you will see a lot of different thoughts about the origin of it. In my early days somebody told me that during the middle ages for a few days the world was up side down. The poor could have a big party, rule the town and it was sponsored by the landlords. You could dress up and look like somebody you wanted to be.

Carnaval and I

I grew up with Carnaval and when 10 years I wanted to be elected for the “youth council of 11”. You could what ever you wanted to do on stage and hopefully your friends were voting for you.

I did a “sauwel”. Just telling some jokes and funny stories.

Carnaval Raad van 11.
Yep. This is me age 10.

 

And yes, I was in the “Council of 11”.

In the picture below you see :

1- The Prince. He rules during Carnaval.

2- The Fool

3- Deputy.

4- “Dansmariekes”. Kinda Cheerleaders.

5- Counsil of 11.

6- That’s me.

Nowadays I am a grown up man……

But with Carnaval I drink still some beers and looks silly. πŸ˜‰

Carnaval Ettenleur

 

 

Parade

Almost every town (in the “North Brabant”) has a parade.

 

Conclusion

You like it or you don’t ? My advise is, if you are going to Cisco Live in Amsterdam, stay the weekend somewhere in the south part of the Netherlands and see what is going on there. Even if you see it for one hour, you have an impression of a life time.

How do you know when there is a new release of software or you are waiting for a bug fix… It’s possible with the Cisco subscription !

 

Get Email Notifications of Updates

Just create a subscription at :Β https://cway.cisco.com/mynotifications

 

When you login with your CCO account you will see :

My Notifications for Updates

You can select End Of Sale, Field Notices and Cisco Security Advisories about a product or technology.

Or you can select Software Updates and Known Bugs.

You can’t select them both. I always create two subscriptions about the products I want to have a close eye on.

When you select one of the options, you can select products. As example I am searching for “hyperflex”, but it could be any Cisco products.

 

You will get a big list and I select all the hardware (All HyperFlex HX-Series)

 

This is not enough, because we also have the software, so we select more products.

In this case I choose also “HyperFlex HX Data Platform”

No click Create and the subscription is made.

 

Personally I like to have enough email with all kind of things about HyperFlex, so I have two subscriptions.

 

And when there is something to tell you, you will receive an email :

In this case the content was about the Known Bugs of HyperFlex.

 

When you want to track a bug id and wait for a workaround or solution, you can click on : Track a Bug [1]

Now you are able to enter a specific Bug ID [2]

Finally click on Track a Bug [3] and you will receive emails when there are updates.

 

 

This features I am personally using for ages ! Even in the time when I did only WAN/LAN networking.

Use it and take advantage of it.

 

To be honest, I never worked with iSCSI. After some questions, I had a closer look about the protocol. If you don’t have anything to do during a evening, you can read RFC 3720 and RFC 3721.

iSCSI Naming RFC 3721

The first thing you will need if you want to have some hands-on with the protocol is to have some storage which supports iSCSI protocol. If you have a server with VMs running on it, you can easily have some basic Ubuntu images and create your own iSCSI Target. At the end of this blog you can find the iSCSI Terminology

iSCSI Linux Target and Initiator Config

For my own convieniance, I post not only the screenshots with results, but also the commands, so it is easier to copy-paste. (Yes, I am lazy).

I used two Ubuntu images and installed the following packages on it :

On the Target Image :

sudo apt install targetcli-fb

sudo apt install lvm2

 

On the Initiator Image :

sudo apt install open-iscsi

On the target I created already a Logical Volume. You don’t have to do it, but I was curious about the configuration.

Create a Physical Volume
Create a Volume Group.
Create a Logical Volume

sudo pvcreate /dev/sdb2
sudo vgcreate vgiscsi /dev/sdb2
sudo lvcreate -n lviscsi -l 50%VG vgiscsi

 

With the command :

lsblk

you are seeing all blockdevices of the OS.

 

Let’s start :

sudo targetcli

so that we can configure a Target on this image.

 

Within Targetcli we can do also some commands. With the TargetCLI command :

ls

we are seeing that nothing is configured yet.

If you have a config, you can clear it with :

cd /

clearconfig

 

 

 

There are several options to create a backstore. First we are creating a block storage object.

With <tab> you don’t have to fill in the commands completely.

/backstores/block create lvm1 /dev/vgiscsi/lviscsi

 

If you do ls you can verify the command everytime.

 

 

Now we have a block storage object. Create a target with a iqn name. IQN stands for iSCSI Qualified Name.

/iscsi create iqn.2020-02.com.localnet:blocklvm1

 

Before we going to configure the rest, I will have a closer look at the IQN. The IQN always start with iqn followed with a dot (.) and the year and month of when a company had the domain name. In this case you can have unique IQNs.

After the year, you see the domain name, but in reversed order followed by : and a name, serial number or whatever.

Example IQN:

iqn.2020-02.com.localnet:blocklvm1

2020-02 is feb 2020.

com.localnet is the domain localnet.com

and blocklvm1 is in this case the name of the storage. Could be anything what you think is easy.

No we have a iqn name, we have to attach a lun.

cd /iscsi/iqn<tab>/tp<tab>

luns/ create /backstore/block/lvm1

 

 

Every initiator also has a unique iqn. It can have default values or you can change it. In this case I will just fill in some names and later I will change the initiator names.

acls/ create iqn.2020-02.com.localnet:initiator1

ls

 

To have a overview what we configured you can do :

cd /

ls

 

Here are some examples of creating backstores with RAM, File or Partition.

/backstores/ramdisk create name=ram1 size=100MB

 

/backstores/fileiocreate fileio1 /file.img 50M

If the file already exists it will use that size. If it isn’t there yet, it will create a file with the size you configured.

 

 

 

/backstores/block create sd /dev/sdb1

ls

Here you see all the backstores configured.

 

If you don’t configure the portal, it will default listen on all interfaces at port 3260.

 

You can change this, to first delete the default portal and then create a new one

portals/ delete 0.0.0.0 3260

portals/ create 10.1.15.43

ls

 

The config has changed a bit and now this is the result :

 

On the Initiator I can do a discovery of the Target :

sudo iscsiadm –mode discovery –type sendtargets –portal 10.1.15.43

It is possible to have authentication on the discovery. Let’s enable it.

with get discovery_auth you can see all the parameters.

 

 

At the /iscsi level you can setup discovery authentication by :

set discovery_auth password=Cisco123Cisco

set discovery_auth userid=iqn.2020-02.com.localnet:discovery

set discovery_auth enable=1

 

Note : For Linux you can use weak passwords and a non iqn username. Windows don’t like it, thats why this password and username is chosen.

You can see that 1-way discovery authentication is enabled.

 

If you want to do a discovery at the Initiator, you will see a login failure:

 

At the Initiator you must change the file :

sudo vi /etc/iscsi/iscs<tab>

 

Restart the iscsi service at the Initiator

sudo systemctl restart iscsid.service

And now you can discover the Target on the Initiator.

 

Let’s put authentication on the Target :

At the IQN level you see there is nothing configured yet :

 

Let’s configure

set auth userid=user1

set auth password=password

at the TPG level :

set attributre authentication=1

 

 

Because I just created an Initiator name at the Target, the Initiator name must be changed at the Initiator :

sudo vi /etc/iscsi/initiatorname.iscsi

 

 

Change the iscsi config file again and restart the service.

sudo vi /etc/iscsi/iscs<tab>

sudo systemctl restart iscsid.service

 

We can login at the Target via :

sudo iscsiadm –mode node –targetname iqn.2020-02.com.localhost:block1 –portal 10.1.15.43 –login

 

iSCSI Windows Initiator

When connecting a Windows Initiator to a Linux Target, you must remember a few things :

Usernames must be in IQN format.

Windows don’t like easy passwords. (RFC 3720 Recommendation)

You cannot have the same password for discovery and normal CHAP authentication. (RFC 3720)

 

For my Windows Machine I created a new IQN.

 

Open the iSCSI Initiator app on your windows machine. If the service isn’t running, you can get a warning and an opportunity to start the service.

 

And I configured the Target to use Mutual CHAP Secret. It is not necessary, but I thought : Well, let’s give it a try.

Open the Discovery and click on Discover Portal.

Here you fill in the ip address of the Target and click on Advanced.

 

Here you can fill in the CHAP credentials for the discover process.

 

You will discover some backstores of the Target.

 

Click on the right one which we configured. (IQN of the windows machine.)

Fill in the CHAP credentials.

 

And now the Windows Machine and the Target are connected.

 

If you go to Disk Management of the windows machine, you will see new disks (In this case the first one is the 50M. The seconds was the 8Gb)

 

 

Hooray ! We configured a Linux Target, Linux Initiator, Windows Initiator, Discovery Authentication, one-way Target authentication and mutual Target Authentication.

 

Final TargetCLI configuration

Here are some screenshot of my final TargetCLI configuration.

 

 

With the get and set command you can see of set parameters.

Enable the IQN authentication at TPG level.

 

Set the Auth at the IQN level.

 

 

 

iSCSI Terminology.

LUN

Logical Unit Number represents a single addressable iSCSI disk

Target

Server that emulates a backstore to presents it as a LUN to initiators

Target LUN is logical unit itself exported by the target server

ACL

Access control list

IQN

iSCSI Qualified Name is a unique name to identify the iSCSI target server

Iqn:2018-03.com.localnet:maillun

Alias

Optional string up to 255 char describing the target

iSCSI Authentication

Authentication is handled by challenge-handshake protocol CHAP

Modes

CHAP initiator authentication

Mutual CHAP authentication

Demo Mode (Authentication is disabled. Default)

Backstore

Storage resource that backs the LUN

This resource may be :

Entire physical device

Partition

RAID Device

LVM Logical volume

File

Initiator

A client that accesses the LUNs on a target iSCSI server

iSNS

iSCSI Storage Name Service used by an initiator to discover shared LUNs

Node

Single discoverable object on a iSCSI SAN

Portal

Combination of an IP address and port

Default iSCSI listen on port 3260

 

More storage related links :

MDS

HyperFlex

WordPress Theme built by Shufflehound. Joost van der Made 2018