1. 程式人生 > >springcloud-eureka高可用叢集搭建

springcloud-eureka高可用叢集搭建

一 前言

eureka作為註冊中心,其充當著服務註冊與發現功能,載入負載均衡;若在專案執行中eureka掛了,那麼整個服務整體都會暫停,所以為服務執行的安全性,有必要搭建eureka叢集;當其中一個eureka節點掛了,我們還有另外的節點可用;本篇文章的核心是如何在idea上執行eureka叢集,和專案部署;需注意的jdk版本是1.8,高於jdk1.8打包部署會出問題,需要引入其他依賴;

二 eureka-server配置檔案改造

之前的配置檔案如下,這是單個eureka-server的配置,並不能滿足於我們實際專案需求,我們要將其改造成高可用的叢集節點模式;

server:
  port: 10086

eureka:
  instance:
    hostname: localhost
  client:
    # 作為server,表示禁止向自己註冊
    register-with-eureka: false
    fetch-registry: false
    service-url:
      defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/

改造配置檔案如下,之前的文章中我們瞭解了eureka的peer to peer 交流機制,我們現在就根據這個原理搭建高可用的eureka叢集,在配置檔案中可以看見知識追尋者配置了3個peer(peer1,peer2,peer3); 它們的埠分別是10081,10082,10083; peer1,分別向 peer2,peer3註冊,peer2則向 peer1,peer3註冊,peer3同理;這樣就構成了eureka簡單的3個節點叢集;

spring:
  application:
    name: eureka-server-cluster
---
spring:
  profiles: peer1
server:
  port: 10081
eureka:
  instance:
    hostname: peer1
  client:
    service-url:
      # 向peer2 peer3節點註冊自己
      defaultZone: http://peer2:10082/eureka,http://peer3:10083/eureka

---
spring:
  profiles: peer2
server:
  port: 10082
eureka:
  instance:
    hostname: peer2
  client:
    service-url:
      # 向peer1 pee3節點註冊自己
      defaultZone: http://peer1:10081/eureka,http://peer3:10083/eureka

---
spring:
  profiles: peer3
server:
  port: 10083
eureka:
  instance:
    hostname: peer3
  client:
    service-url:
      # 向peer1 peer2節點註冊自己
      defaultZone: http://peer1:10081/eureka,http://peer2:10082/eureka

三 eureka-client配置檔案改造

在之前的基礎上多添加了註冊server節點 peer2,peer3

server:
  port: 8090

spring:
  application:
    name: eureka-client # 應用名稱

eureka:
  client:
    service-url:
      # 服務註冊地址
      defaultZone: http://peer1:10081/eureka/,http://peer2:10082/eureka/,http://peer3:10083/eureka/

四 host檔案修改

修改host檔案目的是peer對應ip地址,實際專案中 每個peer節點都是一個ip地址;

192.168.0.101 peer1
192.168.0.101 peer2
192.168.0.101 peer3

五 複製啟動配置

複製配置如下:點選 cpoy configuration 選項;

進入編輯狀態,修改 name 為 EurekaServer(1), 啟用的配置檔案選項 填 peer1;以此類推,我們複製三個例項; 分別是 EurekaServer(1),EurekaServer(2),EurekaServer(3);分別啟用配置 peer2,peer2,peer3;

六 啟動 eureka-server

分別啟動三個配置例項,圖如下;


瀏覽器輸入 http://localhost:10083/ 或者 http://localhost:10082/ 或者 http://localhost:10081/;結果如下,知識追尋者在瀏覽器輸入的 peer3地址,那麼 對應的複製的Node 是 peer2,peer1;server有三個;

七 啟動 eureka-client

啟動eureka client 圖如下

重新整理瀏覽器介面,可以看見 client 已經註冊到 server;

八 打包部署

進入 eureka-server 工程目錄 執行 打包命令 mvn clean package

開啟三個命令列分別執行對應的命令,一個cmd一條;

java -jar eureka-server-1.0.0-SNAPSHOT.jar --spring.profiles.active=peer1 
java -jar eureka-server-1.0.0-SNAPSHOT.jar --spring.profiles.active=peer2
java -jar eureka-server-1.0.0-SNAPSHOT.jar --spring.profiles.active=peer3

pee3 如下

瀏覽器頁面如下:

九 多 profile執行注意事項

如下 配置檔案 不寫在src/main/resources一個 application 中,而是分為 application-peer1.yml, application-peer2.yml, application-peer3.yml ; 在 idea 的虛擬機器引數(VM Options)配置 是
-Dspring.profiles.active=peer1 , -Dspring.profiles.active=peer2 ,-Dspring.profiles.active=peer3;部署方式相同;也可以通過 mvn spring-boot:run -Dspring.profiles.active=peer1 的形式執行;

相關推薦

springcloud-eureka可用叢集搭建

一 前言 eureka作為註冊中心,其充當著服務註冊與發現功能,載入負載均衡;若在專案執行中eureka掛了,那麼整個服務整體都會暫停,所以為服務執行的安全性,有必要搭建eureka叢集;當其中一個eureka節點掛了,我們還有另外的節點可用;本篇文章的核心是如何在idea上執行eureka叢集,和專案部署;

服務註冊元件——Eureka可用叢集搭建

什麼是Eureka? 服務註冊元件:將微服務註冊到Eureka中。 為什麼需要服務註冊? 微服務開發重點在一個"微"字,大型應用拆分成微型服務,意味著服務的數量不可能少。 服務之間存在呼叫關係,假設沒有服務註冊,微服務之間的呼叫關係就會是這個樣子: 微服務的部署可能不會在同一臺伺服

SpringCloud】04——Eureka可用叢集

1.為什麼需要Eureka叢集? Eureka作為服務註冊中心,讓服務作為客戶端註冊進來,但是假如Eureka壞了的話,所有的服務都將不能進行互相呼叫,為了高可用,所以需要搭建Eureka叢集來解決該問題。 2.搭建叢集我們需要做的幾步工作: 2.1.新增工程,配置pom ,yml

Eureka可用叢集環境搭建

註冊中心叢集 在微服務中,註冊中心非常核心,可以實現服務治理,如果一旦註冊出現故障的時候,可能會導致整個微服務無法訪問,在這時候就需要對註冊中心實現高可用叢集模式。 Eureka叢集相當簡單:相互註冊 Eureka高可用實際上將自己作為服務向其他服務註冊中心註冊自己,這樣就可以形成一組相互註冊的服務註冊

SpringCloud元件:Eureka可用叢集部署

高可用叢集部署 Eureka 服務註冊中心。 構建專案 使用 idea 開發工具建立一個 SpringBoot 專案,新增 Eureka Server 依賴即可, pom.xml 配置檔案如下所示: .

Kubernetes實戰 可用叢集搭建,配置,運維與應用

1-1 K8S導學 1-2 搭建K8S叢集步驟和要點介紹 1-3 搭建三節點Ubuntu環境 1-4 安裝容器引擎 1-5 下載Kubeadm、node元件和命令列工具 1-6 向叢集中加入worker節點 1-7 安裝dashboard和heapste

Flume NG可用叢集搭建詳解(基於flume-1.7.0)

1、Flume NG簡述 Flume NG是一個分散式,高可用,可靠的系統,它能將不同的海量資料收集,移動並存儲到一個數據儲存系統中。輕量,配置簡單,適用於各種日誌收集,並支援 Failover和負載均衡。並且它擁有非常豐富的元件。Flume NG採用的是三層架構:Agent層,Collecto

三節點可用叢集搭建——Hadoop-HA+zookeeper

目錄 HDFS -HA模式的工作機制示意圖 叢集規劃——三節點高可用 Hadoop HA叢集搭建 前期準備 建立新的虛擬機器 配置虛擬機器 克隆虛擬機器 配置環境變數,重新整理(master、slave1、slave2都配置一下環境變數) 安裝zookeeper叢集 配置檔案 拷貝檔案 拷貝

SpringCloud Eureka 可用

文章目錄 Spring Cloud Eureka 高可用 高可用客戶端(HA Client) Spring Cloud Eureka Client 應用元資訊 例項 客戶端配置

Redis5之前版本可用叢集搭建(偽分散式Ruby版)

一、簡介 Redis5以前安裝需要藉助ruby,Redis5版本以後不需要可參考Redis5.x版本快取搭建高可用叢集 二、Redis高可用叢集搭建 redis安裝 下載地址:http://redis.io/download 安裝步驟: # 把下載好的redis-3.0.0-rc2.tar.gz放在/u

springcloud-eureka可用配置

一、1個eureka-server 注意點:1、新建專案選擇Eureka Server  2、啟動類加註解  3、application.yml配置檔案 eureka: client: service-url: defaultZone:

centos7 hadoop HA可用叢集搭建( hadoop2.7 zookeeper3.4 )

目錄 七、總結 上篇文章寫了如何用ssh免密登入,當然這些操作都是在hadoop賬號上的操作,包括這篇文章也是一樣 三臺主機 一、伺服器環境 主機名 IP 使用者名稱 密碼 安裝目錄 node1 192.168.31.

RabbitMQ 高階指南:從配置、使用到可用叢集搭建

博主說:在專案中,通過 RabbitMQ,咱們可以將一些無需即時返回且耗時的操作提取出來,進行非同步處理,而這種非同步處理的方式大大的節省了伺服器的請求響應時間,從而提高了系統的吞吐量。 正文 1 RabbitMQ 簡介 1.1 介紹   RabbitMQ

Hadoop2.0可用叢集搭建

0、叢集節點分配 Hadoop01: Zookeeper NameNode(active) DataNode NodeManager JournalNode ResourceManager(active) Hadoop02: Zookeeper DataNod

redis一主多從可用叢集搭建

Redis 一主兩從高可用環境搭建 Redis 支援 Master-Slave(主從)模式,Redis Server 可以設定為另一個 Redis Server 的主機(從機),從機定期從主機拿資料。特殊的,一個從機同樣可以設定為一個 Redis Server

Redis Sentinel 可用叢集搭建(redis4.0)

前言 什麼是哨兵 Redis Sentinel出生於2012年,Redis 2.4穩定後首次釋出,它是一個旨在管理Redis叢集的系統。 哨兵的任務 監控(Monitoring):Sentinel會不斷地檢查你的主伺服器和從伺服器是否運作正常 提醒

大資料系列(hadoop) Hadoop+Zookeeper 3節點可用叢集搭建

原文地址:https://www.cnblogs.com/YellowstonePark/p/7750213.html一、叢集規劃主機名ipNameNodeDataNodeYarnZooKeeperJournalNodenode01192.168.1.201是是否是是node

CentOS7 haproxy+keepalived實現可用叢集搭建

一、搭建環境   CentOS7 64位         Keepalived  1.3.5         Haproxy 1.5.18   後端負載主機:192.168.166.21   192.168.166.22   兩臺節點上安裝rabbitmq服務      

RabbitMQ 可用叢集搭建及電商平臺使用經驗總結

面向EDA(事件驅動架構)的方式來設計你的訊息 AMQP routing key的設計 RabbitMQ cluster搭建 Mirror queue policy設定 兩個不錯的RabbitMQ plugin 大型應用外掛(Sharding、Rederation) Queue映象失敗手動同步

超詳細Hadoop HA可用叢集搭建及常見問題處理

       最近研究了下公司的hadoop叢集並模仿搭建了一個在本地測試使用的hadoop叢集。本文介紹下詳細的搭建過程以及各種常見問題的處理解決。  1 ,  前期準備     1.0  ,  準備Linux環境。         安裝vmware linux虛擬機