일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- nginx-media-server
- service
- namespace
- Android
- golang
- android studio
- docker
- Pod
- Shell script
- kubectl
- spring cloud config
- aws
- macos
- HLS
- Kubernetes
- ffmpeg
- Python
- Flutter
- RTMP
- ebpf
- VSCode
- 행정구역분류
- configmap
- wireshark
- deployment
- aws cli
- Windows10
- dart
- Sysinternals
- Java
Archives
- Today
- Total
woonizzooni
kubernetes - redis 실행하기 (개발 환경용) 본문
redis 클러스터 구성은 여기 대상이 아니고,
데이터 유실/삭제가 문제가 되지 않는 환경 (로컬/QA/테스트/개발클러스터 환경 등)에서의 단일 Pod구성의 redis임.
실행 자체의 의미만 있고,
redis 설정, 고가용성 구성 등은 이 곳에서 다루지 않음.
redis.yaml 작성
- Namespace / ConfigMap / Service(노출 위해) / Pod 이상 4개 리소스를 활용하여 다음과 같이 작성.
apiVersion: v1 kind: Namespace metadata: name: redis-ns -- apiVersion: v1 kind: ConfigMap metadata: namespace: redis-ns name: my-redis-config data: redis-config: | maxmemory 20mb maxmemory-policy allkeys-lr --- apiVersion: v1 kind: Service metadata: namespace: redis-ns name: my-redis labels: app: redis spec: selector: app: redis ports: - name: redis protocol: TCP port: 6379 targetPort: 6379 --- apiVersion: v1 kind: Pod metadata: namespace: redis-ns name: my-redis labels: app: redis spec: containers: - name: my-redis image: redis:latest command: - redis-server - "/redis-master/redis.conf" env: - name: MASTER value: "true" ports: - containerPort: 6379 name: redis volumeMounts: - mountPath: /redis-master-data name: data - mountPath: /redis-master name: config volumes: - name: data emptyDir: {} - name: config configMap: name: my-redis-config items: - key: redis-config path: redis.conf |
> 실행하기
$ kubectl apply -f ./redis.yaml
> 다른 워크로드에서 redis접속하기.
'이곳'을 참고하면 쿠버네티스에서의 DNS A/AAA레코드는
my-svc.my-namespace.svc.cluster-domain.example 형식인데
본문의 경우 my-redis.redis-ns.svc.cluster.local:6379 정도가 되겠다.
redis-cli pod를 실행해서 접속해보자.
$ redis-cli -h 주소 -p 6379
$ keys *
$ monitor
..
> 삭제하기
$ kubectl delete -f ./redis.yaml
[참고]
kubernetes.io/ko/docs/tutorials/configuration/configure-redis-using-configmap/
kubernetes.io/ko/docs/concepts/services-networking/dns-pod-service/
'Kubernetes' 카테고리의 다른 글
kubernetes - kubectl JSONPath 사용 예제 (0) | 2020.11.05 |
---|---|
kubernetes - kube-prompt (0) | 2020.11.05 |
Kubernetes - Secret 이용한 환경 설정 (0) | 2020.11.05 |
Kubernetes - ConfigMap 이용한 환경 설정 (redis.conf, nginx.conf, os environment variables 등) (0) | 2020.11.05 |
Kubernetes 다중 클러스터 접근 (Configure Access to Multiple Clusters) (0) | 2020.03.30 |
Comments