I was trying to install an application on the Ubuntu18.04 machine and was trying to get GPG Key installed as a pre-requisite.

Btw GPG is the Gnu Privacy Guard and it is an implementation of OpenPGP (Open Pretty Good Privacy). It is an encryption technique that is used in a number of different applications such as code signing for Linux code repositories and source code repositories like GitHub.

— — Issue

I was using the following command provided by the application installation guide.

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 9CDB294B29A5B1E2E00C24C022E8EF3461A50EF6

But it was failing with a time out as below


InfluxDB is an open-source time series database developed by InfluxData. InfluxDB is purpose-built to collect, store, process and visualize metrics and events, specially used lot on the operations monitoring, application metrics, Internet of Things sensor data, and real-time analytics fields.

As of writing InfluDb v2.0.6 is the latest version and InfluxDb has released v2.0.0 around November 2020. Before that they were releasing v1.x.x versions.

I wanted to highlight these versions specifically, since InfluxDb v1.x.x and v2.x.x versions has many differences.

Following articles gives some context on InfluxDB v2 new features.

  1. https://www.influxdata.com/blog/influxdb-2-0-open-source-is-generally-available/
  2. https://www.influxdata.com/blog/introducing-the-next-generation-influxdb-2-0-platform/

Also, need to note InfluxDB got two versions…


Recently I wanted to do a Jenkins deployment using the Jenkins community Helm chart. Also I wanted to use a proper storage mount for my Jenkins storage so that I can make sure my build data is safe.

In Amazon, We can use either EBS or EFS storage for this kind of work. But any EBS mount to work your EC2 instances and Storage should reside on the same AWS availability zone. For a Kubernetes cluster that runs on multiple availability zones, this comes as a bottleneck. …


Recently, I created a Kubernetes 1.18 cluster using Amazon EKS service, following the steps listed in my article https://gvasanka.medium.com/how-to-create-a-kubernetes-cluster-using-amazon-eks-da0911ea62e2

Though the Control plane and worker nodes successfully created, I noticed worker nodes haven't joined with the cluster.

kubectl get nodes and kubectl get pods commands were giving empty results.

EKS cluster overview page also didn’t list the node details.

So I logged in to a worker node machine to figure out what's going on, First validated whether kubelet service is running and it was in a running state.

Then checked on the kubelet logs using the commandjournalctl -u kubelet -f


Kubernetes, also known as K8s, is an open-source system for automating deployment, scaling, and management of containerized applications.

Kubernetes can be deployed on several approaches, also there are a lot of providers who provide Kubernetes as a service.

Public cloud vendors like Amazon, Google, Azure have their own approaches to provide Kubernetes deployments.

In this article, I am trying to explain how we can create Kubernetes deployment using the Amazon EKS service.

Amazon EKS has simplified the Kubernetes cluster creation process and has provided several approaches including simple UI navigation flow to set up the Kubernetes master.

Refer following Amazon…


JMeter API can be used to write JMeter scripts in a programmatic manner. Specially when some test cases written on Java need to be executed as a load script, JMeter API can be utilized.

Here, though my target is not to explain how to use JMeter API, adding the following sample code since it needed me to explain how to read and write to the JMeter context.

First, you need to set up JMeter environment and JMeter Test Plan programmatically. Please refer to https://stackoverflow.com/questions/19147235/how-to-create-and-run-apache-jmeter-test-scripts-from-a-java-program to get an idea on that.

Same as HTTP sampler on StackOverflow example, you can add…


In case, You get the following message while trying to ssh to a remote machine, Don’t panic.

342-MC-C02Y33GKJG5H:bin asankav$ ssh -i ~/cert/AWSApp01.pem ec2-user@14.133.13.26
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ECDSA key sent by the remote host is
SHA256:Q6KQA3z6PiBWeyIA1VBBR12CAun6S80CLbfAuWnzE.
Please contact your system administrator.
Add correct host key in /Users/asankav/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /Users/asankav/.ssh/known_hosts:2
ECDSA host key for 14.133.13.26 has changed and you have requested strict checking.
Host…


Resolve Oracle SQL Developer client DB connection issues ORA-00604: error occurred at recursive SQL level 1
ORA-12705: Cannot access NLS data files or invalid environment specified

I was trying to connect to an oracle 11g database with the Oracle SQL Developer client.

But ended up getting below oracle error.

Status : Failure -Test failed: ORA-00604: error occurred at recursive SQL level 1
ORA-12705: Cannot access NLS data files or invalid environment specified

Please note I was using MacOs Catalina, JDK 1.8 and Oracle Sql Deverloper 19.2.1.247 versions.

After several searches and trying out different approaches, I was able to figure out the following solution. Writing down this note since no proper documentation found to the problem.

Open the SQL Developer product.conf …


Problem:

I was running a Kubernetes cluster(AWS EKS one) with Kubernetes Autoscaler so that Cluster will autoscale according to the resource request within the cluster. Also, the cluster will shrink no of nodes when the load is reduced.

Having Kubernetes Autoscaler has brought great agility to our cluster and It helped us to save money on our cloud bills and also dev efforts.

But when running several workloads together, We noticed sudden pod deletion and replacement to different nodes. We identified an issue that happens during the Kubernetes AutoScaler scale-down process.

Due to the nature of the solution, We…


I was trying to run a simple TestNG test from the IntelliJ Idea as in the below screenshot.

But ended up with the below exception.

org.testng.TestNGException: TestNG by default disables loading DTD from unsecured Urls. If you need to explicitly load the DTD from a http url, please do so by using the JVM argument [-Dtestng.dtd.http=true] at org.testng.xml.TestNGContentHandler.resolveEntity(TestNGContentHandler.java:115) at org.apache.xerces.util.EntityResolverWrapper.resolveEntity(Unknown Source) at org.apache.xerces.impl.XMLEntityManager.resolveEntity(Unknown Source)

The issue was only observed when running on the IDE and test executed with maven without any issue.

My project had the following configurations while running on IntelliJ IDEA 2020.2(Community Edition)

TestNG dependency:

<!-- https://mvnrepository.com/artifact/org.testng/testng -->
<dependency>…

Asanka Vithanage

Software Quality Assurance Professional, Problem Solver, Perfectionist, SOA Tester, Automation Engineer, CI/CD Practitioner, DevOps enthusiast

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store