Create NCache Client Deployment in EKS
You need to deploy your client resources inside the Elastic Kubernetes cluster to set up a functional client environment.
Create Client Secret
As your client application is hosted on a private repository on the dockerhub, you need to create a file that contains client login credentials. Once you have this file, you can easily deploy your client application in the EKS cluster without having to provide user ID and password each time. Let's call this file clientsecrets.yaml and its contents are shown below:
kind: Secret apiVersion: v1 metadata: name: ncache-private namespace: ncache data: .dockerconfigjson: >- ... type: kubernetes.io/dockerconfigjson
Execute the following command to run this config inside your Kubernetes environment.
kubectl create -f [dir]/clientsecrets.yaml
Create NCache Client Resource
Now, let's start creating your client resource file that contains information required to deploy and run your client application inside your EKS cluster. Shown below are the contents of this YAML file.
The parameters required to create this YAML file ready to be deployed are mentioned in the Properties table.
kind: Deployment apiVersion: apps/v1beta1 # it depends on the underlying Kubernetes version metadata: name: client spec: replicas: 1 template: metadata: labels: app: client spec: nodeSelector: "beta.kubernetes.io/os": linux containers: - name: client image: # Your docker client image here ports: - name: app-port containerPort: 80 # In case of NCache client installation, add the following remaining ports - name: management-tcp containerPort: 8250 - name: management-http containerPort: 8251 - name: client-port containerPort: 9800
To deploy this file as a pod in the Kubernetes cluster and get it up and running, execute the following command in the AWS command line interface:
kubectl create -f [dir]/client.yaml
The next step is to create an NCache cluster inside your Elastic Kubernetes cluster which is explained in the next chapter.