Tuesday, August 29, 2017

ICp CLI Access

I was fortunate to have some time off and be able to spend it with my family last week.  As a result, I needed to turn off my ICp instance for that time, to then resume my investigation and learning this week.  I decided to pick it back up by configuring the kubectl CLI to work against my instance.

Immediately upon starting, two issues were encountered:
  1. My Certificates Expired
    Apparently this was an issue which was the result of installing before last week.  There is an easy script which updates your certs for you:
    https://www.ibm.com/developerworks/community/blogs/fe25b4ef-ea6a-4d86-a629-6f87ccf4649e/entry/Certificate_update?lang=en
  2. Unable to Log Into CLI on Day 2
    This second issue is due to the way security is implemented, and requires one to setup a service account to avoid this being a task every 12 hours.  Instructions can be found here:
    https://www.ibm.com/developerworks/community/blogs/fe25b4ef-ea6a-4d86-a629-6f87ccf4649e/entry/Configuring_the_Kubernetes_CLI_by_using_service_account_tokens1?lang=en
Hopefully these tips will help more than just future-me, and will get others back up and running quickly.

Thursday, August 17, 2017

IBM Cloud private - Initial Impressions and Notes

This week I was introduced to IBM Cloud private.  It is an offering from IBM which brings together a host of OpenSource PaaS or cloud orchestration tools, some home-grown IBM ip, and many of things I have been surrounded by for the last two years or so.  While the move to cloud is not really a new one, there are still a large number of enterprises which are still just starting to ramp up their efforts in this arena.  Many cite the need for security or compliance, while others just have tech that works for running their business and have not seen enough compelling information to make cloud transformation a priority for them yet.  Regardless of the reason, we now have seen a series of opportunities to work with many of these customers as they embark on their journey of embracing cloud technologies.  It is the intention of IBM to satisfy some of the needs for customers who have found reasons to avoid the cloud, and help them make their own cloud in which they can enforce their needs and policies while enabling developers to leverage the virtues of cloud, continuous deployment and micro-service architectures.

IBM is very forward about the fact that ICp is powered by Kubernetes, Docker and ELK.  It brings an installer built on Ansible to the party which makes setting up a test environment relatively simple.  Included in the stack, you will also find familiar names like Calico which manages networking.  All said, the suite of technology which is included is very modern and current. The whole thing is wrapped in a management console which is elegant and modern looking.

To get started, I simply needed an Ubuntu LTS system with Docker 1.12 or newer installed.  I grabbed my trusty Ubuntu image and built a vm, updated with latest patches, and installed Docker CE following these instructions.

With my newly minted Ubuntu box, I then followed the instructions found here to download and install the ICp community edition.  Before installing, be certain to follow the steps in the "Configuring your cluster" document, even if you are setting up a single system.  There are specific Docker settings to pay attention to.  The other configuration I decided to do was to configure SSL authentication for SSH and that the key file was put in the prescribed locations.  When I reached the step of configuring my /cluster/hosts I specified a singular IP address for all three roles. This was intentional as I was setting up a test system, but it would be more correct to at least separate out the worker into its own VM. (Clustering is a topic to address in a different post.)

After a little patience, I was presented with the URL to log in and manage the ICp deployment I just setup.  The first thing I did was install Kubectl on the host so I had a CLI in addition to the GUI for managing the system.  Up next for me will be adding workers to the installation, adding additional application repositories and working out custom tool chains for continuous delivery.

Happy clouding!

Nginx Ingress Controller on Bare Metal

After many hours of reading, trial-&-error, and general frustration… I have collected a few helpful bits WRT configuring the nginx ingr...