helm部署单节点redis

首页 / 新闻资讯 / 正文

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