redis练习系列-01.环境搭建

586 阅读1分钟

本系列教程主要是记录一下自己的 redis 学习和实验过程。

k3s是一款开源、极轻量的Kubernetes发行版,适用在资源有限的环境中运行Kubernetes。本教程实验环境都是在 k3s 中 上搭建的。

安装 multipass(macos 选装)

brew install multipass

先使用 Multipass 来创建一个名为 k3s 的 ubuntu VM, 并为其分配 1GB 的内存和5GB的硬盘。

multipass launch --name k3s --mem 1G --disk 5G
Launched: k3s

等待VM创建完成后,查看 VM 的信息。

multipass list
Name                    State             IPv4             Image
k3s                     Running           192.168.64.2     Ubuntu 20.04 LTS
                                          10.42.0.0
                                          10.42.0.1
                                          172.17.0.1

安装 k3s

先进入 k3s 虚拟机。

multipass shell k3s

接着安装 k3s。

curl -sfL https://get.k3s.io | K3S_KUBECONFIG_MODE=644 sh -

安装好 k3s 之后,使用 kubectl 看看安装是否成功。

ubuntu@k3s:~$ kubectl get node
NAME   STATUS   ROLES                  AGE   VERSION
k3s    Ready    control-plane,master   17h   v1.21.5+k3s2

安装 docker

curl -sSL https://get.daocloud.io/docker | sh

将当前用户添加进 docker 用户组

sudo groupadd docker          #添加docker用户组
sudo gpasswd -a $USER docker  #将当前用户添加至docker用户组
newgrp docker                 #更新docker用户组

查看是否安装成功

docker ps

运行 redis

拉取 redis 镜像。

docker pull redis

创建配置文件。

vim redis-config.yaml

粘贴下面的配置内容到刚才创建的配置文件中。

apiVersion: v1
kind: PersistentVolume
metadata:
  name: redis
  namespace: default
  labels:
    type: local
spec:
  storageClassName: manual
  capacity:
    storage: 1Gi
  accessModes:
    - ReadWriteOnce
  hostPath:
    path: "/home/ubuntu/data/redis"
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: redis
  namespace: default
spec:
  storageClassName: manual
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 1Gi
---
apiVersion: v1
kind: Service
metadata:
  name: redis
  namespace: default
  labels:
    app: redis
spec:
  type: NodePort
  ports:
    - port: 6379
      targetPort: 6379
      nodePort: 30379
      protocol: TCP
  selector:
    app: redis
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: redis
  namespace: default
spec:
  strategy:
    type: Recreate
  selector:
    matchLabels:
      app: redis
  template:
    metadata:
      labels:
        app: redis
    spec:
      containers:
        - image: redis:latest
          name: redis
          ports:
            - containerPort: 6379
              name: redis
          volumeMounts:
            - name: redis
              mountPath: /data
      volumes:
        - name: redis
          persistentVolumeClaim:
            claimName: redis

然后运行

ubuntu@k3s:~$ kubectl apply -f redis-config.yaml
persistentvolume/redis created
persistentvolumeclaim/redis created
service/redis created
deployment.apps/redis created

连接

在自己的电脑上通过 192.168.64.2@30379 即可访问刚部署好的 redis 服务。