MinIO管理員完整指南


官方文檔地址:http://docs.minio.org.cn/docs/master/minio-admin-complete-guide

MinIO Client(mc)提供了“ admin”子命令來對您的MinIO部署執行管理任務。

service     服務重啟並停止所有MinIO服務器
update      更新更新所有MinIO服務器
info        信息顯示MinIO服務器信息
user        用戶管理用戶
group       小組管理小組
policy      MinIO服務器中定義的策略管理策略
config      配置管理MinIO服務器配置
heal        修復MinIO服務器上的磁盤,存儲桶和對象
profile     概要文件生成概要文件數據以進行調試
top         頂部提供MinIO的頂部統計信息
trace       跟蹤顯示MinIO服務器的http跟蹤
console     控制台顯示MinIO服務器的控制台日志
prometheus  Prometheus管理Prometheus配置
kms         kms執行KMS管理操作
3.添加MinIO存儲服務

MinIO服務器顯示URL,訪問權和秘密密鑰。
用法

mc config host add <ALIAS> <YOUR-MINIO-ENDPOINT> [YOUR-ACCESS-KEY] [YOUR-SECRET-KEY]

鍵必須由參數或標准輸入提供。

別名只是您的MinIO服務的簡稱。 MinIO端點,訪問和密鑰由您的MinIO服務提供。 Admin API使用“ S3v4”簽名,無法更改。
例子

1.參數鍵

mc config host add minio http://192.168.1.51:9000 BKIKJAA5BMMU2RHO6IBB V7f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12

2.按鍵提示

mc config host add minio http://192.168.1.51:9000
Enter Access Key: BKIKJAA5BMMU2RHO6IBB
Enter Secret Key: V7f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12

2.管道按鍵

echo -e "BKIKJAA5BMMU2RHO6IBB\nV7f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12" | \
mc config host add minio http://192.168.1.51:9000

  
4.測試您的設置

例:

獲取已配置別名“ minio”的MinIO服務器信息

mc admin info minio
●  min.minio.io
   Uptime: 11 hours
   Version: 2020-01-17T22:08:02Z
   Network: 1/1 OK
   Drives: 4/4 OK

2.1 GiB Used, 158 Buckets, 12,092 Objects
4 drives online, 0 drives offline

5.日常使用

您可以添加外殼別名以獲取信息,以便恢復。

alias minfo='mc admin info'
alias mheal='mc admin heal'

6.全局選項
選項[--debug]

調試選項使調試輸出到控制台。

示例:顯示“ info”命令的詳細調試輸出。

mc: <DEBUG> GET /minio/admin/v2/info HTTP/1.1
Host: play.minio.io
User-Agent: MinIO (linux; amd64) madmin-go/0.0.1 mc/DEVELOPMENT.GOGET
Authorization: AWS4-HMAC-SHA256 Credential=**REDACTED**/20200120//s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=**REDACTED**
X-Amz-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
X-Amz-Date: 20200120T185844Z
Accept-Encoding: gzip

mc: <DEBUG> HTTP/1.1 200 OK
Content-Length: 1105
Accept-Ranges: bytes
Connection: keep-alive
Content-Security-Policy: block-all-mixed-content
Content-Type: application/json
Date: Mon, 20 Jan 2020 18:58:44 GMT
Server: nginx/1.10.3 (Ubuntu)
Vary: Origin
X-Amz-Bucket-Region: us-east-1
X-Amz-Request-Id: 15EBAD6087210B2A
X-Xss-Protection: 1; mode=block

mc: <DEBUG> Response Time:  381.860854ms

●  play.minio.io
   Uptime: 11 hours
   Version: 2020-01-17T22:08:02Z
   Network: 1/1 OK
   Drives: 4/4 OK

2.1 GiB Used, 158 Buckets, 12,092 Objects
4 drives online, 0 drives offline

選項[--json]

JSON選項啟用[JSON行](http://jsonlines.org/)格式的可解析輸出。

*示例:MinIO服務器

mc admin --json info play
{
    "status": "success",
    "info": {
        "mode": "online",
        "region": "us-east-1",
        "deploymentID": "728e91fd-ed0c-4500-b13d-d143561518bf",
        "buckets": {
            "count": 158
        },
        "objects": {
            "count": 12092
        },
        "usage": {
            "size": 2249526349
        },
        "services": {
            "vault": {
                "status": "KMS configured using master key"
            },
            "ldap": {}
        },
        "backend": {
            "backendType": "Erasure",
            "onlineDisks": 4,
            "rrSCData": 2,
            "rrSCParity": 2,
            "standardSCData": 2,
            "standardSCParity": 2
        },
        "servers": [
            {
                "state": "ok",
                "endpoint": "play.minio.io",
                "uptime": 41216,
                "version": "2020-01-17T22:08:02Z",
                "commitID": "b0b25d558e25608e3a604888a0a43e58e8301dfb",
                "network": {
                    "play.minio.io": "online"
                },
                "disks": [
                    {
                        "path": "/home/play/data1",
                        "state": "ok",
                        "uuid": "c1f8dbf8-39c8-46cd-bab6-2c87d18db06a",
                        "totalspace": 8378122240,
                        "usedspace": 1410588672
                    },
                    {
                        "path": "/home/play/data2",
                        "state": "ok",
                        "uuid": "9616d28f-5f4d-47f4-9c6d-4deb0da07cad",
                        "totalspace": 8378122240,
                        "usedspace": 1410588672
                    },
                    {
                        "path": "/home/play/data3",
                        "state": "ok",
                        "uuid": "4c822d68-4d9a-4fa3-aabb-5bf5a58e5848",
                        "totalspace": 8378122240,
                        "usedspace": 1410588672
                    },
                    {
                        "path": "/home/play/data4",
                        "state": "ok",
                        "uuid": "95b5a33c-193b-4a11-b13a-a99bc1483182",
                        "totalspace": 8378122240,
                        "usedspace": 1410588672
                    }
                ]
            }
        ]
    }
}

選項[--no-color]

此選項禁用顏色主題。對於啞終端很有用。
選項[--quiet]

安靜選項禁止顯示聊天控制台輸出。
選項[--config-dir]

使用此選項設置自定義配置路徑。
選項[--insecure]

跳過SSL證書驗證。
7.命令
命令
service - 重新啟動和停止所有MinIO服務器
update - 更新所有MinIO服務器
info - 顯示MinIO服務器信息
user - 管理用戶
group - 管理組
policy - 管理固定政策
config - 管理服務器配置文件
heal - 修復MinIO服務器上的磁盤,存儲桶和對象
profile - 生成用於調試目的的配置文件數據
top - 為MinIO提供類似頂部的統計信息
trace - 顯示MinIO服務器的http跟蹤
console - 顯示MinIO服務器的控制台日志
prometheus - 管理prometheus配置設置

命令update-更新所有MinIO服務器

update命令提供了一種更新集群中所有MinIO服務器的方法。您還可以使用帶有update命令的私有鏡像服務器來更新MinIO集群。如果MinIO在無法訪問Internet的環境中運行,這很有用。

示例:更新所有MinIO服務器。

mc admin update play
Server `play` updated successfully from RELEASE.2019-08-14T20-49-49Z to RELEASE.2019-08-21T19-59-10Z

使用私有鏡像更新MinIO的步驟

為了在私有鏡像服務器上使用update命令,您需要在私有鏡像服務器上的https://dl.minio.io/server/minio/release/linux-amd64/上鏡像目錄結構,然后提供:

mc admin update myminio https://myfavorite-mirror.com/minio-server/linux-amd64/minio.sha256sum
Server `myminio` updated successfully from RELEASE.2019-08-14T20-49-49Z to RELEASE.2019-08-21T19-59-10Z

    注意: -指向分布式安裝程序的別名,此命令將自動更新群集中的所有MinIO服務器。 -update是您的MinIO服務的破壞性操作,任何正在進行的API操作都將被強制取消。因此,僅在計划為部署進行MinIO升級時才應使用它。 -建議在更新成功完成后執行重新啟動。

命令service-重新啟動並停止所有MinIO服務器

服務命令提供了一種重新啟動和停止所有MinIO服務器的方法。

    注意: -指向分布式設置的別名,此命令將在所有服務器上自動執行相同的操作。 -restart和stop子命令是MinIO服務的破壞性操作,任何正在進行的API操作都將被強制取消。因此,僅應在管理環境下使用。請謹慎使用。

NAME:
  mc admin service - restart and stop all MinIO servers

FLAGS:
  --help, -h                       show help

COMMANDS:
  restart  restart all MinIO servers
  stop     stop all MinIO servers

示例:重新啟動所有MinIO服務器。

mc admin service restart play
Restarted `play` successfully.

命令info-顯示MinIO服務器信息

“ info”命令顯示一台或多台MinIO服務器的服務器信息(在分布式集群下)

NAME:
  mc admin info - get MinIO server information

FLAGS:
  --help, -h                       show help

示例:顯示MinIO服務器信息。

mc admin info play
●  play.minio.io
   Uptime: 11 hours
   Version: 2020-01-17T22:08:02Z
   Network: 1/1 OK
   Drives: 4/4 OK

2.1 GiB Used, 158 Buckets, 12,092 Objects
4 drives online, 0 drives offline

命令policy-管理固定策略

policy命令,用於添加,刪除,列出策略,獲取有關策略的信息並為MinIO服務器上的用戶設置策略。

NAME:
  mc admin policy - manage policies

FLAGS:
  --help, -h                       show help

COMMANDS:
  add      add new policy
  remove   remove policy
  list     list all policies
  info     show info on a policy
  set      set IAM policy on a user or group

示例:列出MinIO上的所有固定策略。

mc admin policy list myminio/
diagnostics
readonly
readwrite
writeonly

示例:在MinIO上添加新策略'listbucketsonly',策略來自/tmp/listbucketsonly.json。 *對用戶應用此策略時,該用戶只能列出頂層存儲桶,而不能列出其他內容,沒有前綴,沒有對象。

首先使用以下信息創建json文件/tmp/listbucketsonly.json。

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:ListAllMyBuckets"
      ],
      "Resource": [
        "arn:aws:s3:::*"
      ]
    }
  ]
}

將策略作為“ listbucketsonly”添加到策略數據庫中

mc admin policy add myminio/ listbucketsonly /tmp/listbucketsonly.json
Added policy `listbucketsonly` successfully.

示例:在MinIO上刪除策略“ listbucketsonly”。

mc admin policy remove myminio/ listbucketsonly
Removed policy `listbucketsonly` successfully.

示例:顯示罐頭策略的信息,“只寫”

mc admin policy info myminio/ writeonly
{"Version":"2012-10-17","Statement":[{"Effect":"Allow","Action":["s3:PutObject"],"Resource":["arn:aws:s3:::*"]}]}

示例:在用戶或組上設置固定策略。“只寫”

mc admin policy set myminio/ writeonly user=someuser
Policy writeonly is set on user `someuser`

mc admin policy set myminio/ writeonly group=somegroup
Policy writeonly is set on group `somegroup`

命令user-管理用戶

用戶命令,用於添加,刪除,啟用,禁用MinIO服務器上的用戶。

NAME:
  mc admin user - manage users

FLAGS:
  --help, -h                       show help

COMMANDS:
  add      add new user
  disable  disable user
  enable   enable user
  remove   remove user
  list     list all users
  info     display info of a user

示例:在MinIO上添加新用戶'newuser'。

mc admin user add myminio/ newuser newuser123

示例:使用標准輸入在MinIO上添加新用戶'newuser'。

mc admin user add myminio/
Enter Access Key: newuser
Enter Secret Key: newuser123

示例:在MinIO上禁用用戶“ newuser”。

mc admin user disable myminio/ newuser

示例:在MinIO上啟用用戶“ newuser”。

mc admin user enable myminio/ newuser

示例:在MinIO上刪除用戶'newuser'。

mc admin user remove myminio/ newuser

示例:列出MinIO上的所有用戶。

mc admin user list --json myminio/
{"status":"success","accessKey":"newuser","userStatus":"enabled"}

示例:顯示用戶信息

mc admin user info myminio someuser

命令group-管理組

使用group命令在MinIO服務器上添加,刪除,信息,列出,啟用,禁用組。

NAME:
  mc admin group - manage groups

USAGE:
  mc admin group COMMAND [COMMAND FLAGS | -h] [ARGUMENTS...]

COMMANDS:
  add      add users to a new or existing group
  remove   remove group or members from a group
  info     display group info
  list     display list of groups
  enable   Enable a group
  disable  Disable a group

示例:將一對用戶添加到MinIO上的“ somegroup”組中。 如果組不存在,則會創建該組。

mc admin group add myminio somegroup someuser1 someuser2

示例:從MinIO的“ somegroup”組中刪除一對用戶。

mc admin group remove myminio somegroup someuser1 someuser2

示例:在MinIO上刪除組“ somegroup”。 僅在給定組為空時有效。

mc admin group remove myminio somegroup

示例:在MinIO上獲取有關“ somegroup”組的信息。

mc admin group info myminio somegroup

示例:列出MinIO上的所有組。

mc admin group list myminio

示例:在MinIO上啟用組“ somegroup”。

mc admin group enable myminio somegroup

示例:在MinIO上禁用組“ somegroup”。

mc admin group disable myminio somegroup

命令config-管理服務器配置

config命令用於管理MinIO服務器配置。

NAME:
  mc admin config - manage configuration file

USAGE:
  mc admin config COMMAND [COMMAND FLAGS | -h] [ARGUMENTS...]

COMMANDS:
  get     get config of a MinIO server/cluster.
  set     set new config file to a MinIO server/cluster.

FLAGS:
  --help, -h                       Show help.

示例:獲取MinIO服務器/集群的服務器配置。

mc admin config get myminio > /tmp/my-serverconfig

示例:設置MinIO服務器/集群的服務器配置。

mc admin config set myminio < /tmp/my-serverconfig

命令heal-修復MinIO服務器上的磁盤,存儲桶和對象

使用heal命令修復MinIO服務器上的磁盤,丟失的存儲桶和對象。 注意:此命令僅適用於MinIO擦除編碼設置(獨立和分布式)。

服務器已經有一個淺色的后台進程,可以在必要時修復磁盤,存儲桶和對象。 但是,它不會檢測某些類型的數據損壞,尤其是很少發生的數據損壞,例如靜默數據損壞。 在這種情況下,您需要隔一段時間手動運行提供以下標志的heal命令:--scan deep。

要顯示后台恢復過程的狀態,只需鍵入以下命令:mc admin heal your-alias。

要掃描和修復所有內容,請輸入:mc admin heal -r your-alias。

NAME:
  mc admin heal - heal disks, buckets and objects on MinIO server

FLAGS:
  --scan value                     select the healing scan mode (normal/deep) (default: "normal")
  --recursive, -r                  heal recursively
  --dry-run, -n                    only inspect data, but do not mutate
  --force-start, -f                force start a new heal sequence
  --force-stop, -s                 force stop a running heal sequence
  --remove                         remove dangling objects in heal sequence
  --help, -h                       show help

示例:更換新磁盤后修復MinIO集群,遞歸修復所有存儲桶和對象,其中'myminio'是MinIO服務器別名。

mc admin heal -r myminio

示例:遞歸修復特定存儲桶上的MinIO集群,其中“ myminio”是MinIO服務器別名。

mc admin heal -r myminio/mybucket

示例:遞歸修復特定對象前綴上的MinIO集群,其中“ myminio”是MinIO服務器別名。

mc admin heal -r myminio/mybucket/myobjectprefix

示例:顯示MinIO集群中自我修復過程的狀態。

mc admin heal myminio/

命令profile-生成用於調試目的的配置文件數據

NAME:
  mc admin profile - generate profile data for debugging purposes

COMMANDS:
  start  start recording profile data
  stop   stop and download profile data

開始進行CPU分析

mc admin profile start --type cpu myminio/

命令top-為MinIO提供類似top的統計信息

注意:此命令僅適用於分布式MinIO設置。 單節點和網關部署不支持此功能。

NAME:
  mc admin top - provide top like statistics for MinIO

COMMANDS:
  locks  Get a list of the 10 oldest locks on a MinIO cluster.

示例:獲取分布式MinIO群集上10個最舊鎖的列表,其中'myminio'是MinIO群集別名。

mc admin top locks myminio

命令trace-顯示MinIO服務器的http跟蹤

trace命令顯示一台或所有MinIO服務器(在分布式集群下)的服務器http跟蹤

NAME:
  mc admin trace - show http trace for MinIO server

FLAGS:
  --verbose, -v                 print verbose trace
  --all, -a                     trace all traffic (including internode traffic between MinIO servers)
  --errors, -e                  trace failed requests only
  --help, -h                    show help

示例:顯示MinIO服務器http跟蹤。

mc admin trace myminio
172.16.238.1 [REQUEST (objectAPIHandlers).ListBucketsHandler-fm] [154828542.525557] [2019-01-23 23:17:05 +0000]
172.16.238.1 GET /
172.16.238.1 Host: 172.16.238.3:9000
172.16.238.1 X-Amz-Date: 20190123T231705Z
172.16.238.1 Authorization: AWS4-HMAC-SHA256 Credential=minio/20190123/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=8385097f264efaf1b71a9b56514b8166bb0a03af8552f83e2658f877776c46b3
172.16.238.1 User-Agent: MinIO (linux; amd64) minio-go/v6.0.8 mc/2019-01-23T23:15:38Z
172.16.238.1 X-Amz-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
172.16.238.1
172.16.238.1 <BODY>
172.16.238.1 [RESPONSE] [154828542.525557] [2019-01-23 23:17:05 +0000]
172.16.238.1 200 OK
172.16.238.1 X-Amz-Request-Id: 157C9D641F42E547
172.16.238.1 X-Minio-Deployment-Id: 5f20fd91-6880-455f-a26d-07804b6821ca
172.16.238.1 X-Xss-Protection: 1; mode=block
172.16.238.1 Accept-Ranges: bytes
172.16.238.1 Content-Security-Policy: block-all-mixed-content
172.16.238.1 Content-Type: application/xml
172.16.238.1 Server: MinIO/RELEASE.2019-09-05T23-24-38Z
172.16.238.1 Vary: Origin
...

命令console-顯示MinIO服務器的控制台日志

“ console”命令顯示一台或所有MinIO服務器的服務器日志(在分布式集群下)

NAME:
  mc admin console - show console logs for MinIO server

FLAGS:
  --limit value, -l value       show last n log entries (default: 10)
  --help, -h                    show help

示例:顯示MinIO服務器http跟蹤。

mc admin console myminio

 API: SYSTEM(bucket=images)
 Time: 22:48:06 PDT 09/05/2019
 DeploymentID: 6faeded5-5cf3-4133-8a37-07c5d500207c
 RequestID: <none>
 RemoteHost: <none>
 UserAgent: <none>
 Error: ARN 'arn:minio:sqs:us-east-1:1:webhook' not found
        4: cmd/notification.go:1189:cmd.readNotificationConfig()
        3: cmd/notification.go:780:cmd.(*NotificationSys).refresh()
        2: cmd/notification.go:815:cmd.(*NotificationSys).Init()
        1: cmd/server-main.go:375:cmd.serverMain()

命令prometheus-管理prometheus配置設置

“generate”命令生成prometheus配置(要粘貼到“prometheus.yml”中)

NAME:
  mc admin prometheus - manages prometheus config

USAGE:
  mc admin prometheus COMMAND [COMMAND FLAGS | -h] [ARGUMENTS...]

COMMANDS:
  generate  generates prometheus config

_示例:為生成prometheus配置。

mc admin prometheus generate <alias>
- job_name: minio-job
  bearer_token: <token>
  metrics_path: /minio/prometheus/metrics
  scheme: http
  static_configs:
  - targets: ['localhost:9000']

命令kms-執行KMS管理操作

kms命令可用於執行KMS管理操作。

NAME:
  mc admin kms - perform KMS management operations

USAGE:
  mc admin kms COMMAND [COMMAND FLAGS | -h] [ARGUMENTS...]

key子命令可用於執行主密鑰管理操作。

NAME:
  mc admin kms key - manage KMS keys

USAGE:
  mc admin kms key COMMAND [COMMAND FLAGS | -h] [ARGUMENTS...]

示例:顯示默認主鍵的狀態信息

mc admin kms key status play
Key: my-minio-key
     • Encryption ✔
     • Decryption ✔

示例:顯示一個特定主鍵的狀態信息

mc admin kms key status play test-key-1
Key: test-key-1
     • Encryption ✔
     • Decryption ✔


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM