diff --git a/kubernetes/k8s-intro/README.md b/kubernetes/k8s-intro/README.md
new file mode 100644
index 0000000000..37ca5f3686
--- /dev/null
+++ b/kubernetes/k8s-intro/README.md
@@ -0,0 +1,13 @@
+# Kubernetes Java API Sample Code
+
+This module contains sample code used to show how to use the Kubernetes client Java API.
+
+Before running those samples, make sure that your environment is correctly configured to access
+a working Kubernetes cluster.
+
+An easy way to check that everything is working as expected is issuing any *kubectl get* command:
+
+```shell
+$ kubectl get nodes
+```
+If you get a valid response, then you're good to go.
\ No newline at end of file
diff --git a/kubernetes/k8s-intro/pom.xml b/kubernetes/k8s-intro/pom.xml
new file mode 100644
index 0000000000..26d6a872d4
--- /dev/null
+++ b/kubernetes/k8s-intro/pom.xml
@@ -0,0 +1,35 @@
+
+ 4.0.0
+
+ com.baeldung
+ kubernetes-parent
+ 1.0.0-SNAPSHOT
+
+ k8s-intro
+ 0.0.1-SNAPSHOT
+
+
+
+ io.kubernetes
+ client-java
+ 11.0.0
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.8.1
+
+
+ 1.8
+ 1.8
+
+
+
+
+
\ No newline at end of file
diff --git a/kubernetes/k8s-intro/src/main/java/com/baeldung/kubernetes/intro/ListNodes.java b/kubernetes/k8s-intro/src/main/java/com/baeldung/kubernetes/intro/ListNodes.java
new file mode 100644
index 0000000000..b0e540eb3a
--- /dev/null
+++ b/kubernetes/k8s-intro/src/main/java/com/baeldung/kubernetes/intro/ListNodes.java
@@ -0,0 +1,31 @@
+/**
+ *
+ */
+package com.baeldung.kubernetes.intro;
+
+
+import io.kubernetes.client.openapi.ApiClient;
+import io.kubernetes.client.openapi.apis.CoreV1Api;
+import io.kubernetes.client.openapi.models.V1NodeList;
+import io.kubernetes.client.util.Config;
+
+/**
+ * @author Philippe
+ *
+ */
+public class ListNodes {
+
+ /**
+ * @param args
+ */
+ public static void main(String[] args) throws Exception {
+
+ ApiClient client = Config.defaultClient();
+ CoreV1Api api = new CoreV1Api(client);
+ V1NodeList nodeList = api.listNode(null, null, null, null, null, null, null, null, 10, false);
+ nodeList.getItems()
+ .stream()
+ .forEach((node) -> System.out.println(node.getMetadata()));
+ }
+
+}
diff --git a/kubernetes/k8s-intro/src/test/java/com/baeldung/kubernetes/intro/ListNodesLiveTest.java b/kubernetes/k8s-intro/src/test/java/com/baeldung/kubernetes/intro/ListNodesLiveTest.java
new file mode 100644
index 0000000000..84a3efb903
--- /dev/null
+++ b/kubernetes/k8s-intro/src/test/java/com/baeldung/kubernetes/intro/ListNodesLiveTest.java
@@ -0,0 +1,10 @@
+package com.baeldung.kubernetes.intro;
+
+import org.junit.jupiter.api.Test;
+
+class ListNodesLiveTest {
+ @Test
+ void whenListNodes_thenSuccess() throws Exception {
+ ListNodes.main(new String[] {});
+ }
+}
diff --git a/kubernetes/pom.xml b/kubernetes/pom.xml
new file mode 100644
index 0000000000..fe10295e44
--- /dev/null
+++ b/kubernetes/pom.xml
@@ -0,0 +1,13 @@
+
+ 4.0.0
+
+ com.baeldung
+ parent-modules
+ 1.0.0-SNAPSHOT
+
+ kubernetes-parent
+ pom
+
+ k8s-intro
+
+
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 52ebabb727..5c75b19324 100644
--- a/pom.xml
+++ b/pom.xml
@@ -471,7 +471,7 @@
json-path
jsoup
jta
-
+ kubernetes
language-interop
libraries-2