Just a reminder ....
MainframerZ meetup at Lloyds
Look forward to seeing you there ....
Geeking in technology since 1985, with IBM Development, focused upon Docker and Kubernetes on the IBM Z LinuxONE platform In the words of Dr Cathy Ryan, "If you don't write it down, it never happened". To paraphrase one of my clients, "Every day is a school day". I do, I learn, I share. The postings on this site are my own and don’t necessarily represent IBM’s positions, strategies or opinions. Remember, YMMV https://infosec.exchange/@davehay
Thursday, 28 February 2019
Wednesday, 27 February 2019
Kubernetes tooling - tinkering with versions
Having built a new Kubernetes cluster on the IBM Kubernetes Service (IKS), which reports as version 1.11.7_1543 within the IKS dashboard: -
https://cloud.ibm.com/containers-kubernetes/clusters/
I'd noticed that the kubectl tool was out-of-sync with the cluster itself: -
kubectl version
Client Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.11", GitCommit:"637c7e288581ee40ab4ca210618a89a555b6e7e9", GitTreeState:"clean", BuildDate:"2018-11-26T14:38:32Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.7+IKS", GitCommit:"498bc5434e4bdc2dafddf57b2e8496f1cbd054bc", GitTreeState:"clean", BuildDate:"2019-02-01T08:10:15Z", GoVersion:"go1.10.7", Compiler:"gc", Platform:"linux/amd64"}
Initially, I assumed (!) that it was covered by the IBM Cloud Plugins: -
Setting up the CLI and API
and checked my plugins: -
ibmcloud plugin list
Listing installed plug-ins...
Plugin Name Version Status
cloud-functions/wsk/functions/fn 1.0.29
container-registry 0.1.368
container-service/kubernetes-service 0.2.53 Update Available
dev 2.1.15
sdk-gen 0.1.12
This appeared to confirm my suspicion so I updated the IKS plugin: -
ibmcloud plugin update kubernetes-service
Plug-in 'container-service/kubernetes-service 0.2.53' was installed.
Checking upgrades for plug-in 'container-service/kubernetes-service' from repository 'IBM Cloud'...
Update 'container-service/kubernetes-service 0.2.53' to 'container-service/kubernetes-service 0.2.61'
Attempting to download the binary file...
23.10 MiB / 23.10 MiB [=====================================================================================================================================================] 100.00% 9s
24224568 bytes downloaded
Updating binary...
OK
The plug-in was successfully upgraded.
ibmcloud plugin list
Listing installed plug-ins...
Plugin Name Version Status
sdk-gen 0.1.12
cloud-functions/wsk/functions/fn 1.0.29
container-registry 0.1.368
container-service/kubernetes-service 0.2.61
dev 2.1.15
https://cloud.ibm.com/containers-kubernetes/clusters/
I'd noticed that the kubectl tool was out-of-sync with the cluster itself: -
kubectl version
Client Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.11", GitCommit:"637c7e288581ee40ab4ca210618a89a555b6e7e9", GitTreeState:"clean", BuildDate:"2018-11-26T14:38:32Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.7+IKS", GitCommit:"498bc5434e4bdc2dafddf57b2e8496f1cbd054bc", GitTreeState:"clean", BuildDate:"2019-02-01T08:10:15Z", GoVersion:"go1.10.7", Compiler:"gc", Platform:"linux/amd64"}
Initially, I assumed (!) that it was covered by the IBM Cloud Plugins: -
Setting up the CLI and API
and checked my plugins: -
ibmcloud plugin list
Listing installed plug-ins...
Plugin Name Version Status
cloud-functions/wsk/functions/fn 1.0.29
container-registry 0.1.368
container-service/kubernetes-service 0.2.53 Update Available
dev 2.1.15
sdk-gen 0.1.12
This appeared to confirm my suspicion so I updated the IKS plugin: -
ibmcloud plugin update kubernetes-service
Plug-in 'container-service/kubernetes-service 0.2.53' was installed.
Checking upgrades for plug-in 'container-service/kubernetes-service' from repository 'IBM Cloud'...
Update 'container-service/kubernetes-service 0.2.53' to 'container-service/kubernetes-service 0.2.61'
Attempting to download the binary file...
23.10 MiB / 23.10 MiB [=====================================================================================================================================================] 100.00% 9s
24224568 bytes downloaded
Updating binary...
OK
The plug-in was successfully upgraded.
ibmcloud plugin list
Listing installed plug-ins...
Plugin Name Version Status
sdk-gen 0.1.12
cloud-functions/wsk/functions/fn 1.0.29
container-registry 0.1.368
container-service/kubernetes-service 0.2.61
dev 2.1.15
BUT kubectl continued to show as back-level: -
kubectl version
Client Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.11", GitCommit:"637c7e288581ee40ab4ca210618a89a555b6e7e9", GitTreeState:"clean", BuildDate:"2018-11-26T14:38:32Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.7+IKS", GitCommit:"498bc5434e4bdc2dafddf57b2e8496f1cbd054bc", GitTreeState:"clean", BuildDate:"2019-02-01T08:10:15Z", GoVersion:"go1.10.7", Compiler:"gc", Platform:"linux/amd64"}
Therefore, I chose to reinstall kubectl etc. as per this: -
( specifically using Homebrew, as I'm running on macOS )
brew install kubernetes-cli
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/core).
==> New Formulae
cafeobj homeassistant-cli re-flex riff
==> Updated Formulae
go ✔ cfengine closure-compiler couchdb dartsim dhex fx node-build pulumi
apache-arrow cflow cmark-gfm cpprestsdk davix dialog git-lfs numpy shadowsocks-libev
axel cfr-decompiler cointop cproto dcd diffoscope godep openssl@1.1 ship
azure-cli chakra collector-sidecar crc32c ddrescue diffstat grafana pandoc-citeproc siege
bzt check_postgres conan cryptominisat deark digdag kube-ps1 passenger
calicoctl checkstyle configen cscope debianutils elektra kustomize pgweb
cdk chkrootkit consul-template czmq deja-gnu fabio libtensorflow pre-commit
cdogs-sdl cli53 coturn darcs deployer flake8 nginx protoc-gen-go
==> Downloading https://homebrew.bintray.com/bottles/kubernetes-cli-1.13.3.mojave.bottle.tar.gz
######################################################################## 100.0%
==> Pouring kubernetes-cli-1.13.3.mojave.bottle.tar.gz
Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /usr/local
Could not symlink bin/kubectl
Target /usr/local/bin/kubectl
already exists. You may want to remove it:
rm '/usr/local/bin/kubectl'
To force the link and overwrite all conflicting files:
brew link --overwrite kubernetes-cli
To list all files that would be deleted:
brew link --overwrite --dry-run kubernetes-cli
Possible conflicting files are:
/usr/local/bin/kubectl -> /Applications/Docker.app/Contents/Resources/bin/kubectl
==> Caveats
Bash completion has been installed to:
/usr/local/etc/bash_completion.d
zsh completions have been installed to:
/usr/local/share/zsh/site-functions
==> Summary
🍺 /usr/local/Cellar/kubernetes-cli/1.13.3: 207 files, 43.7MB
Notice that it did NOT replace kubectl as it was already there :-)
So I chose to remove the existing kubectl : -
rm `which kubectl`
and then re-link: -
brew link kubernetes-cli
I then checked the version: -
kubectl version
Client Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.3", GitCommit:"721bfa751924da8d1680787490c54b9179b1fed0", GitTreeState:"clean", BuildDate:"2019-02-04T04:48:03Z", GoVersion:"go1.11.5", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.7+IKS", GitCommit:"498bc5434e4bdc2dafddf57b2e8496f1cbd054bc", GitTreeState:"clean", BuildDate:"2019-02-01T08:10:15Z", GoVersion:"go1.10.7", Compiler:"gc", Platform:"linux/amd64"}
so now kubectl is at a later version than the cluster ....
Let's see how it goes ....
*UPDATE*
I then read this: -
If you use a kubectl CLI version that does not match at least the major.minor version of your clusters, you might experience unexpected results. Make sure to keep your Kubernetes cluster and CLI versions up-to-date.
here: -
Setting up the CLI and API
and realised that the page actually includes a download link for the right major/minor version ( 11.7 ) kubectl for macOS.
I downloaded this and replaced the existing version: -
mv ~/Downloads/kubectl /usr/local/bin/
and then validated the versions: -
kubectl version
Client Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.7", GitCommit:"65ecaf0671341311ce6aea0edab46ee69f65d59e", GitTreeState:"clean", BuildDate:"2019-01-24T19:32:00Z", GoVersion:"go1.10.7", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.7+IKS", GitCommit:"498bc5434e4bdc2dafddf57b2e8496f1cbd054bc", GitTreeState:"clean", BuildDate:"2019-02-01T08:10:15Z", GoVersion:"go1.10.7", Compiler:"gc", Platform:"linux/amd64"}
*UPDATE*
I then read this: -
If you use a kubectl CLI version that does not match at least the major.minor version of your clusters, you might experience unexpected results. Make sure to keep your Kubernetes cluster and CLI versions up-to-date.
here: -
Setting up the CLI and API
and realised that the page actually includes a download link for the right major/minor version ( 11.7 ) kubectl for macOS.
I downloaded this and replaced the existing version: -
mv ~/Downloads/kubectl /usr/local/bin/
and then validated the versions: -
kubectl version
Client Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.7", GitCommit:"65ecaf0671341311ce6aea0edab46ee69f65d59e", GitTreeState:"clean", BuildDate:"2019-01-24T19:32:00Z", GoVersion:"go1.10.7", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.7+IKS", GitCommit:"498bc5434e4bdc2dafddf57b2e8496f1cbd054bc", GitTreeState:"clean", BuildDate:"2019-02-01T08:10:15Z", GoVersion:"go1.10.7", Compiler:"gc", Platform:"linux/amd64"}
which now match ( major/minor ).
Nice !
Friday, 22 February 2019
End-to-End Hyper Protection of Data on the IBM Cloud
Finally ( for now ), there's this one: -
Learn how the IBM Cloud security portfolio is helping clients achieve continuous security for cloud applications while protecting data in every form—at rest, in transit and in use. You will see hands-on demos on: 1) IBM Hyper Protect Services - Key management backed by a dedicated cloud Hardware Security Module (HSM) for customers looking for complete control over data encryption keys and HSMs; 2) IBM Hyper Protect DBaaS - Industry-leading data confidentiality that allows data owners to have complete control over their data by preventing cloud operator access, backed by unparalleled vertical scale and performance; and 3) IBM Data Shield - Data in use protection for sensitive workloads.
https://myibm.ibm.com/events/think/all-sessions/session/7994A
Learn how the IBM Cloud security portfolio is helping clients achieve continuous security for cloud applications while protecting data in every form—at rest, in transit and in use. You will see hands-on demos on: 1) IBM Hyper Protect Services - Key management backed by a dedicated cloud Hardware Security Module (HSM) for customers looking for complete control over data encryption keys and HSMs; 2) IBM Hyper Protect DBaaS - Industry-leading data confidentiality that allows data owners to have complete control over their data by preventing cloud operator access, backed by unparalleled vertical scale and performance; and 3) IBM Data Shield - Data in use protection for sensitive workloads.
https://myibm.ibm.com/events/think/all-sessions/session/7994A
Security and Flexibility in the IBM Cloud: A Deep-Dive into IBM Hyper Protect Services
And there's more: -
In the last few years, there have been a lot of large-scale data leaks by major companies revealed in the news. You wouldn't want this to be you. In this session, we’ll take a deep look into how IBM Hyper Protect Services can protect sensitive personal information and prevent against the attack vectors used to compromise these systems. We will take you through Hyper Protect DBaaS, offering secure databases on-demand, as well as Hyper Protect Crypto Services, providing secure cryptographic operations. Including demos and discussion, we'll see how new cloud services acting as always-encrypted platforms can help.
https://myibm.ibm.com/events/think/all-sessions/session/7629A
In the last few years, there have been a lot of large-scale data leaks by major companies revealed in the news. You wouldn't want this to be you. In this session, we’ll take a deep look into how IBM Hyper Protect Services can protect sensitive personal information and prevent against the attack vectors used to compromise these systems. We will take you through Hyper Protect DBaaS, offering secure databases on-demand, as well as Hyper Protect Crypto Services, providing secure cryptographic operations. Including demos and discussion, we'll see how new cloud services acting as always-encrypted platforms can help.
https://myibm.ibm.com/events/think/all-sessions/session/7629A
Protect Your Data and Code in the Cloud with IBM Hyper Protect Services
And from one of our Senior Technical Staff Members, Angel Nunez Mencias: -
Keeping your data and code protected while deployed in the cloud is not an easy task since the hardware and system administrators are not under your control. With IBM Hyper Protect Services, code and data is protected from any access by technology, so there is no need to trust external system admins. During this season, the chief architect of Hyper Protect will present the underlying technology and how the existing set of Hyper Protect Services leverage it today. He will also show how these services are used today to protect end-to-end solutions, and what additional services are being considered for the future.
https://myibm.ibm.com/events/think/all-sessions/session/3140A
Keeping your data and code protected while deployed in the cloud is not an easy task since the hardware and system administrators are not under your control. With IBM Hyper Protect Services, code and data is protected from any access by technology, so there is no need to trust external system admins. During this season, the chief architect of Hyper Protect will present the underlying technology and how the existing set of Hyper Protect Services leverage it today. He will also show how these services are used today to protect end-to-end solutions, and what additional services are being considered for the future.
https://myibm.ibm.com/events/think/all-sessions/session/3140A
Tech Talk: Leveraging IBM Z Security in the Cloud with IBM Cloud Hyper Protect Services
My IBM colleague, Dr Chris Poole, presented upon this: -
Tech Talk: Leveraging IBM Z Security in the Cloud with IBM Cloud Hyper Protect Services
at IBM Think last week.
His most excellent session is here: -
Thinking about how to make your cloud-based applications compliant with GDPR and other regulations? Need data-at-rest encryption but don’t want to refactor? Try IBM Hyper Protect Services! In this talk, you’ll learn about Hyper Protect Crypto Services for secure key storage, and Hyper Protect DBaaS for an encrypted MongoDB or PostgreSQL data layer.
https://myibm.ibm.com/events/think/all-sessions/session/8110A
Enjoy !
Tech Talk: Leveraging IBM Z Security in the Cloud with IBM Cloud Hyper Protect Services
at IBM Think last week.
His most excellent session is here: -
Thinking about how to make your cloud-based applications compliant with GDPR and other regulations? Need data-at-rest encryption but don’t want to refactor? Try IBM Hyper Protect Services! In this talk, you’ll learn about Hyper Protect Crypto Services for secure key storage, and Hyper Protect DBaaS for an encrypted MongoDB or PostgreSQL data layer.
https://myibm.ibm.com/events/think/all-sessions/session/8110A
Enjoy !
Wednesday, 20 February 2019
MainframerZ meetup at Lloyds - Tuesday 19 March 2019 - See you there
Having recently moved into the IBM Z development organisation, as mentioned before: -
New day, new job - more of the same, but in a VERY good way
I'm now working in a new area, with a new ( to me ) technology, brining what I know - Linux, Containers, Kubernetes etc.
And .... thanks to the MainframerZ community, I have the perfect opportunity to talk about what I do.
Lloyds Banking Group (LBG) have kindly invited us to bring the Community to them, hosting a Meet-up at their offices in London on Tuesday 19 March 2019.
I'm totally looking forward to meeting my new community, as I've got a HUGE amount to learn about the IBM Z and LinuxOne platforms, and the workloads that our clients are looking to host.
The details are on Meetup here: -
MainframerZ meetup at Lloyds
See you there 😀
Subscribe to:
Posts (Atom)
Note to self - Firefox and local connections
Whilst trying to hit my NAS from Firefox on my Mac, I kept seeing errors such as:- Unable to connect Firefox can’t establish a connection t...
-
Error "ldap_sasl_interactive_bind_s: Unknown authentication method (-6)" on a LDAPSearch command ...Whilst building my mega Connections / Domino / Portal / Quickr / Sametime / WCM environment recently, I was using the LDAPSearch command tha...
-
Having created a new user on an Ubuntu 16.04 boxen, I started seeing this: - Received disconnect from 192.168.3.123 port 22:2: Too many au...
-
I'm tinkering with a tool that uses pip and python, and was seeing: - zsh: /usr/local/bin/pip: bad interpreter: /usr/bin/python: no such...


