使用Docker轻松搭建Confluent(Kafka)的开发环境
首先
以下是使用Docker在10分钟内构建Confluent(Kafka)开发环境的方法。(限制在开发环境,因为没有进行冗余和分布式处理,可能导致数据丢失的风险。)
只需要一个选项的话,以下是对”前提条件”的中文本地化释义:
先决条件
-
- Dockerが動作する環境がある事
-
- Dockerホストのメモリが8GB以上あること(満たなくても動くことがありますが、私が使った感覚ではよく落ちました)
-
- 環境構築を行うDockerホストがインターネットと接続している事
-
- Docker-Composeをインストールしている事
- gitコマンドのインストールしていること
由于没有提及前提步骤的环境配置,所以请根据需要参考他人的文章,例如搜索”Docker-Compose 導入”等关键词。
环境搭建步骤及简易说明
(1) 从 GitHub 获取 docker-compose.yaml 文件
# git clone https://github.com/confluentinc/examples
# cd examples
# git checkout 5.3.1-post
# cd cp-all-in-one
- ブランチ名5.3.1-postの数値はConfluentのバージョン番号を指しています。2019年10月現在のLatestで記載しています。
(2) 下载 Docker 映像并启动容器
# docker-compose up -d --build
- コマンドが終了してもバックグラウンドで各デーモンが起動中の場合があります。GUI[http://localhost:9021]でステータスを確認してください。
(3) 检查运行状况。
# docker-compose ps
Name Command State Ports
------------------------------------------------------------------------------------------
broker /etc/confluent/docker/run Up 0.0.0.0:29092->29092/tcp,
0.0.0.0:9092->9092/tcp
connect /etc/confluent/docker/run Up 0.0.0.0:8083->8083/tcp,
9092/tcp
control-center /etc/confluent/docker/run Up 0.0.0.0:9021->9021/tcp
ksql-cli ksql http://localhost:8088 Up
ksql-datagen bash -c echo Waiting for K ... Up
ksql-server /etc/confluent/docker/run Up 0.0.0.0:8088->8088/tcp
rest-proxy /etc/confluent/docker/run Up 0.0.0.0:8082->8082/tcp
schema-registry /etc/confluent/docker/run Up 0.0.0.0:8081->8081/tcp
zookeeper /etc/confluent/docker/run Up 0.0.0.0:2181->2181/tcp,
2888/tcp, 3888/tcp
- Steteが全てUpである事を確認します。
-
- クラスタがrunning
-
- Brokers が 1 (動作しているブローカーノードの数)
-
- KSQL Clusters が 1 (動作しているKSQLサーバの数)
- Connect Clueters が 1 (動作しているKafka Connectサーバの数)
※ 请等待Docker状态上升并等待每个节点(服务器)变为就绪。如果为0,请等几分钟后重新加载浏览器页面。
以上是测试环境的搭建完毕。很简单吧?
启动、停止和重新启动,删除方式。
启动和停止
# docker-compose stop
重新启动
# docker-compose start
清除环境
# docker-compose down
※ Docker 镜像保留。
填補不足
当进行开发、测试和演示时,Docker环境非常方便。
Confluent公司已经在GitHub上公开了演示脚本。我认为即使只是准备环境来执行这些脚本,也会很有趣。
相关内容
关于Apache Kafka的消息发送和接收(使用REST-PROXY)