如何在E-MapReduce上使用引導操作安裝kafka元件
1. 什麼是引導操作
關於E-MapReduce上引導操作的概念和使用方式請參考文件。
2. 編寫安裝Kafka元件的指令碼
在E-MapReduce中編寫安裝Kafka元件指令碼主要有以下幾步:
- 下載Kafka-0.10.0.0安裝包
- 修改Kafka配置檔案
- 建立Kafka Log目錄
- 啟動Kafka daemon程式
以下是安裝Kafka元件的指令碼簡單示例:
#!/bin/bash
isMaster=`hostname --fqdn | grep emr-header`
if [ -n "$isMaster" ] ;then
echo "Master Node does not need to start kafka!"
else
echo "=> Download kafka package"
wget http://emr-agent-pack.oss-cn-hangzhou-internal.aliyuncs.com/bootstrap/kafka/0-10-0-0/kafka_2.10-0.10.0.0.tgz
tar xvf ./kafka_2.10-0.10.0.0.tgz -C /opt/apps/
echo "=> Modify Kafka Configuration"
echo "===> Replace broker id"
WORKER_ID=`hostname | cut -d `-` -f 3 | cut -d `.` -f 1`
sed -i "s/broker_id/$WORKER_ID/g" /opt/apps/kafka_2.10-0.10.0.0/config/server.properties
echo "===> Replace zookeeper address"
ZK_ADDR="emr-header-1:2181,emr-header-2:2181,emr-header-3:2181/kafka-0.10.0.0"
sed -i "s/zookeeper_address/$ZK_ADDR/g" /opt/apps/kafka_2.10-0.10.0.0/config/server.properties
echo "===> Create kafka log dir"
mkdir -p "/mnt/disk1/log/kafka-0.10.0.0"
mkdir -p "/mnt/disk2/log/kafka-0.10.0.0"
mkdir -p "/mnt/disk3/log/kafka-0.10.0.0"
mkdir -p "/mnt/disk4/log/kafka-0.10.0.0"
echo "===> Replace log dirs"
KAFKA_LOG_DIR_STRING="/mnt/disk1/log/kafka-0.10.0.0,/mnt/disk2/log/kafka-0.10.0.0,/mnt/disk3/log/kafka-0.10.0.0,/mnt/disk4/log/kafka-0.10.0.0"
sed -i "s/log_dirs/$KAFKA_LOG_DIR_STRING/g" /opt/apps/kafka_2.10-0.10.0.0/config/server.properties
echo "===> Replace listeners"
WORKER_HOSTNAME=`hostname`
echo "listeners=PLAINTEXT://$WORKER_HOSTNAME:9092" >> /opt/apps/kafka_2.10-0.10.0.0/config/server.properties
echo "===> Replace advertised listeners"
echo "advertised.listeners=PLAINTEXT://$WORKER_HOSTNAME:9092" >> /opt/apps/kafka_2.10-0.10.0.0/config/server.properties
echo "=> Start kafka daemon"
/opt/apps/kafka_2.10-0.10.0.0/bin/kafka-server-start.sh -daemon /opt/apps/kafka_2.10-0.10.0.0/config/server.properties &
echo "=> Clean"
rm -f ./kafka_2.10-0.10.0.0.tgz
fi
上述指令碼可以直接使用,安裝的軟體也是由E-MapReduce提供的。當然你可以基於這個指令碼再修改,也可以使用自己的Kafka安裝包,安裝任意版本。
另外需要注意的是,這個指令碼中只修改了幾個必要的引數,自定義的調優引數需要你額外補充到指令碼中,或者直接在安裝包裡預先修改好。
上傳指令碼
將上面的指令碼上傳到你自己的OSS中,可以通過OSS控制檯上傳,這裡我們命名這個指令碼為install_kafka.sh(任意你喜歡的名字都可以)。
安裝
參照幫助文件,建立叢集時點選新增引導操作,分別選擇剛才上傳的install_kafka.sh指令碼,建立1個引導操作步驟。叢集建立好後,通過叢集詳情頁的引導/軟體配置:無異常來確定引導操作執行成功
相關文章
- 如何在 Rocky Linux 上安裝 Apache Kafka?LinuxApacheKafka
- kafka 安裝到使用Kafka
- kafka安裝及使用Kafka
- 如何在 Ubuntu 上安裝和使用 R 語言Ubuntu
- 如何在 VirtualBox 上安裝並使用 FreeDOS?
- kafka的安裝與使用Kafka
- 使用 Bitnami Helm 安裝 KafkaKafka
- kafka 安裝部署,使用教程Kafka
- kafka的安裝及使用Kafka
- 如何在 MacOS 上安裝 ElasticsearchMacElasticsearch
- 如何在 Ubuntu 上安裝 MongoDBUbuntuMongoDB
- 如何在Windows上安裝DockerWindowsDocker
- 如何在 Ubuntu 上安裝 OctoberCMSUbuntu
- 如何在 Virtuozzo 上安裝 Plesk
- PHP 使用 Kafka 安裝拾遺PHPKafka
- kafka入門安裝和使用Kafka
- 教你如何在 CentOS 上安裝RedisCentOSRedis
- 如何在 Linux 上安裝 JavaLinuxJava
- 如何在LibreELEC上安裝Entware?
- 如何在 MacOS 上安裝 KibanaMac
- 如何在 Ubuntu 上安裝 VirtualBoxUbuntu
- 如何在 CentOS 7 上安裝 NginxCentOSNginx
- 如何在IIS上安裝證書
- 如何在debain上安裝mysql 5.7AIMySql
- 如何在 CentOS 7 上安裝 DockerCentOSDocker
- 如何在PC上安裝Mac OSMac
- EFI引導安裝win7Win7
- rr 引導 DSM 7.2 版本安裝
- 如何在 CentOS 8/RHEL 8 上安裝和使用 CockpitCentOSKPI
- 如何在 Linux 上使用 dnf 命令安裝軟體包?Linux
- 如何在 Linux 上使用 snap 安裝 Spotify(聲破天)Linux
- 如何在 FreeBSD 10.2 上安裝使用 Nginx 的 GhostNginx
- kafka安裝Kafka
- 如何安裝vmware以及如何在vmware上安裝centOS 7.0CentOS
- Kafka應用實戰——Kafka安裝及簡單使用Kafka
- 如何在 Ubuntu 上安裝 Python 3.8UbuntuPython
- 如何在 Windows 10 上安裝 WSL 2Windows
- 如何在 Ubuntu 上安裝 FireFox 15UbuntuFirefox