Hadoop MapR 分散式安裝及自動化指令碼配置

2022-11-24 19:52:01 字數 2589 閱讀 9212

mapr的分散式叢集安裝過程還是很艱難的,遠遠沒有計劃中的簡單。本人總結安裝配置,由於叢集有很多機器,手動每臺配置是很累的,編寫了一個自動化配置指令碼,下面以指令碼為主線敘述(指令碼並不完善,後續繼續完善中)。

編寫指令碼需要shell基礎的,還要掌握awk和sed等統計手段為佳。作業系統是centos7。

準備:安裝centos作業系統並分割槽

分割槽:/ 50g

/home 50g

/boot 500m

/var 50g

/swap 8g

/disk 305g(剩餘全部,用於mapr的檔案管理系統使用。特別注意,後面需要去掉掛載,reboot後會進入緊急模式,需要在配置裡刪掉disk的掛載)

一 配置ip

根據公司網路**配置ip,這裡注意使用awk,用=劃分每一行,根據=前的變數修改=後的變數,輸出到備份檔案中;然後替換原有的ip配置檔案,最後重啟網絡卡。ip在設定前一定要ping一下,不通才可以使用,否則會有ip衝突。

function config_ip()

else

if($1=="

onboot")

else}'

> $temp_file

echo "

ipaddr=

"$ipaddr >>$temp_file

echo

"netmask=

"$netmask >>$temp_file

echo

"gateway=

"$gateway >>$temp_file

echo

"dns1=

"$dns1 >>$temp_file

mv $temp_file $enfile

service network restart

}

二 配置host檔案

本叢集暫時有四臺主機,分別為apm1,apm2,apm3和apm4。用相應名稱代替ip,簡化了機器間的通訊。

function config_hosts()

三 配置網路**

/etc/profile檔案中加入**配置,但這裡是追加到檔案尾部了,需要替換到檔案頂部。根據自己的**配置賬戶和密碼。

function config_proxy()

四 配置本地repo

function config_repo()

function config_software()

六 安裝mapr

使用mapr的repo,配置安裝mapr相應的服務,包括fileserver,nfs,nodemanager,zookeeper,resourcemanager 和cldb

function config_mapr()

七 配置env.sh

function config_env()

以上為指令碼的內容,可以完成mapr的大部分自動化配置安裝。

八 格式化disk,配置結點

後續完善。。。。。。。

指令碼原始碼為下:

#!/bin/bash

# config ip address

function config_ip()

else

if($1=="

onboot")

else}'

> $temp_file

echo "

ipaddr=

"$ipaddr >>$temp_file

echo

"netmask=

"$netmask >>$temp_file

echo

"gateway=

"$gateway >>$temp_file

echo

"dns1=

"$dns1 >>$temp_file

mv $temp_file $enfile

service network restart

}# config hosts

function config_hosts()

# config proxy

function config_proxy()

function config_repo()

# config software

function config_software()

# mapr repo

function config_mapr()

function config_env()

# main

config_repo

config_software

config_mapr

#config_ip

#config_hosts

#config_proxy