女人荫蒂被添全过程13种图片,亚洲+欧美+在线,欧洲精品无码一区二区三区 ,在厨房拨开内裤进入毛片

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

K8S學習教程(二):在 PetaExpress KubeSphere容器平臺部署高可用 Redis 集群

jf_57681485 ? 來源:jf_57681485 ? 作者:jf_57681485 ? 2024-07-03 15:30 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言

Redis 是在開發過程中經常用到的緩存中間件,為了考慮在生產環境中穩定性和高可用,Redis通常采用集群模式的部署方式。

在制定Redis集群的部署策略時,常規部署在虛擬機上的方式配置繁瑣并且需要手動重啟節點,相較之下,使用 PetaExpress 提供的

Kubernetes(k8s) 服務 進行 Redis 集群的部署,則展現出了顯著的優勢:

1、安裝便捷:使用鏡像或者 yaml 配置文件即可一件安裝,極大地簡化了安裝流程

2、縮擴容方便:在 擴容 、 縮容 方面的優點一鍵伸縮,無需復雜的配置和繁瑣的步驟

3、智能自動調度:容器意外掛掉后能夠迅速進行自動調度重啟和資源分配

4、高效且穩定: Kubernetes 在整個集群上進行調度,只要整個集群不掛掉總會調度到合適節點重啟容器服務

閱讀全文,后面告訴你怎么免費白拿紅包

在 PetaExpress KubeSphere容器平臺部署 Kubernetes集群

在 Peta Express 中部署 Kubernetes 非常簡單,直接使用 Peta Express 中內置的 QKE 即可,登錄到 Peta Express 控制臺,在產品與服務中找到 AppCenter 控制臺 → 應用中心

wKgZomaE_LWAIzZtAACo5pTAtaY093.png

wKgaomaE_e6ANtisAADZ95q5nU0866.jpg

找到 QKE 立即部署即可。

wKgaomaE_LyAEfSSAAJiyIgwpvs755.png

wKgZomaE_fCAZBiLAAI8Li06Z9g040.jpg

按照提示輸入名稱,選擇集群規模等信息,直接提交就行了。但需要注意集群的配置,如果是開發測試可以選擇 “基礎型開發環境” 或 “企業型測試環境”,如果是生產的話則可以選擇 “基礎型生產環境” 或 “企業型生產環境”,也可以自定義集群規模和HA。

wKgZomaE_MOAKqGfAAEvz12OjTg619.png

wKgaomaE_fGAKhD_AAG4R7Gx8os964.jpg

根據集群的規模,部署時間大致2分鐘到10分鐘不等,還是非常快的。部署完 Kubernetes, 接下來我們就可以開始進入正題 安裝 Redis 了。

安裝 Redis 集群

我這里新建了一個 test-project 的項目空間來做 Redis 集群所有安裝資源的放置,后續在 DNS 上會用到項目空間名稱,會標注這一部分,需要注意用自己的項目空間名。

Redis 集群的安裝流程大致分為以下幾個關鍵步驟:

①配置 redis.conf 字典;

②創建 redis 服務;

③容器組配置;

④存儲設置;

⑤高級設置。

接下來,我們將從第一步開始,逐步完成 Redis 集群的安裝和配置過程。

配置 redis.conf 字典

在項目空間的 配置 → 配置字典 → 創建 進行配置字典的創建。

wKgaomaE_N6AWY1yAAHI5pADe1g312.png

wKgZomaE_fGAT4znAAEDkgT9fTs119.jpg

名稱就叫 redis-conf 然后下一步 添加鍵值對數據。

wKgaomaE_OSATmH3AAGwcqRIQvM766.png

wKgaomaE_fKATkiRAADtMtJBaCM602.jpg

key 值的內容為 redis.conf , value 值為:

創建 Redis 服務

在項目空間的 應用負載 → 工作負載 → 有狀態副本集 → 創建 進行 Redis 服務的創建。

wKgZomaE_OuAfMkPAAPtd8yXZR8981.png

wKgZomaE_fOAHvRfAAFrOmGJ6UE400.jpg

基本設置里名稱就叫 redis-cluster 然后進行重頭戲,下一步的 容器組配置 。

容器組配置

這一步的核心就是配置 Redis 的容器,集群數量我們通常采用三主三從的集群配置,那容器的副本數量就是 6 個,這樣的配置不僅保證了系統的穩定性,也提升了數據的安全性。

wKgaomaE_PCAUSPuAAJGJM4LrfE062.png

wKgaomaE_fSAHw6fAAFTW9P_VVQ727.jpg

容器組副本數量調到 6 個,點擊添加容器。

wKgZomaE_fWAOPOGAAHzm7Vao8g233.jpg

wKgaomaE_PaAKWmcAAVHyD9WPN4837.png


鏡像選擇 docker hub 中 redis ,并選擇使用默認端口CPU 和內存可以選擇性預留,如果不預留就是調度公共資源。

wKgZomaE_PuACVQnAAJ7EJ58Yus680.png

wKgZomaE_faAYq62AAF9sprVauE373.jpg

選擇 使用默認端口 的話下面的端口設置就是如上圖一樣都會使用 6379 ,還有就是配置啟動命令。

如上圖配置:

命令: redis-server

參數: /etc/redis/redis.conf

參數指向的就是之前字典配置的內容,但是需要下一步 存儲設置 里進行配置字典才能使用。

wKgZomaE_QGAWOtSAAJTRT6SGCQ399.png

wKgaomaE_feACsLAAAFe8b2U0tc726.jpg

其他內容沒有什么需要配置的,選擇對勾完成容器配置。

wKgaomaE_QaAbhYGAAKGqQblRlY358.png

wKgZomaE_feAPvDyAAGVXjsfLeg875.jpg

更新策略就是推薦的 滾動更新 ,其他也沒什么需要修改的,點擊下一步配置存儲設置 。
存儲設置

在這一步有兩個操作

添加存儲卷模板

掛載配置字典或保密字典

wKgaomaE_QyAHyE8AAQ-cVB1wiA498.png

wKgaomaE_fiAb3GuAAGQB0ZUoXA131.jpg

**添加存儲卷模板**

PVC 名稱前綴:redis-pvc

容量:10G

掛載路徑:

權限:讀寫

地址:/data

主要是掛載路徑選好,配置好后點擊對勾完成配置

wKgaomaE_QyAHyE8AAQ-cVB1wiA498.png

wKgZomaE_fmALPIgAAGpx6R3nRo427.jpg

掛載配置字典或保密字典

這一步是掛載我們之前配置的字典 redis-conf ,也是我們 redis 啟動命令的參數內容。

wKgaomaE_RqAVLwWAASPxyGBU3E214.png

wKgaomaE_fqAGrgCAAEz4SZrWsM758.jpg

選擇 redis 的配置字典。

wKgaomaE_R-AbPXYAAIUExAUKCI450.png

wKgZomaE_fuAMeEuAAE5v0HRkkU712.jpg

掛載權限為: 只讀 ,地址為: /etc/redis ;跟上面的命令參數的配置相對應。

wKgaomaE_SSAIMh6AAIcSqwiN4M591.png

wKgaomaE_f2AaSlBAAE9wIV74Uc848.jpg

特定鍵選擇 redis.conf 后面同名 redis.conf ,完成后點擊對勾回到存儲設置。配置好后就入上圖,點擊下一步進入最后的高級設置。

wKgZomaE_SqAaKM3AAIpJbnyNZo819.png

wKgZomaE_f-ARO6wAAHWqOkwQB8105.jpg

高級設置 里是一些額外配置,可以根據自己場景選擇調整配置,調成完成后點擊 創建 進行 Redis 集群容器的創建。

初始化 Redis 集群

創建完 Redis 服務后 在項目空間的 應用負載 → 服務 → 指定redis服務 進入 redis 服務詳情,詳情如下圖:

wKgaomaE_TGAArnFAATvZjug_e4721.png

wKgaomaE_gCAQQvXAAFCsE4lgY0745.jpg

6 個 redis 的容器組都啟動成功了,接下來就是初始化集群;因為我們配置的 redis 的服務是 有狀態服務 (Headless) 所以訪問模式可以通過內部 DNS,訪問格式是:(容器名稱).( 容器 DNS).svc.cluster.local。

wKgaomaE_TiAZXTaAAIo0vqakhY255.png

wKgZomaE_gGAUsNyAAJUKrrulbA180.jpg

按上圖示例 比如訪問集群 1 節點訪問地址就是 redis-cluster-v1-1 加 DNS 地址 redis-cluster.test-project 加svc.cluster.local ,完整地址如下:

1

redis-cluster-v1-

1

.redis-cluster.test-project.svc.cluster.local

2

在 redis 集群的非第一節點的其他節點終端內通過這個地址進行訪問驗證他們是否互通,進入 3 節點的終端,如下圖:

wKgZomaE_USAfLThAAXfCTuP2-c964.png

wKgaomaE_gGAWK5jAAGuW-oXgwI086.jpg

進入終端,執行命令:

如果能如下圖一樣跳轉到 v1-1 的節點上就代表這兩個節點互通。

1 redis-cli -h redis-cluster-v1-1.redis-cluster.test-project.svc.clusterredis.local

2

如果能如下圖一樣跳轉到 v1-1 的節點上就代表這兩個節點互通。

wKgZomaE_UuAIi5rAANVsLBvp3s411.png

wKgZomaE_gKAX45DAADUwzdgls0535.jpg

執行命令: cluster info 查看節點的集群情況。

wKgaomaE_VCAVd4xAAMt6dCfa2c682.png

wKgaomaE_gOAGgK1AAGwokRh4HU238.jpg

主要看上圖的這兩個參數, nodes 為 1 表明當前節點只有 1 個, cluster_size 表明當前沒有 master 節點,所以目前還不是集群結構, info 屬性的詳解在此列出:

cluster_state :ok 狀態表示集群可以正常接受查詢請求。fail 狀態表示,至少有一個哈希槽沒有被綁定(說明有哈希槽沒有被綁定到

任意一個節點),或者在錯誤的狀態(節點可以提供服務但是帶有 FAIL 標記),或者該節點無法聯系到多數 master 節點。

cluster_slots_assigned :已分配到集群節點的哈希槽數量(不是沒有被綁定的數量)。16384 個哈希槽全部被分配到集群節點是集群

正常運行的必要條件。

cluster_slots_ok :哈希槽狀態不是 FAIL 和 PFAIL 的數量。

cluster_known_nodes :集群中節點數量,包括處于握手狀態還沒有成為集群正式成員的節點。

cluster_slots_pfail :哈希槽狀態是 PFAIL 的數量。只要哈希槽狀態沒有被升級到 FAIL 狀態,這些哈希槽仍然可以被正常處理。

PFAIL 狀態表示我們當前不能和節點進行交互,但這種狀態只是臨時的錯誤狀態。

cluster_slots_fail : 哈希槽狀態是 FAIL 的數量。如果值不是 0,那么集群節點將無法提供查詢服務,除非 cluster-require-full

coverage 被設置為 no。

cluster_current_epoch :集群本地 Current Epoch 變量的值。這個值在節點故障轉移過程時有用,它總是遞增和唯一的。

cluster_my_epoch :當前正在使用的節點的 Config Epoch 值。這個是關聯在本節點的版本值。

cluster_size :至少包含一個哈希槽且能夠提供服務的 master 節點數量。

cluster_stats_messages_sent :通過 node-to-node 二進制總線發送的消息數量。

cluster_stats_messages_received :通過 node-to-node 二進制總線接收的消息數量。

IP 地址初始化集群(初始化方案一)

先嘗試使用 ip + port 的方式初始化集群,但是在 Kubernetes( K8s) 中啟動服務 ip 都會變化,所以最終的結果還是要用 DNS 方式進行集群初始化。

執行本步后再想修改為 DNS 地址初始化需要從來一遍,如果不想麻煩的同學可以直接跳過。

記錄 redis 集群的所有 ip+port,初始化命令如下:

wKgaomaE_VmAEQvCAACjEjFm29A263.png

wKgZomaE_gWAOrBuAAGYFoYs_Ac298.jpg

1redis-cli --cluster create 10.233.70.30:6379 10.233.70.32:6379 10.233.90.41:6379 10.233.90.43:6379 10.233.96.47:6

2

進入 redis 集群隨意一個節點的 終端 執行上面的命令。

wKgaomaE_gaAO_teAATXs8lfmDE575.jpg

wKgZomaE_V6ABqb1AAEWF9T6QPc208.png


wKgZomaE_geAbbK8AARZGoImq1I356.jpg

如上圖集群初始化就完成了,再輸入命令 redis-cli 進入命令端,再執行 cluster info 查看集群信息。

wKgZomaE_WSATSdtAAI9Z7pbz0Q982.png

wKgaomaE_giAYi2YAANyvdSRfPY443.jpg


現在我們的集群節點有了 6 個, master 節點也有了三個,集群建立完成,后面的操作選擇 master 節點進行操作。

wKgaomaE_WqAQKGuAAJ_Ix2W9mg510.png

wKgaomaE_gqAcZtVAAMB4qcxMvI027.jpg

在對集群節點進行驗證的時候如果遇到上圖的錯誤 (error) MOVED 2589 10.233.70.30:6379 是因為 redis-cli 沒有開啟集群模式,將命令修改為 redis-cli -c 就切換為集群模式了。

使用內部 DNS 初始化(初始化方案二)

使用 ip 地址的方式在每次 K8s 調度 redis 后 ip 都會發生變化,所以在 K8s 集群中使用 ip 方式初始化集群并不太合適,但是如果使用內部 DNS 直接跟上面一樣初始化集群會出現錯誤,因為 redis 對域名的支持并不太好,所以這時候可以用 Redis-tribe 。

創建 Redis-tribe 服務

在項目空間的 應用負載 → 工作負載 → 創建 → 編輯 YAML 進行Redis-tribe服務的創建。

wKgZomaE_XOAOyvvAAJVgWylp5g674.png

wKgZomaE_g6AN7o4AAIrcN-XP2Y583.jpg

參數

namespace

就寫項目名稱:

wKgaomaE_XyAcgcaAAIN3_dJpDQ348.png

wKgaomaE_g-ATGsfAAF0e4oV6vw461.jpg

具體 YAML 內容如下:

創建好后在容器組內找到 redis-cluster-tools 。

初始化集群

點擊容器名稱進入容器詳情再進入到終端里。

1apiVersion: apps/v1

2kind: Deployment

3metadata:

4namespace: test-project

5labels:

6app: redis-cluster-tools

7name: redis-cluster-tools

8spec:

9replicas: 1

10selector:

11matchLabels:

12app: redis-cluster-tools

13template:

14metadata:

15labels:

16app: redis-cluster-tools

17name: pos-redis

18spec:

19containers:

20- name: pos-redis

21image: sunnywang/redis-tools-ubuntu:v0.5.1

22imagePullPolicy: IfNotPresent

23args:

24- /bin/bash

25- -c

26- sleep 3600

27

創建好后在容器組內找到 redis-cluster-tools 。

wKgaomaE_YeAfvR0AAIRj-7Nk3c182.png

wKgaomaE_hCAeww5AAFaCUpIPvk111.jpg

初始化集群

點擊容器名稱進入容器詳情再進入到終端里。

wKgaomaE_Y2AXSodAAWp8HeHqJU996.png

wKgaomaE_hKAC1XhAADzzvIA2dg710.jpg

先執行以下命令初始化 master 節點,這時候之前的內部 DNS 的域名就有用了。

1 redis-trib.py create dig +short redis-cluster-v1-0.redis-cluster.test-project.svc.cluster.local:6379 `dig +shor

2

執行結果如下圖:

wKgaomaE_aOAbxgkAAJS63dvxw8204.png

wKgZomaE_hOAVMkCAAHwc5Kdlkk098.jpg

接下來給每個 master 節點綁定對應的副本節點,總共三個:

0 節點->3 節點

1redis-trib.py create dig +short redis-cluster-v1-0.redis-cluster.test-project.svc.cluster.local:6379 `dig +shor

2

1 節點->4 節點

1redis-trib.py replicate --master-addr `dig +short redis-cluster-v1-0.redis-cluster.test-project.svc.cluster.local

2

2 節點->5 節點

1redis-trib.py replicate --master-addr `dig +short redis-cluster-v1-1.redis-cluster.test-project.svc.cluster.loca

2

執行結果如下:

wKgZomaE_WSATSdtAAI9Z7pbz0Q982.png

wKgZomaE_hWAfSrBAAT7qNSJcNI855.jpg

驗證

隨便進入一個集群節點的終端,還是執行 cluster info 命令,查看集群信息。

wKgZomaE_bGAZyomAAHgWppHsSY325.png

wKgZomaE_haAYzkwAAG4XXQ4rPw413.jpg

使用基礎命令進行驗證,驗證集群模式的 redis-cli 需要加 -c 。

wKgZomaE_biAHNabAAEnSisrqiM315.png

wKgaomaE_heAIG4cAALB-gJQqYA531.jpg

驗證集群模式可以正常使用。

憑此文章可以去petaexpress官網發工單免費白拿10美元紅包,數量有限先到先得。申領步驟:注冊→登錄→發工單回復“文章網址+文章標題+申請獎勵”

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Redis
    +關注

    關注

    0

    文章

    385

    瀏覽量

    11416
  • kubesphere
    +關注

    關注

    0

    文章

    3

    瀏覽量

    252
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    k8s權限管理指南說明

    我們目前的k8s集群環境里面,只能在master節點上執行kubectl的一些命令,在其他節點上執行就會報錯。
    的頭像 發表于 06-26 14:06 ?114次閱讀

    什么是 K8S,如何使用 K8S

    K8S 的優勢與適用場景 優勢: 跨平臺:支持公有云、私有云、混合云及本地部署。 生態豐富:社區活躍,支持多種插件(如監控、日志、Istio 服務網格)。
    發表于 06-25 06:45

    如何通過Docker和K8S集群實現高效調用GPU

    在有GPU資源的主機安裝,改主機作為K8S集群的Node。
    的頭像 發表于 03-18 16:50 ?438次閱讀
    如何通過Docker和<b class='flag-5'>K8S</b><b class='flag-5'>集群</b>實現高效調用GPU

    搭建k8s需要買幾臺云主機?

    至少3臺。搭建Kubernetes(K8s集群所需的云主機數量因實際需求而異。一個基本的K8s集群通常需要至少3臺云主機,包括1個Master節點和2個Worker節點。如果考慮
    的頭像 發表于 02-20 10:40 ?414次閱讀

    自建K8S集群認證過期

    今天使用kubectl命令查看pod信息時,一直正常運行的k8s集群突然不能訪問了,輸入任何命令都提示以下報錯。
    的頭像 發表于 02-07 12:32 ?377次閱讀

    k8s和docker區別對比,哪個更強?

    部署、擴展、管理和應用生命周期管理能力,可實現可用性和自動伸縮,兩者常結合使用以優化容器化和應用管理。UU云小編將對k8s和docker區
    的頭像 發表于 12-11 13:55 ?651次閱讀

    混合云部署k8s集群方法有哪些?

    混合云部署k8s集群方法是首先需本地與公有云分別建立K8s集群,并確保網絡連接。接著,配置ku
    的頭像 發表于 11-07 09:37 ?492次閱讀

    k8s可以部署私有云嗎?私有云部署全攻略

    Kubernetes(簡稱K8S)可以部署私有云。Kubernetes是一個開源的容器編排引擎,能夠自動化容器部署、擴展和管理,使得應用可
    的頭像 發表于 10-25 09:32 ?462次閱讀

    k8s云原生開發要求

    IO性能。網絡要求穩定,建議使用私有網絡VPC,并配置與Kubernetes兼容的網絡插件。操作系統需與K8s版本匹配,虛擬化平臺支持Docker等。此外,還需關注安全配置,如禁用Swap、調整Sysctl等,以及etcd數據存儲后端的配置。合理配置硬件可確保
    的頭像 發表于 10-24 10:03 ?577次閱讀
    <b class='flag-5'>k8s</b>云原生開發要求

    k8s容器啟動失敗的常見原因及解決辦法

    k8s容器啟動失敗的問題通常出現在開發者使用Kubernetes進行容器編排時,可能的原因有多種,例如:配置錯誤、鏡像問題、資源限制、依賴問題、網絡問題、節點狀態異常、其他因素等,以下是對這些常見原因的詳細分析:
    的頭像 發表于 10-11 10:12 ?713次閱讀

    云服務器部署k8s需要什么配置?

    云服務器部署K8s需要至少2核CPU、4GB內存、50GBSSD存儲的主節點用于管理集群,工作節點建議至少2核CPU、2GB內存、20GBSSD。還需安裝Docker,選擇兼容的Kubernetes版本,配置網絡插件,以及確保系
    的頭像 發表于 10-09 15:31 ?501次閱讀

    納尼?自建K8s集群日志收集還能通過JMQ保存到JES

    推薦采用單獨部署的方案。 、新方案實踐 1.新方案簡介 在京東內網環境部署 K8S 并 收集日志 , kafk
    的頭像 發表于 09-30 14:45 ?428次閱讀

    常用的k8s容器網絡模式有哪些?

    常用的k8s容器網絡模式包括Bridge模式、Host模式、Overlay模式、Flannel模式、CNI(ContainerNetworkInterface)模式。K8s容器網絡模
    的頭像 發表于 09-19 11:29 ?620次閱讀

    如何使用Kubeadm命令PetaExpress Ubuntu系統上安裝Kubernetes集群

    Kubernetes,通常縮寫為K8s,是一個開源的容器編排平臺,旨在自動化容器化應用的部署、擴展和管理。有了Kubernetes,您可以輕
    的頭像 發表于 07-15 13:31 ?1122次閱讀
    如何使用Kubeadm命令<b class='flag-5'>在</b><b class='flag-5'>PetaExpress</b> Ubuntu系統上安裝Kubernetes<b class='flag-5'>集群</b>

    K8S學習教程三:PetaExpress KubeSphere 容器部署 Wiki 系統 wiki.js 并啟用中文全文檢索

    K8S學習教程(三):PetaExpress KubeSphere 容器
    的頭像 發表于 07-08 17:03 ?1001次閱讀
    <b class='flag-5'>K8S</b><b class='flag-5'>學習</b>教程三:<b class='flag-5'>在</b><b class='flag-5'>PetaExpress</b> <b class='flag-5'>KubeSphere</b> <b class='flag-5'>容器</b><b class='flag-5'>部署</b> Wiki 系統 wiki.js 并啟用中文全文檢索
    主站蜘蛛池模板: 沂源县| 报价| 崇阳县| 临沂市| 武穴市| 探索| 建宁县| 德令哈市| 汉川市| 镇沅| 浦东新区| 清镇市| 鄯善县| 农安县| 会同县| 白河县| 呼图壁县| 临颍县| 马尔康县| 深水埗区| 辉南县| 育儿| 江北区| 阜康市| 石楼县| 扶绥县| 临沧市| 金溪县| 九龙县| 长子县| 神池县| 陈巴尔虎旗| 秭归县| 伊金霍洛旗| 福清市| 清徐县| 昭通市| 民县| 婺源县| 军事| 肃南|