Below are the steps
Secret creation
[root@k8s-master ~]# kubectl get secret
NAME TYPE DATA AGE
cic-k8s-role-token-g58q5 kubernetes.io/service-account-token 3 43h
default-token-88zvl kubernetes.io/service-account-token 3 43h
web-ingress-secret kubernetes.io/tls 2 43h
[root@k8s-master ~]# kubectl create secret generic nslogin --from-literal=username='nsroot' --from-literal=password='nsroot'
secret/nslogin created
[root@k8s-master ~]# kubectl get secret
NAME TYPE DATA AGE
cic-k8s-role-token-g58q5 kubernetes.io/service-account-token 3 43h
default-token-88zvl kubernetes.io/service-account-token 3 43h
nslogin Opaque 2 4s
web-ingress-secret kubernetes.io/tls 2 43h
[root@k8s-master ~]# kubectl version
Client Version: version.Info{Major:"1", Minor:"12", GitVersion:"v1.12.2", GitCommit:"17c77c7898218073f14c8d573582e8d2313dc740", GitTreeState:"clean", BuildDate:"2018-10-24T06:54:59Z", GoVersion:"go1.10.4", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"12", GitVersion:"v1.12.2", GitCommit:"17c77c7898218073f14c8d573582e8d2313dc740", GitTreeState:"clean", BuildDate:"2018-10-24T06:43:59Z", GoVersion:"go1.10.4", Compiler:"gc", Platform:"linux/amd64"}
Example YAML
[root@k8s-master deepak]# cat ub.yaml
apiVersion: v1
kind: Pod
metadata:
name: dkub
labels:
app: dkub
spec:
containers:
- name: dkub
image: ubuntu:16.04
command: [ "/bin/bash", "-c", "--" ]
args: [ "while true; do sleep 30; done;" ]
env:
- name: "NS_USER"
valueFrom:
secretKeyRef:
name: nslogin
key: username
# Set user password for Nitro
- name: "NS_PASSWORD"
valueFrom:
secretKeyRef:
name: nslogin
key: password
Output from above yaml
[root@k8s-master deepak]# kubectl get pods | grep dkub
dkub 1/1 Running 0 3m33s
[root@k8s-master deepak]# kubectl exec -it dkub env | grep NS
NS_PASSWORD=nsroot
NS_USER=nsroot