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

資訊專欄INFORMATION COLUMN

使用Kubernetes創(chuàng)建 Couchbase 集群

xumenger / 784人閱讀

摘要:本文將演示如何使用創(chuàng)建集群。本次將使用,和企業(yè)版進(jìn)行測(cè)試。默認(rèn)情況下服務(wù)僅在集群內(nèi)可見,但我們會(huì)將該服務(wù)作為一個(gè)負(fù)載均衡器暴露出去。等待分鐘左右讓負(fù)載均衡器啟動(dòng)。

編者按:本文由Couchbase 的VP Arun Gupta 編寫,展示了如何用Kubernetes 設(shè)置 Couchbase 集群。
Couchbase Server是一個(gè)開源的、分布式的文檔型NoSQL數(shù)據(jù)庫。它有低于毫秒級(jí)的快速鍵值對(duì)存儲(chǔ),為快速查詢?cè)O(shè)計(jì)的專用索引和執(zhí)行SQL語句的引擎。對(duì)于移動(dòng)應(yīng)用和物聯(lián)網(wǎng)(IOT)環(huán)境,Couchbase Lite在能本地設(shè)備上運(yùn)行并與Couchbase Server進(jìn)行同步。

最近剛剛發(fā)布的Couchbase Server 4.5加入了許多新功能,包括對(duì)Docker的生產(chǎn)認(rèn)證支持。Couchbase 支持Docker容器的各種編排框架,如Kubernetes,Docker Swarm 和 Mesos,詳情訪問這個(gè)頁面(http://www.couchbase.com/cont...)。

本文將演示如何使用Kubernetes 創(chuàng)建 Couchbase 集群。本次將使用Kubernetes 1.3.3 ,AWS和Couchbase 4.5企業(yè)版進(jìn)行測(cè)試。

像所有美好的東西一樣,本篇文章站在巨人的肩膀上。這篇文章的結(jié)構(gòu)是saturnism在一個(gè)周五下午確定的,配置文件則由r_schmiddy貢獻(xiàn)。

Couchbase集群

Couchbase 服務(wù)的集群通常部署在商用服務(wù)器上。Couchbase Server 有一個(gè)對(duì)等的拓?fù)浣Y(jié)構(gòu),在該拓?fù)浣Y(jié)構(gòu)上所有節(jié)點(diǎn)是平等的并能按需通信。

沒有主節(jié)點(diǎn),從節(jié)點(diǎn),配置節(jié)點(diǎn),名稱節(jié)點(diǎn),頭節(jié)點(diǎn)等概念,所有節(jié)點(diǎn)上的軟件都是相同的。它允許在不考慮他們“類型”的情況下添加或刪除節(jié)點(diǎn)。

該模式通常能在云基礎(chǔ)設(shè)施模型上工作的特別好。對(duì)于 kubernetes,這意味著我們可以為所有Couchbase 節(jié)點(diǎn)使用完全相同的容器鏡像。

一個(gè)典型的Couchbase 集群創(chuàng)建過程如下:

● 啟動(dòng)Couchbase:啟動(dòng)n個(gè) Couchbase 服務(wù)器

● 創(chuàng)建集群:選擇任一服務(wù)器,并添加所有其他服務(wù)器來創(chuàng)建集群

● 再平衡集群:重新平衡集群,使數(shù)據(jù)跨集群分布

為了使用Kubernetes,集群創(chuàng)建分為“master” 和 “worker”的Replication Controller(RC)。

master RC 只有一個(gè)副本并作為一個(gè)服務(wù)(service)發(fā)布。這樣提供了一個(gè)單一的入口來開始集群創(chuàng)建。

默認(rèn)情況下服務(wù)僅在集群內(nèi)可見,但我們會(huì)將該服務(wù)作為一個(gè)負(fù)載均衡器暴露出去。這使得可從集群外部訪問Couchbase Web控制臺(tái)。

worker RC 跟master RC使用完全相同的鏡像。這將保持集群的同質(zhì)化,使得伸縮集群更加自如。

配置文件請(qǐng)查看這里(https://github.com/arun-gupta...)。讓我們從創(chuàng)建 Kubernetes資源開始來創(chuàng)建Couchbase集群。

創(chuàng)建Couchbase master RC :

Couchbase master RC 可以使用以下配置文件來創(chuàng)建:

apiVersion: v1 
kind: ReplicationController 
metadata: 
name: couchbase-master-rc 
spec: 
replicas: 1 
selector: 
app: couchbase-master-pod 
template: 
metadata: 
  labels: 
    app: couchbase-master-pod 
spec: 
  containers: 
  - name: couchbase-master 
    image: arungupta/couchbase:k8s 
    env: 
      - name: TYPE 
        value: MASTER 
    ports: 
    - containerPort: 8091


apiVersion: v1 kind: Service metadata: name: couchbase-master-service labels: app: couchbase-master-service spec: ports: - port: 8091 selector: app: couchbase-master-pod type: LoadBalancer

該配置文件創(chuàng)建一個(gè)名為 couchbase-master-rc 的Replication Controller。這個(gè)RC使用arungupta/couchbase:k8s 鏡像(https://github.com/arun-gupta...)創(chuàng)建了1個(gè) pod 的副本。

該 Dockerfile使用配置腳本配置基礎(chǔ) Couchbase Docker 鏡像。首先,它使用Couchbase REST API設(shè)置存儲(chǔ)配額,設(shè)置索引、數(shù)據(jù)和查詢服務(wù),安全憑據(jù),并加載樣本數(shù)據(jù)桶(sample data bucket)。

然后,調(diào)用Couchbase CLI命令把Couchbase 節(jié)點(diǎn)添加到集群或添加節(jié)點(diǎn)并平衡集群。這是基于以下三個(gè)環(huán)境變量:

● TYPE:定義加入的 pod是worker還是 master

● AUTO_REBALANCE:定義集群是否需要重新平衡

● COUCHBASE_MASTER: master 服務(wù)的名稱
第一個(gè)配置文件中,只將TYPE環(huán)境變量設(shè)置為MASTER。

讓我們創(chuàng)建并驗(yàn)證。

創(chuàng)建 Couchbase master RC:

列出所有服務(wù):

輸出顯示,couchbase-master-service 被創(chuàng)建。

列出所有pod:

配置文件中指定的Pod創(chuàng)建成功

查看 RC:

RC中 pod 指定的數(shù)量和實(shí)際的數(shù)量相同。

查看服務(wù):

kubectl describe svc couchbase-master-service 
Name:   couchbase-master-service 
Namespace:  default 
Labels:   app=couchbase-master-service 
Selector:  app=couchbase-master-pod 
Type:   LoadBalancer 
IP:   10.0.57.201 
LoadBalancer Ingress: a94f1f286590c11e68e100283628 
cd6c-1110696566.us-west-2.elb.amazonaws.com 
Port:    8091/TCP 
NodePort:   30019/TCP 
Endpoints:  10.244.2.3:8091 
Session Affinity: None 
Events: 
FirstSeen LastSeen Count From   SubobjectPath Type 
Reason   Message 
--------- -------- ----- ----   ------------- -------- ------   ------- 
2m  2m  1 {service-controller }   Normal  CreatingLoadBalancer 
Creating load balancer 
2m  2m  1 {service-controller }   Normal  CreatedLoadBalancer 
Created load balancer

記下kubectl describe命令輸出中LoadBalancer Ingress 的值。通過這個(gè)地址來訪問 Couchbase Web控制臺(tái)。

等待3 分鐘左右讓負(fù)載均衡器啟動(dòng)。然后通過:8091訪問Couchbase Web控制臺(tái),如下:

配置文件指定的用戶名是Administrator,密碼是password,登錄后頁面如下:

點(diǎn)擊Server Nodes,查看集群中有多少Couchbase節(jié)點(diǎn)。正如預(yù)期的那樣,當(dāng)前只顯示一個(gè)節(jié)點(diǎn):

點(diǎn)擊 Data Buckets,查看作為鏡像一部分的示例Bucket :

上圖表明 travel-sample bucket被成功創(chuàng)建并有31591個(gè) JSON文件。

創(chuàng)建一個(gè)Couchbase worker RC:

現(xiàn)在我們可以使用配置文件創(chuàng)建一個(gè)worker RC:


    apiVersion: v1 
    kind: ReplicationController 
    metadata: 
    name: couchbase-worker-rc 
    spec: 
    replicas: 1 
    selector: 
    app: couchbase-worker-pod 
    template: 
    metadata: 
      labels: 
        app: couchbase-worker-pod 
    spec: 
      containers: 
      - name: couchbase-worker 
        image: arungupta/couchbase:k8s 
        env: 
          - name: TYPE 
            value: "WORKER" 
          - name: COUCHBASE_MASTER 
            value: "couchbase-master-service" 
          - name: AUTO_REBALANCE 
            value: "false" 
        ports: 
        - containerPort: 8091

該 RC使用相同的arungupta/couchbase:k8s鏡像創(chuàng)建Couchbase 的單個(gè)副本。這里的主要區(qū)別是:

● TYPE 環(huán)境變量設(shè)置為WORKER。向集群中添加了一個(gè) worker Couchbase 節(jié)點(diǎn) 。

● COUCHBASE_MASTER 環(huán)境變量設(shè)置為couchbase-master-service。它使用了Kubernetes 內(nèi)置的服務(wù)發(fā)現(xiàn)機(jī)制來使 worker 和master中的pod進(jìn)行通信。

● AUTO_REBALANCE 環(huán)境變量設(shè)置為false。該環(huán)境變量確保了節(jié)點(diǎn)只添加到集群而集群本身不重新平衡。集群的再平衡用來在集群中的節(jié)點(diǎn)中重新分布數(shù)據(jù)。當(dāng)多個(gè)節(jié)點(diǎn)首次被添加時(shí)推薦使用這種方式,之后集群可以使用Web 控制臺(tái)來手動(dòng)進(jìn)行再平衡。

讓我們創(chuàng)建 一個(gè)worker:

查看RC:

一個(gè)新的 couchbase-worker-rc 被創(chuàng)建,并且指定的pod數(shù)量與實(shí)際數(shù)量相同。

查看所有的pod:

worker的pod也創(chuàng)建成功。每個(gè) pod 的名稱前綴是了相應(yīng)RC名稱。例如,worker pod的名字前綴是couchbase-worker-rc。

刷新Couchbase Web控制臺(tái),能夠看到一個(gè)新的Couchbase節(jié)點(diǎn)添加成功。在Pending Rebalance 標(biāo)簽?zāi)軌蚩吹揭粋€(gè)明顯的標(biāo)記。

單擊該標(biāo)簽查看需要重新平衡的節(jié)點(diǎn)IP地址:

伸縮 Couchbase 集群

現(xiàn)在,讓我們通過調(diào)整worker RC的副本數(shù)量伸縮Couchbase 集群:

查看RC狀態(tài),發(fā)現(xiàn)pod數(shù)量修改為3個(gè):

通過查看pod列表再次驗(yàn)證:

Couchbase Web控制臺(tái)的Pending Rebalance 標(biāo)簽顯示有3個(gè)服務(wù)被添加到集群并且需要重新平衡。

重新平衡 Couchbase 集群

最后,點(diǎn)擊“Rebalance”按鈕重新平衡集群。消息窗口顯示重新平衡的當(dāng)前狀態(tài):

一旦所有的節(jié)點(diǎn)重新平衡完成,Couchbase 集群將會(huì)隨時(shí)響應(yīng)請(qǐng)求:

除了創(chuàng)建集群, Couchbase Server 支持一系列高可用性和災(zāi)難恢復(fù)(HA / DR)策略。大多數(shù)的HA/DR 策略依賴于最大可用性,增加冗余,跨數(shù)據(jù)中心,定期備份等多種方法。

現(xiàn)在Couchbase 集群已就緒,你可以開始使用了。

更多信息請(qǐng)查看 Couchbase Developer Portal 和 Forums,或查看Stack Overflow上的問題。

本文由時(shí)速云翻譯,如若轉(zhuǎn)載,需注明轉(zhuǎn)載自“時(shí)速云”

原文鏈接: http://blog.kubernetes.io/201...

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

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/32495.html

相關(guān)文章

  • Docker 1.12實(shí)踐:Docker Service、Stack與分布式應(yīng)用捆綁包

    摘要:與分布式應(yīng)用捆綁包分布式應(yīng)用捆綁包,或者簡稱,是一種多服務(wù)可分發(fā)鏡像格式。而當(dāng)中新推出的分布式應(yīng)用捆綁包,或者簡稱,則屬于一種新的概念,其專門面向多套容器的遷移需求。利用創(chuàng)建一個(gè)分布式應(yīng)用捆綁包添加了一條新的命令。 在本文中數(shù)人云將帶大家了解如何利用Docker Compose創(chuàng)建一套分布式應(yīng)用捆綁包,并將其作為Docker Stack在Docker Swarm Mode中進(jìn)行部署。 ...

    TigerChain 評(píng)論0 收藏0
  • 使用OperatorHub.io自動(dòng)化群集上的操作

    摘要:是什么最初由于年推出,并已被和社區(qū)用作打包部署和管理原生應(yīng)用程序的方法。原生應(yīng)用程序是一個(gè)部署在上的應(yīng)用程序,使用和眾所周知的工具進(jìn)行管理,如。的協(xié)調(diào)循環(huán)將選擇這些,并執(zhí)行所需的操作以實(shí)現(xiàn)所需的狀態(tài)。目前在上列出的的一些示例包括和。 作者:Diane Mueller,紅帽云平臺(tái)社區(qū)發(fā)展總監(jiān) showImg(https://segmentfault.com/img/bVbpg7E?w=1...

    soasme 評(píng)論0 收藏0
  • 輕松搞定|將PHP和Couchbase應(yīng)用部署為Docker

    摘要:此時(shí),可以構(gòu)建映像,并將其部署為容器。從執(zhí)行以下操作以上命令將使用文件中定義的端口,構(gòu)建對(duì)應(yīng)鏡像和部署成為容器。 showImg(https://segmentfault.com/img/remote/1460000010122752); 數(shù)人云之前分享了《如何用Docker實(shí)現(xiàn)PHP命令行程序的CI/CD》,詳細(xì)地介紹了整體過程中的思路以及以及注意事項(xiàng),今天帶來的文章將闡述怎樣部署一...

    X1nFLY 評(píng)論0 收藏0
  • Couchbase 介紹 - 更好的 Cache 系統(tǒng)

    摘要:的集群設(shè)計(jì)對(duì)等網(wǎng)群集所有點(diǎn)都是對(duì)等的,只是在創(chuàng)建群或者加入集群時(shí)需要指定一個(gè)主節(jié)點(diǎn),一旦結(jié)點(diǎn)成功加入集群,所有的結(jié)點(diǎn)對(duì)等。對(duì)等網(wǎng)的優(yōu)點(diǎn)是,集群中的任何節(jié)點(diǎn)失效,集群對(duì)外提供服務(wù)完全不會(huì)中斷,只是集群的容量受影響。 在移動(dòng)互聯(lián)網(wǎng)時(shí)代,我們面對(duì)的是更多的客戶端,更低的請(qǐng)求延遲,這當(dāng)然需要對(duì)數(shù)據(jù)做大量的 Cache 以提高讀寫速度。 術(shù)語 節(jié)點(diǎn):指集群里的一臺(tái)服務(wù)器。 現(xiàn)有 Cache 系統(tǒng)...

    Amio 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<