当前位置: 首页 > 科技观察

如何在Windows上运行ApacheKafka?_0

时间:2023-03-17 12:33:59 科技观察

【.com快译】Windows是你最喜欢的开发环境吗?想在Windows上运行ApacheKafka?多亏了适用于Linux2(WSL2)的Windows子系统,现在您可以了。Windows仍然不是运行Kafka和生产级工作负载的推荐平台,但如果您想尝试Kafka,那完全没问题。这是如何做的。1.搭建环境InstallingWSL2WindowsSubsystemforLinux2让这一切成为可能。据微软称,WSL2是“直接在Windows上的GNU/Linux环境(包括大多数命令行工具、实用程序和应用程序),未经修改,没有传统虚拟机或双启动设置的开销。”确保您运行的是Windows10版本1903.18362或更高版本。单击“开始”,然后转到“设置”>“系统”>“关于”。在“Windows规范”部分找到“操作系统版本”。图1如果您使用Windows更新,您可能拥有最新版本并且可以开始使用。如果不是,则需要更新Windows10。如果确定Windows是最新的,请按照以下说明安装WSL2。启用适用于Linux的Windows子系统在安装Linux发行版之前,请先启用适用于Linux的Windows子系统功能。以管理员身份打开PowerShell并运行以下命令:dism.exe/online/enable-feature/featurename:Microsoft-Windows-Subsystem-Linux/all/norestart这可能需要一两分钟。输出应类似于以下内容:DeploymentImageServicingandManagementtoolVersion:10.0.18362.1139ImageVersion:10.0.18363.1139Enablingfeature(s)[=============================100.0%=============================]操作成功完成。启用虚拟机功能WSL2需要虚拟机平台功能。在PowerShell中,运行以下命令:dism.exe/online/enable-feature/featurename:VirtualMachinePlatform/all/norestart获取Linux内核更新下载Linux内核更新包,它们是常规的Windows安装程序(.msi)文件。双击.msi文件以安装WSL2更新。如果提示提升权限,请选择“是”以批准安装。设置默认WSL版本在PowerShell中运行以下命令以将WSL2设置为Linux发行版的默认版本:wsl--set-default-version2输出应如下所示:ForinformationonkeydifferenceswithWSL2pleasevisithttps://aka.ms/wsl2WSL2可以用完了。有关安装WSL2的更多信息,包括故障排除,请参阅《面向Windows 10的Windows Subsystem for Linux安装指南》。安装您最喜欢的Linux发行版从MicrosoftStore安装Linux,就像在Windows上安装其他应用程序一样。打开MicrosoftStore应用并搜索“Linux”。图2本文使用Ubuntu20.04。选择Ubuntu20.04LTS并单击安装。安装完成后,点击“开始”。一个shell将打开并显示以下消息:正在安装,这可能需要几分钟...请创建一个默认的UNIX用户帐户。用户名不需要与您的Windows用户名匹配。有关详细信息,请访问:https://aka.ms/wslusers输入新的UNIX用户名:输入用户名和密码以完成安装。图3安装Java运行程序包管理器以获取最新更新。在上面打开的Ubuntushell窗口中,运行以下命令:sudoapt-getupdate&&sudoapt-getupgrade-y??提示:右键单击将estext粘贴到终端窗口中。Kafka需要JavaRuntimeEnvironment版本8或更高版本。查看linux安装系统中的Java版本:java-version输入类似这样:openjdkversion"1.8.0_265"OpenJDKRuntimeEnvironment(build1.8.0_265-8u265-b01-0ubuntu2~20.04-b01)OpenJDK64-BitServerVM(build25.265-b01,mixedmode)如果Java未安装或版本不合适,请使用您的发行版的包管理器进行安装。有许多方法可以安装Java。在Ubuntu上,这是最简单的方法之一:sudoaptinstallopenjdk-8-jdk-y下载Kafka您可以使用包管理器安装Kafka,也可以下载打包文件(tarball)并将其直接解压缩到本地计算机。从Kafka下载网站选择一个镜像,下载打包后的文件。以下命令下载ApacheKafka2.6版本:wgethttps://ftp.wayne.edu/apache/kafka/2.6.0/kafka_2.13-2.6.0.tgz运行以下命令解压Kafka压缩包并切换到kafka通过cd目录:tar-xzfkafka_2.13-2.6.0.tgzcdkafka_2.13-2.6.0运行ls–al命令列出kafka目录的内容:total64drwxr-xr-x7jimjim4096Oct1412:27./drwxr-xr-x25jimjim4096Nov2012:52../-rw-r--r--1jimjim29975Jul2811:16LICENSE-rw-r--r--1jimjim337Jul2811:16NOTICEdrwxr-xr-x3jimjim4096Jul2811:23bin/drwxr-xr-x2jimjim4096Jul2811:23config/drwxr-xr-x2jimjim4096Oct1412:26libs/drwxr-xr-x2jimjim4096Oct1412:28logs/drwxr-xr-x2jimjim4096Jul2811:23site-docs/StartKafkacluster运行如下命令启动ZooKeeper:bin/zookeeper-server-start.shconfig/zookeeper.properties会有很多输出,ZooKeeper很快就会准备好,通常只需要一两秒。打开另一个终端会话。将目录切换到kafka目录,启动Kafka代理:cdkafka_2.13-2.6.0bin/kafka-server-start.shconfig/server.properties如果将窗口并排排列,输出应类似于以下屏幕截图:图4.在运行于WSL2的Ubuntu20.04上的Windows和ZooKeeper(左)和Kafka代理(右)上。要生成和使用一些消息,请打开另一个终端会话并运行kafka-topics命令以创建一个名为quickstart-events的Kafka主题:cdkafka_2.13-2.6.0bin/kafka-topics.sh--create--topicquickstart-events--bootstrap-serverlocalhost:9092输出应如下所示:firsteventsecondeventthirdevent并排排列生产者和消费者终端窗口。在生产者终端中,再输入几条消息并观察它们出现在消费者终端中。图5停止Kafka试用Kafka后,按照以下步骤退出Kafka环境:1.使用Ctrl+C停止消费者和生产客户端2.使用Ctrl+C停止Kafka代理3.使用Ctrl+C停止ZooKeeper服务器4。运行以下命令进行清理:rm-rf/tmp/kafka-logs/tmp/zookeeperfor.com]