2024年7月11日 星期四

 在ubuntu中安裝gsutil,把log 轉到google cloud storge

安装 gsutil

  1. 安装 Google Cloud SDK

首先,下载并安装 Google Cloud SDK:


sudo apt-get update && sudo apt-get install -y curl apt-transport-https ca-certificates gnupg

添加 Google Cloud 的公钥:


echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg add -

更新并安装 Google Cloud SDK:


sudo apt-get update && sudo apt-get install google-cloud-sdk
  1. 初始化 Google Cloud SDK

安装完成后,初始化 Google Cloud SDK:


gcloud init

按照提示登录 Google 帐户并设置项目。

  1. 安装 gsutil

gsutil 是 Google Cloud SDK 的一部分,安装 SDK 后,gsutil 就已经包含在内了。您可以通过以下命令验证安装:


gsutil version

配置并使用 gsutil

  1. 创建上传脚本

创建一个脚本来将日志文件上传到 GCS。例如,在 /usr/local/bin/upload_logs_to_gcs.sh 创建脚本:


sudo nano /usr/local/bin/upload_logs_to_gcs.sh

添加以下内容:


#!/bin/bash # 定义日志文件和GCS路径 LOG_DIR="/var/log/apache2" GCS_BUCKET="gs://niea-log-data/IP60apache-logs" # 使用 gsutil 将日志文件复制到 GCS gsutil -m cp ${LOG_DIR}/*.log ${GCS_BUCKET}/

保存并关闭文件,然后使脚本可执行:


sudo chmod +x /usr/local/bin/upload_logs_to_gcs.sh
  1. 设置定时任务

编辑 cron 任务计划:


sudo crontab -e

添加以下行来每小时运行一次脚本:


58 * * * * /usr/local/bin/upload_logs_to_gcs.sh

测试配置

您可以手动运行脚本来验证其工作是否正常:


/usr/local/bin/upload_logs_to_gcs.sh

检查 GCS 存储桶中的目标目录,确认日志文件已成功上传。

通过这些步骤,您的日志文件将每小时自动上传到 GCS,确保日志的备份和存档。