国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

kubernetes上部署Memcached高可用記錄

bawn / 1905人閱讀

摘要:部署實現(xiàn)高可用常用的兩個工具連接多個,請求轉(zhuǎn)發(fā)單單,互為主輔結(jié)構(gòu)結(jié)構(gòu)主要部署步驟使用啟動個每個容器初始化腳本得到另一個節(jié)點的因為就兩個節(jié)點,不是就是判斷另一個節(jié)點的監(jiān)聽狀態(tài)如果在監(jiān)聽說明是主節(jié)點需要復(fù)制它,否則反之復(fù)制節(jié)點

部署Memcached
memcached實現(xiàn)高可用常用的兩個工具:
1)magent:連接多個memcached,請求轉(zhuǎn)發(fā)
2)repcached:單master單slave,互為主輔
magent+memcached結(jié)構(gòu)

repcache+memcached結(jié)構(gòu)

主要部署步驟(repcache+memcached) 使用statefulset啟動2個memcached
md-5c107eeae9fb1-0                  1/1       Running     0          59s
md-5c107eeae9fb1-1                  1/1       Running     0          49s
每個容器初始化腳本
#得到另一個節(jié)點的HOSTNAME(因為就兩個節(jié)點,不是0就是1)
PARTNER=${HOSTNAME##*-}
if [ "${PARTNER}" = "0" ]; then
        PARTNER=${MY_POD_NAME}-1
fi
if [ "${PARTNER}" = "1" ]; then
        PARTNER=${MY_POD_NAME}-0
fi

#判斷另一個節(jié)點的監(jiān)聽狀態(tài)(如果在監(jiān)聽說明是主節(jié)點需要復(fù)制它,否則反之)

測試
主備切換
//啟動主節(jié)點后狀態(tài)為Listen,設(shè)置同步端口為22222
root@md-5c107eeae9fb1-0:/# memcached -p 11211 -X 22222 -v -d -u root -m 512
root@md-5c107eeae9fb1-0:/# replication: listen
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:11211           0.0.0.0:*               LISTEN      260/memcached
tcp        0      0 0.0.0.0:22222           0.0.0.0:*               LISTEN      260/memcached
tcp6       0      0 :::11211                :::*                    LISTEN      260/memcached

//啟動復(fù)制節(jié)點,同樣設(shè)置同步端口為22222
root@md-5c107eeae9fb1-1:/# memcached -p 11211 -X 22222 -x md-5c107eeae9fb1-0.md-5c107eeae9fb1.itfarm3.svc.cluster.local -v -d -u root -m 512
root@md-5c107eeae9fb1-1:/# replication: connect (peer=10.244.5.50:22222)
replication: marugoto copying
replication: start

//從節(jié)點加入后,主節(jié)點狀態(tài)為accept并取消對22222的監(jiān)聽
root@md-5c107eeae9fb1-0:/# replication: listen
replication: accept
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:11211           0.0.0.0:*               LISTEN      263/memcached
tcp6       0      0 :::11211                :::*                    LISTEN      263/memcached

//kill掉主節(jié)點
root@md-5c107eeae9fb1-0:/# kill 263
replication: cleanup start
replication: close
root@md-5c107eeae9fb1-0:/# replication: cleanup complete

//此時從節(jié)點成Listen狀態(tài),監(jiān)聽復(fù)制端口22222,等待加入
root@md-5c107eeae9fb1-1:/# replication: connect (peer=10.244.5.50:22222)
replication: marugoto copying
replication: start
replication: close
replication: listen
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:11211           0.0.0.0:*               LISTEN      258/memcached
tcp        0      0 0.0.0.0:22222           0.0.0.0:*               LISTEN      258/memcached
tcp6       0      0 :::11211                :::*                    LISTEN      258/memcached
高可用
//啟動2個節(jié)點(一主一備)
md-5c107eeae9fb1-0                  1/1       Running     0          59s
md-5c107eeae9fb1-1                  1/1       Running     0          49s

//在主節(jié)點中添加item
$ telnet md-5c107eeae9fb1-0.md-5c107eeae9fb1.itfarm3.svc.cluster.local 11211
Trying 10.244.4.162...
Connected to md-5c107eeae9fb1-0.md-5c107eeae9fb1.itfarm3.svc.cluster.local.
Escape character is "^]".
set name 0 0 8
zhangsan
STORED
quit
Connection closed by foreign host.

//從節(jié)點查看item
$ telnet md-5c107eeae9fb1-1.md-5c107eeae9fb1.itfarm3.svc.cluster.local 11211
Trying 10.244.3.176...
Connected to md-5c107eeae9fb1-1.md-5c107eeae9fb1.itfarm3.svc.cluster.local.
Escape character is "^]".
get name
VALUE name 0 8
zhangsan
END

//模擬故障
$ kubectl.exe delete po md-5c107eeae9fb1-0
pod "md-5c107eeae9fb1-0" deleted

//重啟后數(shù)據(jù)恢復(fù)
$ telnet md-5c107eeae9fb1-0.md-5c107eeae9fb1.itfarm3.svc.cluster.local 11211
Trying 10.244.4.162...
Connected to md-5c107eeae9fb1-0.md-5c107eeae9fb1.itfarm3.svc.cluster.local.
Escape character is "^]".
get name
VALUE name 0 8
zhangsan
END
部署sasl安全認(rèn)證的memcached

測試
//使用statefulset啟動N個memcached
md-5c11b67a6ae9b-0                  1/1       Running            0          1h
md-5c11b67a6ae9b-1                  1/1       Running            0          1h
md-5c11b67a6ae9b-2                  1/1       Running            0          1h
使用python連接memcached
$ python3
Python 3.5.2 (default, Nov 23 2017, 16:37:01)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import bmemcached
>>> client = bmemcached.Client(("md-5c11b67a6ae9b-ha:11211"), "md-5c11b67a6ae9b", "ZcUu1AVGbB3PnDzhxfOjRLJhatugwZBe")
>>> client.set("name", "zhangsan")
True
>>> client.get("name")
"zhangsan"
>>>
分布式存儲 使用無頭服務(wù)來區(qū)分多個memcache
#!/usr/bin/env python3
import bmemcached
client = bmemcached.Client(("md-5c11b67a6ae9b-0.md-5c11b67a6ae9b.itfarm3.svc.cluster.local:11211",
    "md-5c11b67a6ae9b-1.md-5c11b67a6ae9b.itfarm3.svc.cluster.local:11211",
    "md-5c11b67a6ae9b-1.md-5c11b67a6ae9b.itfarm3.svc.cluster.local:11211"), "md-5c11b67a6ae9b", "ZcUu1AVGbB3PnDzhxfOjRLJhatugwZBe")
print(client.set("name", "zhangsan"))
print(client.get("name"))
運行
$ python3 test.py
True
zhangsan

各客戶端連接開啟了sasl安全認(rèn)證的memcached方案

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/32811.html

相關(guān)文章

  • 為什么 kubernetes 天然適合微服務(wù) (2)

    摘要:有了分布式數(shù)據(jù)庫可以使數(shù)據(jù)庫的性能可以隨著節(jié)點增加線性地增加。分布式數(shù)據(jù)庫最最下面是,是主備的,通過的內(nèi)核開發(fā)能力,我們能夠?qū)崿F(xiàn)主備切換數(shù)據(jù)零丟失,所以數(shù)據(jù)落在這個里面,是非常放心的,哪怕是掛了一個節(jié)點,切換完了以后,你的數(shù)據(jù)也是不會丟的。 此文已由作者劉超授權(quán)網(wǎng)易云社區(qū)發(fā)布。 歡迎訪問網(wǎng)易云社區(qū),了解更多網(wǎng)易技術(shù)產(chǎn)品運營經(jīng)驗 三、微服務(wù)化的十個設(shè)計要點 微服務(wù)有哪些要點呢?第一張圖是...

    lentrue 評論0 收藏0
  • 跨集群服務(wù)——如何利用Kubernetes 1.3實現(xiàn)跨區(qū)可用

    摘要:跨集群服務(wù)能夠分布在不同的地理位置,使得混合和多云成為可能,相對于單一集群多可用區(qū)部署,更好地保證高可用。注例子中,我們利用谷歌容器引擎提供的集群,在該平臺上,你可以把部署到想要的地區(qū)。 編者按:這篇文章是關(guān)于Kubernetes 1.3新功能的一系列深入文章的一部分。本文是第七篇。 用戶使用Kubernetes 對生產(chǎn)環(huán)境上的部署進行彈性伸縮,同時我們聽到一個明確的聲音:希望跨區(qū)域、...

    wind3110991 評論0 收藏0
  • TOP100summit分享實錄 | JFrog欣:Kubernetes is hard!JFro

    摘要:本文內(nèi)容節(jié)選自由主辦的第七屆,架構(gòu)師高欣分享的的實踐實錄。當(dāng)然,在部署完成后,我們要做一個監(jiān)測以便掌握它的運行狀況。規(guī)劃配置運行環(huán)境在正式部署前,還要考慮如何規(guī)劃并配置好運行環(huán)境。在使用部署時,可以利用這些命令做驗證,檢驗部署是否正常。 showImg(https://segmentfault.com/img/bVblRHj?w=2880&h=1920); 本文內(nèi)容節(jié)選自由msup主辦...

    鄒強 評論0 收藏0
  • 大型網(wǎng)站技術(shù)架構(gòu)-入門梳理

    摘要:使用緩存兩個前提條件數(shù)據(jù)訪問熱點不均衡數(shù)據(jù)某時段內(nèi)有效,不會很快過期反向代理本地緩存分布式緩存異步旨在系統(tǒng)解耦。 大型網(wǎng)站技術(shù)架構(gòu)-入門梳理 標(biāo)簽 : 架構(gòu)設(shè)計 [TOC] 羅列了大型網(wǎng)站架構(gòu)涉及到的概念,附上了簡單說明 前言 本文是對《大型網(wǎng)站架構(gòu)設(shè)計》(李智慧 著)一書的梳理,類似文字版的思維導(dǎo)圖 全文主要圍繞性能,可用性,伸縮性,擴展性,安全這五個要素 性能,可用性,伸縮性...

    wawor4827 評論0 收藏0

發(fā)表評論

0條評論

bawn

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<