Hi, @Hannah, Follow these steps:
1. Create a Kubernetes cluster: https://www.edureka.co/blog/install-kubernetes-on-ubuntu
2. Set up the Redis master: https://www.edureka.co/community/58783/deployment-controller-single-replica-redis-master-kubernetes
3. Apply the redis master deployment
kubectl apply -f https://k8s.io/examples/application/guestbook/redis-master-deployment.yaml
4. Create Redis master service: https://www.edureka.co/community/58785/application-communication-with-the-redis-master
5. Apply the service:
kubectl apply -f https://k8s.io/examples/application/guestbook/redis-master-service.yaml
6. Create slave deployments, if needed
application/guestbook/redis-slave-deployment.yaml
apiVersion: apps/v1 # for versions before 1.9.0 use apps/v1beta2
kind: Deployment
metadata:
name: redis-slave
labels:
app: redis
spec:
selector:
matchLabels:
app: redis
role: slave
tier: backend
replicas: 2
template:
metadata:
labels:
app: redis
role: slave
tier: backend
spec:
containers:
- name: slave
image: gcr.io/google_samples/gb-redisslave:v3
resources:
requests:
cpu: 100m
memory: 100Mi
env:
- name: GET_HOSTS_FROM
value: dns
# Using `GET_HOSTS_FROM=dns` requires your cluster to
# provide a dns service. As of Kubernetes 1.3, DNS is a built-in
# service launched automatically. However, if the cluster you are using
# does not have a built-in DNS service, you can instead
# access an environment variable to find the master
# service's host. To do so, comment out the 'value: dns' line above, and
# uncomment the line below:
# value: env
ports:
- containerPort: 6379
7. Deploy the application frontend
8. View the application through load balancer
kubectl get service frontend