ambari+ bigtop 編譯、打包、部署步驟總覽

来源:https://www.cnblogs.com/piaolingzxh/p/18334212
-Advertisement-
Play Games

這次向大家分享發表在SOSP 2013上的另一篇經典圖計算框架論文X-Stream,構建了單機上基於外存的Scatter-Gather圖處理框架。 ...


1 ambari + bigtop 構建大數據基礎平臺

1.1 參考:

1.2 參考

amabri

bigtop

打包部署

2 ambari+bigtop編譯、打包、部署

操作步驟

  • 時間:2024-07-18
  • 環境準備:
    • 系統centos7
    • yum源
    • 系統基礎組件
    • 防火牆、selinux設置、句柄數,時區
    • java、scala、maven、gradle、ant、nodejs、環境配置
  • 編譯步驟:
    • 編譯ambari:最新分支branch-2.8
    • 編譯ambari-metrics:最新分支branch-3.0
    • 編譯bigtop:最新分支barnch-3.3,此處採用branch-3.2
    • 打包:將以下文件copy到目標目錄
      • ambari-server(ambari)
      • ambari-agent(ambari)
      • ambari-metrics-collector(ambari-metrics)
      • ambari-metrics-grafana(ambari-metrics)
      • ambari-metrics-hadoop-sink(ambari-metrics)
      • ambari-metrics-monitor(ambari-metrics)
      • bigtop打包出來的大數據組件(bigtop)
    • ambari+bigtop部署
      • 伺服器準備:4c-16G-60G三台
      • 環境檢查:操作系統、預設語言、時區、機器名、功能變數名稱解析、網路、防火牆關閉、selinux關閉、limits句柄數、禁用交換分區、unmask設置、磁碟掛載
      • 基礎設置:免密、基礎軟體、ntp服務、離線鏡像源+httpd服務,
      • 資料庫安裝、ambari元資料庫配置
      • 創建並配置bigtop的yum源
      • 安裝啟動ambari-server,初始化(生成表)

2.0 基礎環境準備

2.1 ambari編譯

2.2 ambari-metrics編譯

2.3 bigtop編譯

2.4 製作發版鏡像

#創建bdp3.2文件夾-所有rpm包將都拷貝到這個文件夾
mkdir -p bdp3.2
 
#將ambari包拷貝
mkdir -p bdp3.2/ambari  # 存放ambari項目打包出來的rpm包
cp ambari/ambari-server/target/rpm/ambari-server/RPMS/x86_64/ambari-server-2.8.0.0-0.x86_64.rpm bdp3.2/ambari/
cp ambari/ambari-agent/target/rpm/ambari-agent/RPMS/x86_64/ambari-agent-2.8.0.0-0.x86_64.rpm bdp3.2/ambari/
 
#將ambari-metrics包拷貝,# 存放ambari-metrics項目打包出來的rpm包
mkdir -p bdp3.2/ambari-metrics
cp ambari-metrics/ambari-metrics-assembly/target/rpm/ambari-metrics-collector/RPMS/x86_64/ambari-metrics-collector-3.0.1-1.x86_64.rpm bdp3.2/ambari-metrics/
cp ambari-metrics/ambari-metrics-assembly/target/rpm/ambari-metrics-grafana/RPMS/x86_64/ambari-metrics-grafana-3.0.1-1.x86_64.rpm bdp3.2/ambari-metrics/
cp ambari-metrics/ambari-metrics-assembly/target/rpm/ambari-metrics-hadoop-sink/RPMS/x86_64/ambari-metrics-hadoop-sink-3.0.1-1.x86_64.rpm bdp3.2/ambari-metrics/
cp ambari-metrics/ambari-metrics-assembly/target/rpm/ambari-metrics-monitor/RPMS/x86_64/ambari-metrics-monitor-3.0.1-1.x86_64.rpm bdp3.2/ambari-metrics/
 
#將bigtop包拷貝
mkdir -p bdp3.2/bigtop-3.2.1 # 存放bigtop項目打包出來的rpm包
cp -r bigtop/output/* bdp3.2/bigtop-3.2.1
 
# 製作鏡像源,在bdp3.2 目錄下生成repodata(也可以將文件拷貝到安裝位置後,再製作鏡像源)
createrepo bdp3.2/
# bdp3.2.tar.gz,將是最終發版的包
tar zcvf bdp3.2.tar.gz bdp3.2 

# yum源模板
vim ambari.repo  #必須是此文件名,安裝ambari-agent時,界面有檢查項
# BIGTOP-3.2.1 必須是固定字元串,大寫。ambari安裝大數據組件時,有檢查項,否則找不到數據源,3.2.1 是bigtop.bom 中的base_version
# http://172.16.76.107/chdp3.2 替換成自己的地址,確保訪問地址後,能看到上邊ambari,ambari-metrics,bigtop-3.2.1 這三個目錄
[BIGTOP-3.2.1]
name=BIGTOP-3.2.1
baseurl=http://172.16.76.107/bdp3.2
failovermethod=priority
enabled=1
gpgcheck=0

2.5 使用鏡像|鏡像測試

搭建yum源伺服器

#將bdp3.2.tar.gz 複製到目標伺服器
tar zxfv bdp3.2.tar.gz 
ln -s /to/your/path/bdp3.2  /var/wwww/html
systemctl restart httpd  # 重啟httpd服務
systemctl enable httpd.service # 開機自啟
訪問:http://${yum_hosts}/bdp3.2, 查看根目錄下是否有ambari,ambari-metrics,bigtop-3.2.1,repodata四個文件夾

客戶機訪問bdp3.2的yum源

1)客戶機添加yum源
vim /etc/yum.repos.d/ambari.repo # 內容參考上邊的yum源模板
[BIGTOP-3.2.1]
name=BIGTOP-3.2.1
baseurl=http://172.16.76.107/bdp3.2  ## 請替換此處IP
failovermethod=priority
enabled=1
gpgcheck=0
2)客戶機刷新yum緩存(務必執行此操作,否則安裝時不會報錯,也安裝不上)
yum clean all
yum makecache
3)查看是否能夠訪問bdp3.2上的安裝包,
yum search ambari-server
4)查看bigtop源下的包有哪些(註意,若是只有兩三個,可以去掉wc -l,看一下是具體那幾個)
/usr/bin/yum list available --showduplicates --disablerepo=* --enablerepo=BIGTOP-3.2.0  |wc -l 
/usr/bin/yum list available --showduplicates --disablerepo=* --enablerepo=BIGTOP-3.2.1  |wc -l 

bdp3.2 壓縮包文件結構預覽

bdp3.2/
├── ambari
│   └── x86_64
│       ├── ambari-agent-2.8.0.0-0.x86_64.rpm
│       └── ambari-server-2.8.0.0-0.x86_64.rpm
├── ambari-metrics
│   └── x86_64
│       ├── ambari-metrics-collector-3.0.1-1.x86_64.rpm
│       ├── ambari-metrics-grafana-3.0.1-1.x86_64.rpm
│       ├── ambari-metrics-hadoop-sink-3.0.1-1.x86_64.rpm
│       └── ambari-metrics-monitor-3.0.1-1.x86_64.rpm
├── bigtop3.2.1
│   ├── bigtop-ambari-mpack
│   │   ├── bigtop-ambari-mpack-2.7.5.0-1.el7.src.rpm
│   │   └── noarch
│   │       └── bigtop-ambari-mpack-2.7.5.0-1.el7.noarch.rpm
│   ├── bigtop-groovy
│   │   ├── bigtop-groovy-2.5.4-1.el7.src.rpm
│   │   └── noarch
│   │       └── bigtop-groovy-2.5.4-1.el7.noarch.rpm
│   ├── bigtop-jsvc
│   │   ├── bigtop-jsvc-1.2.4-1.el7.src.rpm
│   │   └── x86_64
│   │       ├── bigtop-jsvc-1.2.4-1.el7.x86_64.rpm
│   │       └── bigtop-jsvc-debuginfo-1.2.4-1.el7.x86_64.rpm
│   ├── bigtop-select
│   │   ├── bigtop-select-3.2.1-1.el7.src.rpm
│   │   └── noarch
│   │       └── bigtop-select-3.2.1-1.el7.noarch.rpm
│   ├── bigtop-utils
│   │   ├── bigtop-utils-3.2.1-1.el7.src.rpm
│   │   └── noarch
│   │       └── bigtop-utils-3.2.1-1.el7.noarch.rpm
│   ├── flink
│   │   ├── flink_3_2_1-1.15.3-1.el7.src.rpm
│   │   └── noarch
│   │       ├── flink_3_2_1-1.15.3-1.el7.noarch.rpm
│   │       ├── flink_3_2_1-jobmanager-1.15.3-1.el7.noarch.rpm
│   │       └── flink_3_2_1-taskmanager-1.15.3-1.el7.noarch.rpm
│   ├── hadoop
│   │   ├── hadoop_3_2_1-3.3.6-1.el7.src.rpm
│   │   └── x86_64
│   │       ├── hadoop_3_2_1-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-client-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-conf-pseudo-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-debuginfo-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-doc-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-hdfs-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-hdfs-datanode-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-hdfs-dfsrouter-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-hdfs-fuse-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-hdfs-journalnode-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-hdfs-namenode-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-hdfs-secondarynamenode-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-hdfs-zkfc-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-httpfs-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-kms-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-libhdfs-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-libhdfs-devel-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-libhdfspp-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-libhdfspp-devel-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-mapreduce-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-mapreduce-historyserver-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-yarn-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-yarn-nodemanager-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-yarn-proxyserver-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-yarn-resourcemanager-3.3.6-1.el7.x86_64.rpm
│   │       ├── hadoop_3_2_1-yarn-router-3.3.6-1.el7.x86_64.rpm
│   │       └── hadoop_3_2_1-yarn-timelineserver-3.3.6-1.el7.x86_64.rpm
│   ├── hbase
│   │   ├── hbase_3_2_1-2.4.17-1.el7.src.rpm
│   │   ├── noarch
│   │   │   └── hbase_3_2_1-doc-2.4.17-1.el7.noarch.rpm
│   │   └── x86_64
│   │       ├── hbase_3_2_1-2.4.17-1.el7.x86_64.rpm
│   │       ├── hbase_3_2_1-master-2.4.17-1.el7.x86_64.rpm
│   │       ├── hbase_3_2_1-regionserver-2.4.17-1.el7.x86_64.rpm
│   │       ├── hbase_3_2_1-rest-2.4.17-1.el7.x86_64.rpm
│   │       ├── hbase_3_2_1-thrift2-2.4.17-1.el7.x86_64.rpm
│   │       └── hbase_3_2_1-thrift-2.4.17-1.el7.x86_64.rpm
│   ├── hive
│   │   ├── hive_3_2_1-3.1.3-1.el7.src.rpm
│   │   └── noarch
│   │       ├── hive_3_2_1-3.1.3-1.el7.noarch.rpm
│   │       ├── hive_3_2_1-hbase-3.1.3-1.el7.noarch.rpm
│   │       ├── hive_3_2_1-hcatalog-3.1.3-1.el7.noarch.rpm
│   │       ├── hive_3_2_1-hcatalog-server-3.1.3-1.el7.noarch.rpm
│   │       ├── hive_3_2_1-jdbc-3.1.3-1.el7.noarch.rpm
│   │       ├── hive_3_2_1-metastore-3.1.3-1.el7.noarch.rpm
│   │       ├── hive_3_2_1-server2-3.1.3-1.el7.noarch.rpm
│   │       ├── hive_3_2_1-webhcat-3.1.3-1.el7.noarch.rpm
│   │       └── hive_3_2_1-webhcat-server-3.1.3-1.el7.noarch.rpm
│   ├── kafka
│   │   ├── kafka_3_2_1-2.8.2-1.el7.src.rpm
│   │   └── noarch
│   │       ├── kafka_3_2_1-2.8.2-1.el7.noarch.rpm
│   │       └── kafka_3_2_1-server-2.8.2-1.el7.noarch.rpm
│   ├── phoenix
│   │   ├── noarch
│   │   │   └── phoenix-5.1.3-1.el7.noarch.rpm
│   │   └── phoenix-5.1.3-1.el7.src.rpm
│   ├── solr
│   │   ├── noarch
│   │   │   ├── solr_3_2_1-8.11.2-1.el7.noarch.rpm
│   │   │   ├── solr_3_2_1-doc-8.11.2-1.el7.noarch.rpm
│   │   │   └── solr_3_2_1-server-8.11.2-1.el7.noarch.rpm
│   │   └── solr_3_2_1-8.11.2-1.el7.src.rpm
│   ├── spark
│   │   ├── noarch
│   │   │   ├── spark_3_2_1-3.2.3-1.el7.noarch.rpm
│   │   │   ├── spark_3_2_1-core-3.2.3-1.el7.noarch.rpm
│   │   │   ├── spark_3_2_1-datanucleus-3.2.3-1.el7.noarch.rpm
│   │   │   ├── spark_3_2_1-external-3.2.3-1.el7.noarch.rpm
│   │   │   ├── spark_3_2_1-history-server-3.2.3-1.el7.noarch.rpm
│   │   │   ├── spark_3_2_1-master-3.2.3-1.el7.noarch.rpm
│   │   │   ├── spark_3_2_1-python-3.2.3-1.el7.noarch.rpm
│   │   │   ├── spark_3_2_1-sparkr-3.2.3-1.el7.noarch.rpm
│   │   │   ├── spark_3_2_1-thriftserver-3.2.3-1.el7.noarch.rpm
│   │   │   ├── spark_3_2_1-worker-3.2.3-1.el7.noarch.rpm
│   │   │   └── spark_3_2_1-yarn-shuffle-3.2.3-1.el7.noarch.rpm
│   │   └── spark_3_2_1-3.2.3-1.el7.src.rpm
│   ├── tez
│   │   ├── noarch
│   │   │   └── tez_3_2_1-0.10.2-1.el7.noarch.rpm
│   │   └── tez_3_2_1-0.10.2-1.el7.src.rpm
│   └── zookeeper
│       ├── x86_64
│       │   ├── zookeeper_3_2_1-3.6.4-1.el7.x86_64.rpm
│       │   ├── zookeeper_3_2_1-debuginfo-3.6.4-1.el7.x86_64.rpm
│       │   ├── zookeeper_3_2_1-native-3.6.4-1.el7.x86_64.rpm
│       │   ├── zookeeper_3_2_1-rest-3.6.4-1.el7.x86_64.rpm
│       │   └── zookeeper_3_2_1-server-3.6.4-1.el7.x86_64.rpm
│       └── zookeeper_3_2_1-3.6.4-1.el7.src.rpm
└── repodata
    ├── 15cc6a5320a9f6e38cda7b8ec54e7e28ed527df25ee6f56c1bf20cfa421dfe73-other.sqlite.bz2
    ├── 1a5c0f03d6edae3170255a282d113afe9b22f654f246ea308f162e14234cf5f8-filelists.sqlite.bz2
    ├── 28cb1ff79328b8ebeaa55021078984e8da908081b0b389e4037d9b1e5854ae22-primary.xml.gz
    ├── 5066ad167311131c46e983c0d66c4901b92a4e862b11aff3492f02f90ec2eb36-other.xml.gz
    ├── 617177ba2b017e6e6b4a62b157fe3441ea97b74455d60792e78471f938b86cb8-filelists.xml.gz
    ├── 7ea377d3a0b59ffaaef9661cb7dd3f2144bd7bc27da1a11070b6d78d5116dddd-primary.sqlite.bz2
    └── repomd.xml
37 directories, 103 files

2.6 ambari 安裝

安裝中可能出現的問題及解決方案

  • 問題1:yum install ambari-server後出現以下日誌,軟體沒有安裝成功,也沒有任何反應
    • 解決方案:yum clean all && yum makecache
Loaded plugins:aliases,changelog,fastestmirror, kabi, langpacks, tmprepo, verify, versionlock
Loading support for RedHat kernel ABI
  • 問題2:yum源配置
    /etc/yum.repos.d/ambari.repo (必須為此名稱,安裝過程有校驗)
[BIGTOP-3.2.1]   # 必須為此名稱,和ambari-server中的配置一致,包含大小寫,下一行同理
name=BIGTOP-3.2.1
baseurl=http://192.168.76.107/chdp3.2
failovermethod=priority
enabled=1
gpgcheck=0 

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 《數據資產管理核心技術與應用》是由清華大學出版社出版的一本圖書,該圖書主要特點如下: 1、依托於大數據技術,獨家解密數據血緣的底層技術實現 2、詳解數據資產管理的知識體系和核心技術 3、應用元數據管理和數據建模技術,充分發揮出數據資產的更大潛力和價值。 4、全書從元數據、數據血緣、數據質量、數據服務 ...
  • 因為在工作中需要推動Apache DolphinScheduler的升級,經過預研,從1.3.4到3.1.2有的體驗了很大的提升,在性能和功能性有了很多的改善,推薦升級。 查看官方的升級文檔,可知有提供升級腳本,如果只是跨小版本的更新那麼只用執行腳本就好了,但跨多個大版本升級時依然容易出現各種問題, ...
  • 近日,2024可信資料庫發展大會在北京召開,主題為“自主、創新、引領”。大會重磅發佈多項中國信通院及中國通信標準化協會大數據技術標準推進委員會(CCSA TC601)在資料庫領域最新研究和實踐成果。一眾資料庫領域的專家、學者、創業者匯聚一堂,圍繞金融、電信、能源與政務領域的資料庫應用創新帶來切實的落... ...
  • 最近我們遇到很多客戶需求是把Talend遷移到WhaleStudio,主要是發現WhaleStudio支持的數據源多很多,從各個版本的SAP到AWS Redshift,S3,從MangoDB CDC到 Neo4J甚至各種國產信創數據源,可謂應有盡有。同時,客戶發現WhaleStudio同步效率比Ta ...
  • 這次向大家分享一篇流圖處理系統論文GraphBolt,看如何基於計算曆史的方式實現增量圖計算,並保證與全量圖計算語義的一致性。 ...
  • 寫在前面 今天繼續前面的20題之後的練習,數據都是一樣的,可以直接使用,來看看你的sql功底降了沒。 基礎20題 #1.查詢每個員⼯的姓名、郵箱、職位名稱以及所在部⻔名稱。 SELECT CONCAT(last_name,first_name) as 姓名, email, job_title, de ...
  • 這次向大家分享Microsoft發表在SOSP'13的另一篇關於流處理系統論文Naiad,TimelyDataflow是它的開源實現。該論文促進了後續的流圖系統的設計與創新,從其調度框架設計中也可以看到TuGraph Analytics調度器的影子。 ...
  • EasyMR 作為袋鼠雲基於雲原生技術和 Hadoop、Hive、Spark、Flink、Hbase、Presto 等開源大數據組件構建的彈性計算引擎。此前,我們已就其展開了多方位、多角度的詳盡介紹。而此次,我們成功接入了大數據組件的升級和回滾功能,能夠藉助 EasyMR 來掌控大數據組件的升級與回 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...