1. 程式人生 > >zookeeper實踐(二) 偽分散式部署和配置

zookeeper實踐(二) 偽分散式部署和配置

最近在自己的虛擬機器上測試kafka,涉及到zookeeper,因此對zookeeper進行一些學習。 kafka有自帶的zookeeper,但是自帶的zookeeper配置檔案非常簡單。

本文以獨立的zookeeper作為配置的軟體。

1、目標:  在自己工作機上的虛擬機器(centos 6.5 )上部署 偽分散式zookeeper。   這個目標達到,相信在物理機上部署分散式也可以完成

2、環境準備:

     1) centos 6.5

     2) java 1.7

     3) zookeeper-3.4.6

     4) 部署規劃

            在同一臺虛擬機器上,部署一套zookeeper,啟動三個zookeeper程序,(zookeeper的機制是啟動奇數程序,滿足其選舉機制),部署圖如下:


    部署的zookeeper的目錄下,一些要修改的檔案結構如下圖:


     說明: 也可以部署三套zookeeper,這樣就不需要用同一套裡面建多個目錄,但是部署一套,生成三套配置檔案和目錄會稍微複雜一點,所以此方法實踐更有意義。

3、 配置檔案準備

      1) 根據上面的規劃圖建立目錄,目錄建好後, 在每個data目錄下 建立一個myid檔案,並寫入server id,具體做法如下:

             在zookeeper目錄下, 執行下面命令: 

            echo 1 > data_1/myid  回車

            echo 2 > data_2/myid  回車

            echo 3 > data_3/myid  回車

            這三個命令是將server id 寫入到對應目錄的myid檔案中。

       2) 將系統原來的zoo.cfg  複製為  zoo1.cfg  ,修改對應內容如下圖:


       這裡, dataDir 就是剛才建立的資料目錄, dataLogDir是日誌目錄, 埠 2181, 在每個zoo.cfg檔案中,都要新增想同的server.1 , server.2. server.3   

同樣複製到zoo2.cfg  zoo3.cfg 修改對應配置如下圖:


   修改對應目錄,埠。這樣配置就算修改完畢

    3) 啟動

   啟動這裡,就提現了部署三套和部署一套的區別, 部署一套,要分別指定對應的配置檔案。在zookeeper的bin目錄下, 分別執行下面三個命令,啟動zookeeper

   ./zkServer.sh  start  zoo1.cfg

   ./zkServer.sh  start  zoo2.cfg

   ./zkServer.sh  start  zoo3.cfg

   4) 啟動後,可以通過提供的指令碼檢視三個程序哪個是 leader,哪個是follower,具體命令為  ./zkServer.sh  status  xxx.cfg

   下圖為本機 上具體的執行結果:

   

      這樣,偽分散式部署就完成了。 偽分散式: 在同一臺機器上,部署多個節點,模擬叢集

   5)  通過zookeeper的客戶端,可以檢視zookeeper的節點

   命令./zkCli.sh -server 127.0.0.1:2181

   也可以是別的埠, 2182,2183, 連線後,可以輸入 ls /  命令檢視當前zookeeper的節點,如下圖


相關推薦

zookeeper實踐 分散式部署配置

最近在自己的虛擬機器上測試kafka,涉及到zookeeper,因此對zookeeper進行一些學習。 kafka有自帶的zookeeper,但是自帶的zookeeper配置檔案非常簡單。 本文以獨立的zookeeper作為配置的軟體。 1、目標:  在自己工作機上的虛擬機

tensorflow實踐 基本原理學習框架使用

Tensorflow 是google大腦小組的工程師們開發的用於機器學習和深度神經網路方面的研究,它通過一個數據流圖來進行計算。[本文是對Tensorflow社群資料進行學習和實踐,其中文社群還是很

Linux訊號程式設計實踐 訊號傳送函式可重入函式

    在早期的UNIX中訊號是不可靠的,不可靠在這裡指的是:訊號可能丟失,一個訊號發生了,但程序卻可能一直不知道這一點。 現在Linux 在SIGRTMIN實時訊號之前的都叫不可靠訊號,這裡的不可靠主要是不支援訊號佇列,就是當多個訊號發生在程序中的時候(收到訊號的

Linux程序理解與實踐殭屍&孤兒程序 檔案共享

孤兒程序與殭屍程序 孤兒程序:    如果父程序先退出,子程序還沒退出那麼子程序的父程序將變為init程序。(注:任何一個程序都必須有父程序) #include <stdio.h> #include <stdlib.h> #include <

ZABBIX實踐 服務端部署安裝

zabbix 一款非常強大的監控軟體,不僅可以基於SNMP監控各種網路裝置,而且還可以監控linux win等各版本作業系統的狀態。 1、本次實踐的目標: 1) 搭建服務端和agent,實現監控 2)

.Net微服務實踐:Ocelot介紹快速開始

[TOC] 上篇[.Net微服務實踐(一):微服務框架選型](https://www.cnblogs.com/lcyhjx/p/12641840.html) 我們對微服務框架整體做了介紹,接下來我們從閘道器Ocelot開始,一一開始實踐 # 介紹 Ocelot是一個用.NET Core實現並且開源的API閘

Spring Boot 最佳實踐集成Jsp與生產環境部署

內容 tro conf 相關 安裝 packaging exc 詳細介紹 更新 一、簡介 提起Java不得不說的一個開發場景就是Web開發,也是Java最熱門的開發場景之一,說到Web開發繞不開的一個技術就是JSP,因為目前市面上仍有很多的公司在使用JSP,所以本文就來介紹

Redis實踐高可用的叢集+哨兵部署

  進入後,輸入shutdown   注意這裡需要新增-h引數,如果不新增此引數,會報告如下異常:   Could not connect to Redis at 127.0.0.1:6379: Connection refused   原因就是在conf檔案中,我們配置 bind 引數   info  命令

分散式定時任務Elastic-Job框架在SpringBoot工程中的應用實踐

文章摘要:在生產環境中部署Elastic-Job集群后,那麼如何來運維監控線上跑著的定時任務呢? 如果在生產環境的大規模伺服器叢集上部署了整合Elastic-Job的業務工程,而沒有相應的運維監控工具可以來監控定時任務執行狀態和動態修改定時任務執行時間,修改相應的配置還得手動

Zookeeper分散式安裝

一:環境 centos jdk1.6 zookeeper-3.4.3 下載 二:配置 將解壓出來的zookeeper 複製三份,這裡分別叫做 zookeeper-1,zookeeper-2和zooke

ZABBIX實踐 centos下的Agent端部署安裝

首先重複一下前面的規劃 server端:  192.168.136.144    centos6.5 (虛擬機器) agent端:    192.168.136.155    centos6.5

Redis practise使用Docker部署Redis高可用,分散式叢集

思路鑑於之間學習過的Docker一些基礎知識,這次準備部署一個簡單的分散式,高可用的redis叢集,如下的拓撲tuopu.png下面介紹下,對於這張拓撲圖而言,需要了解的一些基礎概念。Redis持久化Redis有兩種持久化策略。Rdb全量備份形成二進位制檔案: dump.rdb在使用命令 save(停寫),

Mongodb基礎實踐

數據庫查詢 表達式 where 技術 文章 在前面的文章裏面主要介紹了MongoDB的文檔,集合,數據庫等操作和對文檔的增、刪、改相關知識,接下來會總結一點有關查詢的相關知識。 在MySQL中,我們知道數據查詢是優化的主要內容,讀寫分離等技術都是可以用來處理數據庫查詢優化的,足以見數

MVC項目實踐——需求分析

用例 分析 strong span 詳細 現在 同時 喜歡 發揮 需求: 作為一名觀眾,我希望知道詳細的比分變化和得分信息,以便於了解比賽走向和隊員的精彩得分。 用例故事: 裏約奧運女排決賽進行中... Ht7:現在比分多少了? LP:2:1,中國隊領先。 Ht7:那小比

JVM高級特性與實踐:對象存活判定算法引用 與 回收

添加 引用計數器 程序計數器 正文 bmc 進入 block 結構 內存 關於垃圾回收器GC(Garbage Collection),多數人意味它是Java語言的伴生產物。事實上,GC的歷史遠比Java悠遠,於1960年誕生在MIT的Lisp是第一門真正使用內存動態分配和垃

前端工程化思考與實踐

run test 代碼 -m link 本地 生成頁面 函數 說我 4. 前端工程化開發實踐 由於Nodejs 、npm的環境搭建往上很多,這裏就不過多介紹它們了。 這裏我們將更多介紹FIS3、RequireJS 、r.js。 4.1 模塊化開發:

springcloud實踐之api網關:zuul

actor 控制 patch isp where url 大文件上傳 html base zuul是什麽? front door. API Gateway.Zuul is a JVM based router and server side load balancer b

springboot熱部署——springboot熱部署與發布

延遲 標簽頁 tools settings 通過 選擇 auto tex pid 一、實現的方式概述      註意以下的熱部署方式在IDEA是默認沒有打開自動編譯的,手動編譯需要快捷鍵(Ctrl+Shift+F9),自動編譯的修改配置如下:(註意刷新不要太快,會有1-

KVM虛擬化實踐

KVM 虛擬化 實踐 KVM的日常應用管理 1>虛擬機查看#查看當前正在運行中的虛擬機#查看當前物理機的所有虛擬機//也可以在物理機進程上查看 2>虛擬機的開關關閉虛擬機[root@node1 ~]# virsh shutdown CentOS-7.4-x86_64(主機名)關閉虛擬機

SharePoint 2016 服務器部署SQL Server 部署

size cab 功能 帳戶 server mark 修改 51cto In 將安裝SQL Server服務器初始化完成後,繼續安裝SQL Server 軟件。 掛載SQL Server鏡像,雙擊運行 選擇安裝,選擇全新SQL Server 獨立安裝或向現有安裝添加功能