helm部署单节点redis

2022年6月9日10:26:32

1. 下载

[root@master helm]# helm fetch stable/redis
[root@master helm]# ls
redis-1.1.15.tgz
[root@master helm]# tar -xvf redis-1.1.15.tgz
[root@master helm]# cd redis
[root@master redis]# ls
Chart.yaml  README.md  templates  values.yaml

2. 创建StorageClass

[root@master redis]# cat <<EOF> redis-data-sc.yaml 
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: redis-data
provisioner: fuseim.pri/ifs
EOF

[root@master redis]# kubectl create -f redis-data-sc.yaml

3. 自定义value配置文件

[root@master redis]# cat <<EOF> my-values.yaml
serviceType: NodePort
redisPassword: www19930327
persistence:
  storageClass: redis-data
  size: 1Gi
EOF

4. 安装

[root@master redis]# helm install --name redis -f my-values.yaml . --namespace course
NAME:   redis
LAST DEPLOYED: Wed Dec  4 16:22:36 2019
NAMESPACE: course
STATUS: DEPLOYED

RESOURCES:
==> v1/PersistentVolumeClaim
NAME         STATUS  VOLUME                                    CAPACITY  ACCESS MODES  STORAGECLASS  AGE
redis-redis  Bound   pvc-bb4bd624-f30c-47fa-8df2-78985e97bf40  1Gi       RWO           redis-data    1s

==> v1/Pod(related)
NAME                         READY  STATUS             RESTARTS  AGE
redis-redis-588db75c8-mqm5k  0/1    ContainerCreating  0         1s

==> v1/Secret
NAME         TYPE    DATA  AGE
redis-redis  Opaque  1     1s

==> v1/Service
NAME         TYPE      CLUSTER-IP    EXTERNAL-IP  PORT(S)         AGE
redis-redis  NodePort  10.107.145.8  <none>       6379:31602/TCP  1s

==> v1beta1/Deployment
NAME         READY  UP-TO-DATE  AVAILABLE  AGE
redis-redis  0/1    1           0          1s


NOTES:
Redis can be accessed via port 6379 on the following DNS name from within your cluster:
redis-redis.course.svc.cluster.local
To get your password run:

    REDIS_PASSWORD=$(kubectl get secret --namespace course redis-redis -o jsonpath="{.data.redis-password}" | base64 --decode)

To connect to your Redis server:

1. Run a Redis pod that you can use as a client:

   kubectl run --namespace course redis-redis-client --rm --tty -i \
    --env REDIS_PASSWORD=$REDIS_PASSWORD \
   --image bitnami/redis:4.0.8-r2 -- bash

2. Connect using the Redis CLI:

  redis-cli -h redis-redis -a $REDIS_PASSWORD

helm install redis stable/redis --version 1.1.15 -f my-values.yaml --namespace default

5. 外网连接

[root@master redis]# kubectl get pods -n course
NAME                          READY   STATUS    RESTARTS   AGE
redis-redis-588db75c8-mqm5k   1/1     Running   0          28s
[root@master redis]# kubectl get svc -n course
NAME          TYPE       CLUSTER-IP     EXTERNAL-IP   PORT(S)          AGE
redis-redis   NodePort   10.107.145.8   <none>        6379:31602/TCP   37s

使用外网ip +31602,密码是www19930327连接

6. 内网连接

如果服务部署在一个集群内,使用内网连接,使用CLUSTER-IP + 内网端口连接
10.107.145.8:6379

  • 作者:wnfee
  • 原文链接:https://blog.csdn.net/qq_38983728/article/details/103388772
    更新时间:2022年6月9日10:26:32 ,共 2176 字。