1. 程式人生 > >Redis運維利器 -- RedisManager

Redis運維利器 -- RedisManager

Redis運維利器 -- RedisManager

Redis作為一個基於記憶體的可持久化的日誌型、Key-Value資料庫,以其出色的效能表現以及高可用性在許多公司有著舉足輕重的地位。伴隨著業務量的增長,redis叢集的規模不可避免的需要擴大,此時redis叢集的運維成本就成為一個不可忽視的工作內容。

RedisManager作為一個redis一站式管理平臺,它支援redis叢集的建立、管理、監控、手動故障轉移以及預警等功能,對redis叢集做到全方位的保護。它大大降低了redis叢集的運維成本,能做到對叢集的實時監控,在redis出現問題是進行準確的故障排查,亦或者通過分析歷史資料還原 redis 故障時的場景,同時還支援自定義監控規則的告警功能,讓你隨時瞭解redis的執行狀況。

接下來是RedisManager全方位的介紹:

關於RedisManager

它一個開源的redis一站式管理平臺,在redis管理運維方面有著強大的功能以及良好的使用者體驗。 Github地址:https://github.com/ngbdf/redis-manager 。目前RedisManager已經發布了1.0的release版本,修復一些使用者在使用過程中遇到的問題,優化了一些功能邏輯,對一些使用者呼聲比較高的需求(有密碼的redis叢集運維)和redis4.0的新特性(記憶體碎片整理)做了一些支援。具體見release notes:https://github.com/ngbdf/redis-manager/releases

功能總覽

截圖部分包含了 建立模組、管理模組、監控模組、叢集同步、query客戶端的使用,詳情如下:

page

1 建立叢集

建立叢集的方式包含了三種選擇,您可以依據自身的需求選擇物理機安裝, docker 或是 humpback 安裝

create
docker_create

2 管理叢集

管理叢集分為 ClusterManager、NodeManager 兩部分

2.1 ClusterManager

叢集管理主要包括了 slot 遷移、master slave 角色切換、動態配置以及手動整理記憶體碎片。這讓整個平臺真正的具備了運維的功能,我們可以手動進行故障的轉移,手動整理節點記憶體碎片情況(只redis4.0版本且記憶體分配策略為jemalloc時生效),從而保證redis長久穩定的執行。

cluster_manage

2.2 NodeManager

節點管理主要包含了節點的Forget操作,關閉重啟節點等,這是redis叢集擴容縮容的基礎。

node_manage

3 redis監控

監控模組包含了 monitor detail 和 cluster alarm 兩個部分的 內容

3.1 具體監控詳情

具體監控詳情展示了redis最常用的一些指標(包括記憶體佔用率,客戶 端連線數,cache命中率以及每秒的命令數等)

monitor

3.2 slowlog監控

slowlog是影響redis效能的重要原因之一,對於slowlog的監控有
助於我們快速排查redis存在的問題。

slowlog

3.3 叢集報警功能

RedisManager支援通過配置自定義的監控條件對redis進行監控,在觸發監控指標的時候以郵件的形式通知到相關人員。當然您也可以通過拓展AbstractNotifyStrategy介面來定製自己的通知方 式wechat,簡訊等通知方式。

alarm

4 Query客戶端

支援任意型別的 key 查詢,包含 scan功能

query

都說到這裡了相比大家已經對RedisManager有了一個全面的瞭解了,那還在等什麼,快速開始吧。歡迎大家隨時同我們交流,無論是使用過程中遇到的問題還是自己的想法與需求,We Need You!