ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

Vector 在 Amazon Linux 上的安装与运维完整指南

2026/9/14 20:48:52 拓冰建站 浏览量
Vector 在 Amazon Linux 上的安装与运维完整指南 Vector 在 Amazon Linux 上的安装与运维完整指南【免费下载链接】vectorA high-performance observability data pipeline.项目地址: https://gitcode.com/GitHub_Trending/vect/vector导读Vector 是一个高性能的可观测性数据管道observability data pipeline用于采集、转换和路由日志、指标与 trace 数据。本文聚焦 Amazon LinuxAWS 官方为 EC2 提供的 Linux AMI这一操作系统完整讲解 Vector 的安装方式、包管理操作、systemd 服务管理以及基于 YUM/RPM 与 Docker 的日常运维命令并辅以当前仓库源码RPM 打包规范、systemd 单元文件、安装脚本作为底层实现依据帮助你在 Amazon EC2 环境中快速落地一套可维护的 Vector 部署。Amazon Linux 与 Vector 的适配背景Amazon Linux AMI 是 Amazon Web Services 为 Amazon Elastic Compute CloudAmazon EC2提供的受支持且持续维护的 Linux 镜像其设计目标是为 EC2 上运行的应用提供稳定、安全、高性能的执行环境。它基于 RPM 包管理体系因此可以无缝使用 Vector 官方提供的 YUM 软件源与 RPM 包。当前仓库中Vector 的 RPM 打包规范位于 distribution/rpm/vector.spec该规范明确将包元数据定义为Name: vector、License: MPL-2.0并把二进制安装到%{_bindir}即/usr/bin/vector同时安装 systemd 单元文件与示例配置。也就是说Amazon Linux 用户可以直接通过系统包管理器获得与仓库发行版本一致的安装产物。支持的安装方式Vector 官方为 Amazon Linux 提供以下安装器installer支持YUM通过 Datadog 托管的 YUM 软件源安装推荐自动处理依赖与升级RPM直接下载并安装官方 RPM 包Docker在容器中运行 VectorVector installer平台无关的官方安装脚本这些安装器在文档站点中由supported-installersshortcode 自动渲染成链接列表其实现见 website/layouts/shortcodes/supported-installers.html它会根据页面 front matter 中的supported_installers参数本文档声明为[YUM, RPM, Docker, Vector installer]逐个生成对应安装文档的跳转链接。下文分别给出每种方式的完整操作步骤。方式一通过 YUM 软件源安装推荐YUMYellowdog Updater, Modified是基于 RPM 包管理器的命令行包管理工具适合 Amazon Linux、CentOS、RHEL 等 RPM 系发行版。Vector 的 YUM 仓库由 Datadog。添加软件源并安装首先执行官方 setup 脚本添加 Vector 软件源bash -c $(curl -L https://setup.vector.dev)然后安装 Vectorsudo yum install vector升级 Vectorsudo yum upgrade vector卸载 Vectorsudo yum remove vector使用 YUM 安装的收益在于包管理器会替你处理依赖、文件属性和升级路径。仓库中的 RPM 规范distribution/rpm/vector.spec显示安装包在%post阶段会自动创建名为vector的系统用户--shell /sbin/nologin、主目录/var/lib/vector并将其加入systemd-journal与systemd-journal-remote用户组从而让 Vector 能够读取 journald 日志例如用于journald源。同时%post阶段还会创建/var/lib/vector目录并设置属主。方式二直接安装 RPM 包如果你不想添加 YUM 软件源也可以直接使用rpm命令从官方仓库下载并安装sudo rpm -i https://yum.vector.dev/stable/vector-0/{arch}/vector-版本号-1.{arch}.rpm注意将{arch}替换为以下架构之一架构值说明x86_6464 位 Intel/AMD 架构绝大多数 EC2 实例aarch6464 位 ARM 架构如 Graviton 系列实例armv7hl32 位 ARM hard-float 架构并替换版本号为具体版本例如0.59.0与仓库 Cargo.toml 中声明的版本一致。卸载 Vectorsudo rpm -e vectorRPM 包的安装内容从 distribution/rpm/vector.spec 的%files段可以看到RPM 包实际交付的文件包括/usr/bin/vector主二进制systemd 单元文件vector.service/etc/default/vector环境变量配置文件%config(noreplace)升级时不会覆盖用户修改/etc/vector/examples/*示例配置/var/lib/vector数据目录属主为vector用户README、NOTICE、LICENSE 与第三方许可清单等文档也就是说安装完成后你不仅获得了可执行文件还获得了开箱即用的 systemd 服务单元与配置骨架。方式三使用 Vector installer 官方脚本Vector installer 是一个平台无关的安装脚本适合快速安装或脚本化部署curl --proto https --tlsv1.2 -sSfL https://sh.vector.dev | bash如需指定版本可以通过环境变量VECTOR_VERSION传入curl --proto https --tlsv1.2 -sSfL https://sh.vector.dev | VECTOR_VERSION0.34.1 bash官方脚本的完整说明见 Vector installer 文档。它同样会落地二进制与 systemd 服务方便后续统一管理。方式四通过 Docker 运行若你的 EC2 环境已经容器化可以直接使用 Vector 官方镜像。完整文档见 Docker 安装文档镜像构建配置位于 distribution/docker提供alpine、debian、distroless-libc、distroless-static等变体。拉取镜像docker pull timberio/vector:0.59.0-debian也可从 GitHub Container Registry 拉取docker pull ghcr.io/vectordotdev/vector:0.59.0-debian除debian外还可使用alpine、distroless-libc、distroless-static等发行变体。编写配置并启动创建一份最小可用的 Vector 配置输出 demo 日志到 stdoutcat -EOF $PWD/vector.yaml api: enabled: true address: 0.0.0.0:8686 sources: demo_logs: type: demo_logs interval: 1 format: json sinks: console: inputs: - demo_logs target: stdout type: console encoding: codec: json EOF启动容器将配置挂载到容器内/etc/vector/vector.yamldocker run \ -d \ -v $PWD/vector.yaml:/etc/vector/vector.yaml:ro \ -p 8686:8686 \ --name vector \ timberio/vector:0.59.0-debian如果使用其他发行变体请相应替换镜像标签中的debian。停止 / 重载 / 重启 / 观察 / 卸载# 停止 docker stop vector # 重载配置向主进程发送 HUP 信号 docker kill --signalHUP vector # 重启 docker restart $(docker ps -aqf namevector) # 查看实时日志 docker logs -f $(docker ps -aqf namevector) # 查看运行指标 docker exec -ti $(docker ps -aqf namevector) vector top # 卸载删除容器 docker rm vector安装后的 systemd 服务管理无论通过 YUM、RPM 还是 installer 安装Amazon Linux 上的 Vector 都由 systemd 管理。仓库中的单元文件 distribution/systemd/vector.service 揭示了服务的完整行为[Unit] DescriptionVector Documentationhttps://vector.dev Afternetwork-online.target Requiresnetwork-online.target [Service] Uservector Groupvector ExecStartPre/usr/bin/vector validate ExecStart/usr/bin/vector ExecReload/usr/bin/vector validate --no-environment ExecReload/bin/kill -HUP $MAINPID Restartalways AmbientCapabilitiesCAP_NET_BIND_SERVICE EnvironmentFile-/etc/default/vector StartLimitInterval10 StartLimitBurst5 [Install] WantedBymulti-user.target要点解读专用运行用户服务以vector用户和vector组运行由 RPM%post脚本自动创建遵循最小权限原则。启动前校验ExecStartPre/usr/bin/vector validate会在启动前校验配置合法性配置有误时拒绝启动ExecReload同样先执行validate --no-environment再发送 HUP 信号完成热重载。自动重启Restartalways保证进程异常退出后被 systemd 拉起StartLimitInterval10、StartLimitBurst5限制了重启频率防止崩溃循环。特权能力AmbientCapabilitiesCAP_NET_BIND_SERVICE允许以非 root 身份绑定 1024 以下特权端口例如 80/443 的 source/sink 监听。环境变量配置EnvironmentFile-/etc/default/vector读取 distribution/systemd/vector.default 中的环境变量默认文件为空可参照注释按需填写例如注入用于 secret 管理的环境变量-前缀表示文件缺失时不报错。常用 systemd 命令# 启动并设置开机自启 sudo systemctl enable --now vector # 查看状态 sudo systemctl status vector # 停止 sudo systemctl stop vector # 重载配置先校验、后 HUP 热重载 sudo systemctl reload vector # 重启 sudo systemctl restart vector # 查看日志 sudo journalctl -u vector -f # 禁用开机自启 sudo systemctl disable vector仓库还提供了加固版本单元文件 distribution/systemd/hardened-vector.service适用于对安全基线要求更高的生产环境。快速验证安装安装完成后可以通过以下命令确认 Vector 正常工作# 查看版本 vector --version # 校验配置 sudo vector validate --config /etc/vector/vector.yaml # 运行顶层监控界面观察吞吐与拓扑 vector top其中vector validate是启动前校验、配置热重载等场景共用的核心子命令源码入口位于 src/validate.rsvector top是实时监控命令实现在 src/top。典型落地场景EC2 上的日志采集将以上步骤组合一个典型的 Amazon Linux EC2 采集节点部署流程为通过 YUM 安装 Vectorsudo yum install vector编写/etc/vector/vector.yaml例如配置file源采集/var/log/下日志经remap转换后发送到目标 sinksudo systemctl enable --now vector启动并自启修改配置后执行sudo systemctl reload vector热重载用sudo journalctl -u vector -f与vector top持续观察运行状态与吞吐指标。如需在 Kubernetes 环境部署可参考 Helm 安装文档 与 Kubernetes 部署文档。参考文档YUM 安装文档RPM 安装文档Vector installer 安装文档Docker 安装文档RPM 打包规范systemd 服务单元示例配置【免费下载链接】vectorA high-performance observability data pipeline.项目地址: https://gitcode.com/GitHub_Trending/vect/vector创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考