OSS-HDFS服務端記錄了客戶端請求的查詢、修改、刪除文件元數據的操作審計日志。 您可以通過審計日志,了解OSS-HDFS服務操作審計、訪問統計以及異常請求等情況。
前提條件
使用最新版本JindoSDK。下載地址,請參見GitHub。
配置OSS-HDFS服務下Bucket的訪問密鑰。
具體操作,請參見通過Jindo CLI命令訪問OSS/OSS-HDFS。
背景信息
OSS-HDFS審計日志默認保存在以下路徑,暫不支持自定義輸出路徑。
oss://<hdfs_bucket>.<dls_endpoint>/.sysinfo/auditlog/
其中,<hdfs_bucket>填寫已開通OSS-HDFS服務的Bucket名稱。<dls_endpoint>填寫OSS-HDFS服務的訪問域名。更多信息,請參見配置OSS-HDFS服務的Endpoint。
日志文件按天存放在不同的目錄下,同一天的日志文件按單個文件64 MB的大小限制進行拆分。示例如下:
為簡要說明存儲路徑,以下示例均省略了oss://<hdfs_bucket>.<dls_endpoint>/根路徑。
/.sysinfo/auditlog/2023-07-06/2023-07-06-00-07-00.auditlog
/.sysinfo/auditlog/2023-07-06/2023-07-06-00-07-50.auditlog
/.sysinfo/auditlog/2023-07-06/2023-07-06-00-08-50.auditlog
/.sysinfo/auditlog/2023-07-06/2023-07-06-00-09-50.auditlog
/.sysinfo/auditlog/2023-07-07/2023-07-07-00-07-10.auditlog
/.sysinfo/auditlog/2023-07-08/2023-07-07-00-07-10.auditlog
操作步驟
(可選):自定義審計日志保存天數。
審計日志默認保存時間是30天,支持通過以下步驟自定義保留天數為1~60天,達到保留天數后審計日志由系統自動刪除。
登錄OSS管理控制臺。
單擊左側導航欄的Bucket列表,然后單擊目標Bucket。
在左側導航欄,選擇 。
在HDFS服務頁簽,單擊審計日志區域的,修改審計日志的保存天數。
單擊確定。
下載審計日志文件。
以下載2023-07-07的審計日志到本地tmp/目錄為例。
通過Jindo CLI命令
jindo fs -get oss://<hdfs_bucket>.<dls_endpoint>/.sysinfo/auditlog/2023-07-07 /tmp/
通過HDFS Shell命令
hdfs dfs -get oss://<hdfs_bucket>.<dls_endpoint>/.sysinfo/auditlog/2023-07-07 /tmp/
其中,<hdfs_bucket>填寫已開通OSS-HDFS服務的Bucket名稱。<dls_endpoint>填寫OSS-HDFS服務的訪問域名。更多信息,請參見配置OSS-HDFS服務的Endpoint。
通過vi或vim命令打開審計日志文件。
審計日志文件示例如下:
2023-07-07 12:32:45.557 allowed=true ugi=root (auth:SIMPLE) ip=192.168.2.22 cmd=mkdirs src=/tmp/presto-root/e94dd606-ba21-4675-9b88-c82f66483628/b1=68/c1=68 dst=<null> perm=root:hadoop:rw-r----- proto=PROTOCOL_UNKNOWN 2023-07-07 12:32:46.39 allowed=true ugi=root (auth:SIMPLE) ip=192.168.2.22 cmd=getfileinfo src=/xxx/nnbench/user/hive/warehouse/mydb_18520/root/t1/b1=2/c1=2/20230707_043031_00022_xxx_80561c14-4d19-494e-8337-0e9b7b0d6663 dst=<null> perm=<null> proto=PROTOCOL_UNKNOWN 2023-07-07 12:33:02.169 allowed=true ugi=root (auth:SIMPLE) ip=192.168.2.22 cmd=rename src=/tmp/presto-root/e94dd606-ba21-4675-9b88-c82f66483628/b1=60/c1=60/20230707_043220_00030_xxx_03832297-7e89-4b0f-a3a2-88b1c4cec6da dst=/xxx/nnbench/user/hive/warehouse/mydb_18520/root/t1/b1=60/c1=60/20230707_043220_00030_xxx_03832297-7e89-4b0f-a3a2-88b1c4cec6da perm=presto:hadoop:rw-r----- proto=PROTOCOL_UNKNOWN 2023-07-07 12:33:05.430 allowed=true ugi=root (auth:SIMPLE) ip=192.168.2.22 cmd=delete src=/tmp/presto-root/e94dd606-ba21-4675-9b88-c82f66483628/b1=62 dst=<null> perm=<null> proto=PROTOCOL_UNKNOWN
審計日志文件的各字段含義說明如下:
字段
含義
(首字段)
請求時間。
allowed
表示是否允許該操作。
true:表示允許執行該操作。
false:表示拒絕執行該操作。
ugi
用戶名。
ip
發起請求的客戶端IP地址。
cmd
操作類型,主要包含create、delete、mkdirs、rename、getfileinfo、listStatus、contentSummary、setStoragePolicy、unsetStoragePolicy等操作。
src
文件路徑。
dst
僅當請求的操作類型為rename時,存在dst路徑。
perm
創建文件、目錄使用的默認權限。
proto
請求的協議,目前僅支持REST協議。