包头市做网站哪个,网站开发公司小程序开发,电子商务网站建设步骤,建站需要注意哪些主要是利用命令envsubst能实现变量的替换并生成新得配置文件以及docker命令行的变量输入等。本次实验主要是编写flume镜像#xff0c;并在容器启动(docker run)时动态修改配置文件并启动#xff0c;并向flume发数据#xff0c;然后发给kafka。此实验的基础#xff1a;会doc…主要是利用命令envsubst能实现变量的替换并生成新得配置文件以及docker命令行的变量输入等。本次实验主要是编写flume镜像并在容器启动(docker run)时动态修改配置文件并启动并向flume发数据然后发给kafka。此实验的基础会dockerfile的编写熟悉flume服务kafka服务。步骤1、dockerfile文件如下FROM centosWORKDIR/optCOPY jdk-8u241-linux-x64.rpm /rootRUN rpm-i /root/jdk-8u241-linux-x64.rpm # 安装jdkRUNyum install -y gettext # 安装 envsubst命令COPY flume ./flume/EXPOSE5140/udpVOLUME/tmp/logs/CMD envsubst /opt/flume/conf/flume.conf.template /opt/flume/conf/flume.conf ./flume/bin/flume-ng agent -c ./flume/conf/ -f ./flume/conf/flume.conf --name agent -Dflume.root.loggerINFO,console# envsubst根据flume.conf.template这个配置文件替换变量并生成flume.conf。flume的配置文件如下agent.sources s1agent.sinks k1agent.channels c1agent.sources.s1.type syslogudpagent.sources.s1.port 5140agent.sources.s1.host ${BIND_IP}agent.channels.c1.type memoryagent.channels.c1.capacity 100000agent.channels.c1.transactionCapacity 5000agent.sinks.k1.type loggeragent.sinks.k1.type org.apache.flume.sink.kafka.KafkaSinkagent.sinks.k1.kafka.topic logagent.sinks.k1.kafka.bootstrap.servers ${KAFKA_IP}:${KAFKA_PORT}agent.sinks.k1.flumeBatchSize 200agent.sinks.k1.producer.acks 1agent.sinks.k1.producer.linger.ms 1agent.sinks.k1.producer.compression.type snappyagent.sources.s1.channels c1agent.sinks.k1.channel c12、构建镜像docker build /root/flume/dockerfile/ -t flume_sink_file:v1注意/root/flume/dockerfile/目录下要有flume、jdk-8u241-linux-x64.rpm、dockerfile文件。3、启动容器docker run -d --rm -P -e KAFKA_IP192.168.174.128,KAFKA_PORT9092,BIND_IP0.0.0.0 --nameabcd flume_sink_file:v14、而后向flume发送数据测试是否能在kafka topic log上接收到数据。