1. 程式人生 > 其它 >|NO.Z.00257|——————————|CloudNative|——|KuberNetes&中介軟體容器化及helm.V04|------------------------------------------|中介軟體.v04|redis.v5.0.4|環境測試|

|NO.Z.00257|——————————|CloudNative|——|KuberNetes&中介軟體容器化及helm.V04|------------------------------------------|中介軟體.v04|redis.v5.0.4|環境測試|



[CloudNative:KuberNetes&中介軟體容器化及helm.V04]                                             [Applications.KuberNetes] [|容器化中介軟體基本說明|如何部署一個容器到k8s中|k8s下同步docker映象|部署redis-operator|redis.v5.0.4|]








一、redis實驗操作
### --- 檢視建立的redis.pod和service
~~~     準備引數

[root@k8s-master01 redis]# kubectl get po -n ratel-test1 -owide
NAME                                READY   STATUS    RESTARTS   AGE   IP              NODE           NOMINATED NODE   READINESS GATES
redis-single-node-df78c5db8-jlbcn   1/1     Running   0          20m   172.25.92.115   k8s-master02   <none>           <none>
### --- 用來進入redis中操作redis-cli
~~~     redis-cli可以通過pod的IP地址連線,也可以通過service的IP地址連線

[root@k8s-master01 redis]# kubectl get svc -n ratel-test1 -owide
NAME                TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)    AGE   SELECTOR
redis-single-node   ClusterIP   10.107.230.191   <none>        6379/TCP   45m   app=redis-single-node
二、通過service名稱連線redis
### --- 進入到redis容器中:通過service或Pod的IP地址去連線redis
~~~     以上這種方式不會去直接連線,因為pod和service的IP地址會發生變化的,
~~~     一般我們都會通過service的名稱去連線

[root@k8s-master01 redis]# kubectl exec -ti redis-single-node-df78c5db8-jlbcn  -n ratel-test1 -- sh
/data # redis-cli -h 172.25.92.115  // 通過pod的IP地址連線
172.25.92.115:6379> 
/data # redis-cli -h 10.107.230.191 // 通過service的IP地址連線
10.107.230.191:6379> set a b         // 實驗操作                       
OK
10.107.230.191:6379> get a
"b"
### --- 進入到redis容器中:通過service名稱去連線redis:同一個namespace
~~~     因為我們這個redis的pod和對應的service在同一個namespace下,
~~~     所以直接指定service的名稱即可

[root@k8s-master01 redis]# kubectl exec -ti redis-single-node-df78c5db8-jlbcn  -n ratel-test1 -- sh
/data # redis-cli -h redis-single-node
redis-single-node:6379> keys *
1) "a"
redis-single-node:6379> get a
"b"
### --- 進入redis容器中:通過service名稱去連線redis:
~~~     若是pod和應用pod不在同一個namespace下

[root@k8s-master01 redis]# kubectl exec -ti redis-single-node-df78c5db8-jlbcn  -n ratel-test1 -- sh
/data # redis-cli -h redis-single-node.ratel-test1
redis-single-node.ratel-test1:6379> keys *
1) "a"
redis-single-node.ratel-test1:6379> get a
"b"

三、刪除實驗操作記錄
### --- 刪除redis單節點pod
### --- 刪除service和ep和configmap

[root@k8s-master01 redis]# kubectl delete -f redis.yaml -n ratel-test1








===============================END===============================


Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart                                                                                                                                                    ——W.S.Landor



來自為知筆記(Wiz)