Azure Redis 系列之 Azure Redis 遷移

    承接上文,接下來我們就來探討一下Azure Redis的遷移問題,Redis本身是提供持久化的方法的,如AOF和RDB,但是在Azure Redis中,AOF和RDB都是隻有Premium版本才支持的功能!所以對於standard和basic的redis來說,需要能有一種更通用的遷移方式,微軟官方並沒有官宣提供Azure Redis遷移的工具,但是redis團隊的一名大佬還是自己寫了一個開源的遷移工具,這次就拿來給大家分享一下!


    這個工具本身也是公開在Github上的,以下是Github的地址,我們可以在這裏下載到遷移工具

    https://github.com/Azure/Azure-China-Migration-Playbook/blob/master/migrate/china-migration-guidance-databases.md


    此方法比較適合Azure跨Region遷移,比如講一個region的redis遷移到另外一個region,下邊來介紹下這個工具如何使用


    首先來介紹下實驗環境:

    1.Azure Redis Standard, region chinanorth,原地址

    2.Azure Redis Standard, region chinanorth,目標地址

    3.工作用laptop一個



    實驗環境很簡單,首先先在之前的地址上下載遷移工具


    在上一節當中,我們已經使用隨機數據生成程序,批量生成了200多萬條數據,可以通過dbsize來查看

    1.png

    

    2.可以看到redis遷移工具下載完成後,主要包含以下內容

    2.png



    3.想要遷移的話很簡單,運行redis-copy命令即可

     .\redis-copy.exe --se mxyredis.redis.cache.chinacloudapi.cn --sa J****= --de mxyredis2.redis.cache.chinacloudapi.cn --da***

    命令格式也很簡單,只需要輸入原地址,原服務器的key,目標地址,目標服務器的key即可

    3.png


    4.    命令行工具遷移時不會有輸出信息,但是在目標redis可以看到數據量一直在增加

4.png



    5.查看本機的資源監視器,可以看到本機和兩臺redis都有連接,而且進出都有流量,這意味着,這個工具的原理是先把數據從原redis下載到本地,然後再上傳到目標redis!並不是直接服務器對服務器直傳的,所以這也代表,遷移的速度會受制於運行遷移工具的機器,所以想要速度快一些的話,最好在Azure上創建VM來運行腳本!實驗也發現,通過公網的傳輸確實速度相對較慢,一小時才傳輸了不到1G數據

    5.png



6.png



    6.傳輸完成

7.png



    7.可以看到兩個節點數據是一致的了!遷移也就完成了

8.png


    當然,需要注意的是,這個工具本身並不支持增量,再次運行的話還會把所有數據全部copy一次,不得不說,美中不足


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章