使用Amazon Elasticache构建你的专属内存缓存服务集群
一、前言
1.1?AWS系列產品
Amazon ElastiCache 是一種 Web 服務,讓用戶能夠在云中輕松部署和運行與 Memcached 或 Redis 協議兼容的服務器節點。Amazon ElastiCache 支持您從速度快的托管型內存系統檢索信息,而不是完全依賴于速度較慢、基于磁盤的數據庫,從而提高了 Web 應用程序的性能。本服務可簡化并減少內存環境的管理、監控和運營任務,讓您的工程資源專注于應用程序開發。借助 Amazon ElastiCache,您不僅能夠改善用戶操作和查詢的加載與響應時間,還可降低擴展 Web 應用程序所需的費用。
亞馬遜云科技提供了100余種產品免費套餐。其中,計算資源Amazon EC2首年12個月免費,750小時/月;存儲資源 Amazon S3 首年12個月免費,5GB標準存儲容量;數據庫資源 Amazon RDS 首年12個月免費,750小時;Amazon Dynamo DB 25GB存儲容量 永久免費。?
點擊下方鏈接即可免費體驗6種AWS云原生數據庫產品:
??????https://aws.amazon.com/cn/free/?nc2=h_ql_pr_ft&all-free-tier.sort-by=item.additionalFields.SortRank&all-free-tier.sort-order=asc&awsf.Free%20Tier%20Types=*all&awsf.Free%20Tier%20Categories=*all&trk=e0213267-9c8c-4534-bf9b-ecb1c06e4ac6&sc_channel=el
1.2 選擇Amazon ElastiCache
如圖所示有6種免費體驗AWS云原生數據庫產品和套餐,我們可以按需要選擇點擊其中一個去體驗使用。
體驗前先做一些準備工作,點擊第二個菜單“技術文檔中心”
?1.3 創建AWS賬戶
雖然AWS提供了一系列免費體驗產品和套餐,但是想要使用這些產品,用戶必須注冊AWS賬號
輸入郵箱地址和賬戶名稱,官方會發一封驗證碼郵件到你的個人郵箱
?輸入驗證碼
驗證通過之后,設置密碼
??
選擇地區和輸入姓名等信息
注冊最后一步,需要用個人的VISA/MASTERCARD等外幣信用卡驗證,可能會扣你1美元用于驗證。
?信息輸入之后,恭喜你注冊成功!注冊成功之后可以先查閱下以下兩教程:數據庫免費試用鏈接及上手教程:上手試用
另外AWS經常會舉辦一些在線學習會議:云原生數據庫在線大會:云原生數據庫在線大會
二、獲取AWS訪問秘鑰
在您可以以編程方式或通過 AWS Command Line Interface (AWS CLI) 訪問 ElastiCache 之前,您必須具有 AWS 訪問密鑰。
登錄 AWS 管理控制臺,并通過以下網址打開 IAM 控制臺:https://console.aws.amazon.com/iam/。?
在導航窗格中選擇Users
?
3.設置權限
?
4.選擇要為其創建訪問密鑰的用戶的名稱,然后選擇?Security credentials (安全憑證)?選項卡。
5.在?Access keys(訪問密鑰)部分,選擇?Create access key(創建訪問密鑰)。
?
?
?創建好秘鑰之后,注意要下載和保存好秘鑰
?6.下載和配置AWS CLI
下載并運行適用于 Windows(64 位)的 AWS CLI MSI 安裝程序:https://awscli.amazonaws.com/AWSCLIV2.msi或者,您可以運行?msiexec?命令來運行 MSI 安裝程序。
D:\> msiexec.exe /i https://awscli.amazonaws.com/AWSCLIV2.msi要確認安裝,請打開?Start(開始)菜單,搜索?cmd?以打開命令提示符窗口,然后在命令提示符處使用?aws --version?命令。
D:\> aws --version aws-cli/2.4.5 Python/3.8.8 Windows/10 exe/AMD64 prompt/off看到如下圖所示即表明已下載安裝成功?
三、準備Redis集群
本示例是用Redis來搭載Amazon ElastiCache構建云緩存服務,運行以下命令進行安裝
$ sudo yum install gcc下載并編譯 Redis 客戶端:
$ curl -O http://download.redis.io/redis-stable.tar.gz $ tar xvzf redis-stable.tar.gz $ cd redis-stable $ make distclean # Ubuntu systems only $ make選擇“Redis”作為“集群引擎”。
確認“集群模式已啟用”
配置Redis名稱
將“節點類型”更改為?cache.t2.micro。對于本教程來說,此節點類型沒有問題,但是對于生產集群而言,節點的大小應該取決于您的工作負載,您應該從 m5 或 r5 實例系列開始。
在“分區數量”中,選擇 3。這表示數據將分區到三個不同的主節點中。
在“每個分區的副本數量”中,選擇 2。這表示每個主節點將擁有兩個副本。如果發生故障,將觸發自動故障轉移,其中一個副本將接管主節點的角色。
選擇子網組
選中“具有自動故障轉移功能的多可用區”對應的框
為 Redis 集群選擇安全組
配置備份
維護設置
四、檢查和創建
點擊
也使用 Amazon CL,下面的命令將會一次性創建整個 Redis 集群:
$ aws elasticache create-replication-group \ --replication-group-id elc-tutorial \ --replication-group-description "Tutorial example" \ --num-node-groups 3 \ --cache-node-type cache.t2.micro \ --cache-parameter-group default.redis5.0.cluster.on \ --engine redis \ --engine-version 5.0.3 \ --cache-subnet-group-name sn-value \ --security-group-ids sg-value \ --node-group-configuration \ "ReplicaCount=2,PrimaryAvailabilityZone='us-east-1a',ReplicaAvailabilityZones='us-east-1b','us-east-1c',Slots=0-5460" \ "ReplicaCount=2,PrimaryAvailabilityZone='us-east-1b',ReplicaAvailabilityZones='us-east-1c','us-east-1a',Slots=5461-10921" \ "ReplicaCount=2,PrimaryAvailabilityZone='us-east-1c',ReplicaAvailabilityZones='us-east-1a','us-east-1b',Slots=10922-16383"對于 --security-group-ids 的參數,您需要將 sg-value 替換為您想要使用的安全組的 ID。
而對于 --cache-subnet-group-name 的參數,請將 sn-value 替換為子網組的名稱。如果需要創建子網組,請使用以下命令:
$ aws elasticache create-cache-subnet-group \ --cache-subnet-group-name elc-tutorial-subnet \ --cache-subnet-group-description "Tutorial Subnet Group" \ --subnet-ids sn-idssn-ids 的值必須是子網 ID 列表。
如果您傾向于使用 Amazon API,下面的請求可創建 Redis 集群:
https://elasticache.us-east-1.amazonaws.com/ ?Action=CreateReplicationGroup &CacheParameterGroup=default.redis5.0.cluster.on &Engine=redis &EngineVersion=5.0.3 &ReplicationGroupDescription=Tutorial%20example &ReplicationGroupId=elc-tutorial &NumNodeGroups=3 &PrimaryClusterId=elc-primary &ReplicasPerNodeGroup=2 &Version=<version> &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=<timestamp> &X-Amz-Credential=<credential>需要提供 Version、Timestamp 和 X-Amz-Credential 的值。
復制配置終端節點
使用 redis-cli 實用工具連接 Redis 節點
$ ./src/redis-cli -c -h endpoint通過 PING 測試連接
endpoint:6379> PINGPONG觸發故障轉移
集群模式的一種功能是如果一個節點發生故障,集群可以自我修復。為了測試這一功能,您可以手動觸發故障轉移,這樣將發生以下事件:系統將選擇只讀副本來接管主節點的角色,在系統執行故障轉移后,您就能夠連接到新的主節點。同時,系統會自動添加新的只讀副本,以便集群仍擁有一個主節點和兩個副本。
檢查終端節點的角色
endpoint:6379> ROLE1) "master"...?想要連接到主節點。如果沒有連接到主節點,嘗試其他終端節點。您有三次嘗試機會
找到主節點后:選擇任意節點,單擊“操作”并選擇“故障轉移主節點”。閱讀消息,了解當前正在發生的事件,然后單擊“繼續”。其中一個副本成為新的主節點后,系統將會恢復每個主節點的副本數量。您可以運行 CLUSTER NODES 命令驗證正在發生的事件。
已創建啟用了集群模式的 Redis 集群。節點分散在各個可用區中,并配置有自動故障轉移功能。您還學習了關于 Redis 集群部署的最佳實踐。
五、粉絲福利
亞馬遜云科技專為開發者們打造了多種學習平臺:
①入門資源中心:從0到1 輕松上手云服務,內容涵蓋:成本管理,上手訓練,開發資源。AWS入門_AWS入門使用教程_AWS云計算資源-AWS云服務
② 架構中心:亞馬遜云科技架構中心提供了云平臺參考架構圖表、經過審查的架構解決方案、Well-Architected 最佳實踐、模式、圖標等。AWS架構中心部署說明_AWS云架構白皮書-AWS云服務
③構建者庫:了解亞馬遜云科技如何構建和運營軟件。Amazon Builders' Library
④用于在亞馬遜云科技平臺上開發和管理應用程序的工具包:aws工具下載_aws開發工具_資源下載-AWS云服務
【專屬福利】
福利一:100余種產品免費套餐。其中,計算資源Amazon EC2首年12個月免費,750小時/月;存儲資源 Amazon S3 首年12個月免費,5GB標準存儲容量。
https://aws.amazon.com/cn/free/?nc2=h_ql_pr_ft&all-free-tier.sort-by=item.additionalFields.SortRank&all-free-tier.sort-order=asc&awsf.Free%20Tier%20Types=*all&awsf.Free%20Tier%20Categories=*all&trk=e0213267-9c8c-4534-bf9b-ecb1c06e4ac6&sc_channel=el
福利二:最新優惠大禮包,200$數據與分析抵扣券,200$機器學習抵扣券,200$微服務與應用開發抵扣券。最新優惠活動_云服務器促銷 - 亞馬遜云科技
福利三:解決方案CloudFormation一鍵部署模版庫
云服務解決方案部署快速入門_云服務部署-AWS云服務
總結
以上是生活随笔為你收集整理的使用Amazon Elasticache构建你的专属内存缓存服务集群的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 反驳生命的起点是rna_生命起源之谜:R
- 下一篇: java 计算周_java – Joda