MinIO - 9. MinIO 서버 구성 가이드

목록

MinIO Server Config Guide

MinIO 서버 구성 가이드

Configuration Directory

구성 디렉토리

Till MinIO release RELEASE.2018-08-02T23-11-36Z, MinIO server configuration file (config.json) was stored in the configuration directory specified by --config-dir or defaulted to ${HOME}/.minio.

MinIO가RELEASE.2018-08-02T23-11-36Z를 공개할 때까지 MinIO 서버 구성 파일 (config.json)은 --config-dir로 지정된 구성 디렉터리에 저장되거나 기본값은 ${HOME}/.minio입니다.

However from releases after RELEASE.2018-08-18T03-49-57Z, the configuration file (only), has been migrated to the storage backend (storage backend is the directory passed to MinIO server while starting the server).

하지만 RELEASE.2018-08-18T03-49-57Z 이후 릴리스에서는 구성 파일(만)이 스토리지 백엔드로 마이그레이션되었습니다 (스토리지 백엔드는 서버를 시작할 때 MinIO 서버에 전달되는 디렉터리입니다).

You can specify the location of your existing config using --config-dir, MinIO will migrate the config.json to your backend storage.

--config-dir을 사용하여 기존 구성의 위치를 지정할 수 있습니다. MinIO는 config.json을 백엔드 저장소로 마이그레이션합니다.

Your current config.json will be renamed upon successful migration as config.json.deprecated in your current --config-dir. All your existing configurations are honored after this migration.

마이그레이션이 성공하면 현재 config.json의 이름이 현재 --config-dir에서 config.json.deprecated로 변경됩니다. 이 마이그레이션 후에는 모든 기존 구성이 적용됩니다.

Additionally --config-dir is now a legacy option which will is scheduled for removal in future, so please update your local startup, ansible scripts accordingly.

또한 --config-dir은 이제 향후 제거 예정인 레거시 옵션이므로 이에 따라 로컬 시작, ansible 스크립트를 업데이트하십시오.

Copy

복사

minio server /data

Certificate Directory

인증서 디렉토리

TLS certificates by default are stored under ${HOME}/.minio/certs directory. You need to place certificates here to enable HTTPS based access.

기본적으로 TLS 인증서는 ${HOME}/.minio/certs 디렉토리에 저장됩니다. HTTPS 기반 액세스를 활성화하려면 여기에 인증서를 배치해야 합니다.

Read more about How to secure access to MinIO server with TLS. Following is the directory structure for MinIO server with TLS certificates.

TLS를 사용하여 MinIO 서버에 대한 액세스를 보호하는 방법에 대해 자세히 알아보세요. 다음은 TLS 인증서가 있는 MinIO 서버의 디렉토리 구조입니다.

Copy

복사

tree ~/.minio /home/user1/.minio ├── certs │ ├── CAs │ ├── private.key │ └── public.crt

You can provide a custom certs directory using --certs-dir command line option.

--certs-dir 명령줄 옵션을 사용하여 사용자 정의 인증서 디렉토리를 제공할 수 있습니다.

Accessing configuration file

구성 파일에 액세스하는 중

All configuration changes can be made using mc admin config get/set commands.

모든 구성 변경은 mc admin config get/set 명령을 사용하여 수행할 수 있습니다.

Following sections provide brief explanation of fields and how to customize them. A complete example of config.json is available here.

다음 섹션에서는 필드에 대한 간략한 설명과 필드를 사용자 정의하는 방법을 제공합니다. config.json의 전체 예는 여기에서 확인할 수 있습니다.

Editing configuration file fields

구성 파일 필드 편집

Get current configuration for MinIO deployment

MinIO 배포를 위한 현재 구성 가져오기

mc admin config get myminio/ > /tmp/myconfig

Set current configuration for MinIO deployment

MinIO 배포를 위한 현재 구성 설정

Copy

복사

mc admin config set myminio < /tmp/myconfig

The mc admin config API will evolve soon to be able to configure specific fields using get/set commands.

mc admin config API는 get/set 명령을 사용하여 특정 필드를 구성할 수 있도록 곧 발전할 예정입니다.

Version

버전

Field

필드

Type

유형

Description

설명

version

version

string

string

version determines the configuration file format. Any older version will automatically be migrated to the latest version upon startup. [DO NOT EDIT THIS FIELD MANUALLY]

version은 구성 파일 형식을 결정합니다. 시작할 때 모든 이전 버전은 자동으로 최신 버전으로 마이그레이션됩니다. [이 필드를 수동으로 편집하지 마십시오]

Credential

신임장

Field

필드

Type

유형

Description

설명

credential

credential

Auth credential for object storage and web access.

객체 스토리지 및 웹 액세스를 위한 인증 자격 증명

credential.accessKey

credential.accessKey

string

string

Access key of minimum 3 characters in length. You may override this field with MINIO_ACCESS_KEY environment variable.

최소 3 자 길이의 액세스 키. 이 필드를 MINIO_ACCESS_KEY 환경 변수로 오버라이드할 수 있습니다.

credential.secretKey

credential.secretKey

string

string

Secret key of minimum 8 characters in length. You may override this field with MINIO_SECRET_KEY environment variable.

최소 8 자 길이의 비밀 키. MINIO_SECRET_KEY 환경 변수로 이 필드를 오버라이드할 수 있습니다.

NOTE: In distributed setup it is mandatory to use environment variables MINIO_ACCESS_KEY and MINIO_SECRET_KEY for credentials.

참고: 분산 설정에서는 자격 증명에 환경 변수 MINIO_ACCESS_KEY 및 MINIO_SECRET_KEY를 사용해야 합니다.

Example:

예:

export MINIO_ACCESS_KEY=admin export MINIO_SECRET_KEY=password minio server /data

Region

영역

Field

필드

Type

유형

Description

설명

region

region

string

string

region describes the physical location of the server. By default it is blank. You may override this field with MINIO_REGION environment variable. If you are unsure leave it unset.

region은 서버의 실제 위치를 설명합니다. 기본적으로 비어 있습니다. 이 필드를 MINIO_REGION 환경 변수로 오버라이드할 수 있습니다. 확실하지 않으면 설정을 해제하십시오.

Example:

예:

export MINIO_REGION="my_region" minio server /data Worm (Write-Once-Read-Many)

Field

필드

Type

유형

Description

설명

worm

worm

string

string

Enable this to turn on Write-Once-Read-Many. By default it is set to off. You may override this field with MINIO_WORM environment variable.

Write-Once-Read-Many를 켜려면 이 기능을 활성화하십시오. 기본적으로 꺼져 있습니다. 이 필드를 MINIO_WORM 환경 변수로 오버라이드할 수 있습니다.

Example:

예:

export MINIO_WORM=on minio server /data

Storage Class

스토리지 클래스

Field

필드

Type

유형

Description

설명

storageclass

storageclass

Set storage class for configurable data and parity, as per object basis.

객체 기반 별로 구성 가능한 데이터 및 패리티에 대한 스토리지 클래스를 설정하십시오.

storageclass.standard

storageclass.standard

string

string

Value for standard storage class. It should be in the format EC:Parity, for example to set 4 disk parity for standard storage class objects, set this field to EC:4.

표준 스토리지 클래스의 값입니다. 예를 들어 표준 스토리지 클래스 객체에 4 개의 디스크 패리티를 설정하려면 EC: Parity 형식이어야 합니다. 이 필드를 EC:4로 설정하십시오.

storageclass.rrs

storageclass.rrs

string

string

Value for reduced redundancy storage class. It should be in the format EC:Parity, for example to set 3 disk parity for reduced redundancy storage class objects, set this field to EC:3.

중복 스토리지 클래스 감소를 위한 값. 예를 들어 중복 스토리지 클래스 객체 감소를 위한 3 개의 디스크 패리티를 설정하려면 EC: Parity 형식이어야 합니다. 이 필드를 EC:3으로 설정하십시오.

By default, parity for objects with standard storage class is set to N/2, and parity for objects with reduced redundancy storage class objects is set to 2. Read more about storage class support in MinIO server here.

기본적으로 표준 스토리지 클래스가 있는 객체에 대한 패리티는 N/2로 설정되고, 중복성이 감소된 스토리지 클래스 객체에 대한 패리티는 2로 설정됩니다. 여기에서 MinIO 서버의 스토리지 클래스 지원에 대해 자세히 알아보세요.

Cache

캐시

Field

필드

Type

유형

Description

설명

drives

drives

[]string

[]string

List of mounted file system drives with atime support enabled

atime(시간) 지원이 가능한 탑재된 파일 시스템 드라이브 목록

exclude

exclude

[]string

[]string

List of wildcard patterns for prefixes to exclude from cache

캐시에서 제외할 접두사에 대한 와일드카드 패턴 목록

expiry

expiry

int

int

Days to cache expiry

캐시 만료일

maxuse

maxuse

int

int

Percentage of disk available to cache

캐시할 수 있는 디스크의 백분율

Notify

알림

Field

필드

Type

유형

Description

설명

notify

notify

Notify enables bucket notification events for lambda computing via the following targets.

Notify는 다음 대상을 통해 람다 컴퓨팅에 대한 버킷 알림 이벤트를 활성화합니다.

notify.amqp

notify.amqp

Configure to publish MinIO events via AMQP target.

AMQP 대상을 통해 MinIO 이벤트를 게시하도록 구성하십시오.

notify.nats

notify.nats

Configure to publish MinIO events via NATS target.

NATS 대상을 통해 MinIO 이벤트를 게시하도록 구성하십시오.

notify.elasticsearch

notify.elasticsearch

Configure to publish MinIO events via Elasticsearch target.

Elasticsearch 대상을 통해 MinIO 이벤트를 게시하도록 구성하십시오.

notify.redis

notify.redis

Configure to publish MinIO events via Redis target.

Redis 대상을 통해 MinIO 이벤트를 게시하도록 구성하십시오.

notify.postgresql

notify.postgresql

Configure to publish MinIO events via PostgreSQL target.

PostgreSQL 대상을 통해 MinIO 이벤트를 게시하도록 구성하십시오.

notify.kafka

notify.kafka

Configure to publish MinIO events via Kafka target.

Kafka 대상을 통해 MinIO 이벤트를 게시하도록 구성하십시오.

Configure to publish MinIO events via Apache Kafka target.

Apache Kafka 대상을 통해 MinIO 이벤트를 게시하도록 구성하십시오.

notify.webhook

notify.webhook

Configure to publish MinIO events via Webhooks target.

Webhook 대상을 통해 MinIO 이벤트를 게시하도록 구성하십시오.

notify.mysql

notify.mysql

Configure to publish MinIO events via MySql target.

MySql 대상을 통해 MinIO 이벤트를 게시하도록 구성하십시오.

notify.mqtt

notify.mqtt

Configure to publish MinIO events via MQTT target.

MQTT 대상을 통해 MinIO 이벤트를 게시하도록 구성하십시오.

notify.mqtt

notify.mqtt

Configure to publish MinIO events via MQTT target.

MQTT 대상을 통해 MinIO 이벤트를 게시하도록 구성하십시오.

Environment only settings

환경 전용 설정

Browser

브라우저

Enable or disable access to web UI. By default it is set to on. You may override this field with MINIO_BROWSER environment variable.

웹 UI에 대한 액세스를 활성화 또는 비활성화합니다. 기본적으로는 켜짐으로 설정되어 있습니다. MINIO_BROWSER 환경 변수로 이 필드를 재정의할 수 있습니다.

Example:

예:

export MINIO_BROWSER=off minio server /data

Domain

도메인

By default, MinIO supports path-style requests that are of the format http://mydomain.com/bucket/object. MINIO_DOMAIN environment variable is used to enable virtual-host-style requests.

기본적으로 MinIO는 http://mydomain.com/bucket/object 형식의 경로 스타일 요청을 지원합니다. MINIO_DOMAIN 환경 변수는 가상 호스트 스타일 요청을 활성화하는 데 사용됩니다.

If the request Host header matches with (.+).mydomain.com then the matched pattern $1 is used as bucket and the path is used as object. More information on path-style and virtual-host-style here.

요청 호스트 헤더가 (.+). mydomain.com과 일치하면 일치하는 패턴 $1이 버킷으로 사용되고 경로가 객체로 사용됩니다. 경로 스타일 및 가상 호스트 스타일에 대한 자세한 내용은 여기를 참조하세요.

Example:

예:

export MINIO_DOMAIN=mydomain.com minio server /data

For advanced use cases MINIO_DOMAIN environment variable supports multiple-domains with comma separated values.

고급 사용 사례의 경우 MINIO_DOMAIN 환경 변수는 쉼표로 구분된 값을 사용하는 다중 도메인을 지원합니다.

export MINIO_DOMAIN=sub1.mydomain.com,sub2.mydomain.com minio server /data

HTTP Trace

HTTP 추적

HTTP tracing can be enabled by using mc admin trace command.

mc admin 추적 명령을 사용하여 HTTP 추적을 사용할 수 있습니다.

Example:

예:

minio server /data

Default trace is succinct only to indicate the API operations being called and the HTTP response status.

기본 추적은 호출되는 API 작업과 HTTP 응답 상태를 나타내는 데에만 간결합니다.

mc admin trace myminio 17:21:45.729309964 objectAPIHandlers.GetBucketLocation localhost:9000/vk-photos/?location= 200 OK 17:21:45.738167329 objectAPIHandlers.HeadBucket localhost:9000/vk-photos/ 200 OK 17:21:45.747676811 objectAPIHandlers.ListObjectsV1 localhost:9000/vk-photos/?delimiter=%2F&max-keys=1000&prefix= 200 OK

To trace entire HTTP request

전체 HTTP 요청을 추적하려면

mc admin trace --verbose myminio 127.0.0.1 [REQUEST objectAPIHandlers.GetBucketLocation] [17:23:21.404025835] 127.0.0.1 GET /yyy/?location= 127.0.0.1 Host: localhost:9000 127.0.0.1 Content-Length: 0 127.0.0.1 User-Agent: MinIO (linux; amd64) minio-go/v6.0.29 mc/2019-06-15T10:29:41Z 127.0.0.1 X-Amz-Content-Sha256: UNSIGNED-PAYLOAD 127.0.0.1 X-Amz-Date: 20190619T172321Z 127.0.0.1 Authorization: AWS4-HMAC-SHA256 Credential=Q3AM3UQ867SPQQA43P2F/20190619/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=8e53d8574db3424aa00dd73637575512b250c923edcad3cbf58a727305205709 127.0.0.1 127.0.0.1 [RESPONSE] [17:23:21.404780651] 127.0.0.1 200 OK 127.0.0.1 X-Amz-Request-Id: 15A9A965FF7A7546 127.0.0.1 X-Minio-Deployment-Id: 41e39f4a-3b66-415b-9ddf-025d76a58668 127.0.0.1 X-Xss-Protection: 1; mode=block 127.0.0.1 Accept-Ranges: bytes 127.0.0.1 Server: MinIO/DEVELOPMENT.2019-06-18T17-17-02Z 127.0.0.1 Content-Type: application/xml 127.0.0.1 Vary: Origin 127.0.0.1 X-Amz-Bucket-Region: us-east-1 127.0.0.1 Content-Length: 137 127.0.0.1 Content-Security-Policy: block-all-mixed-content 127.0.0.1 us-east-1127.0.0.1 127.0.0.1 [REQUEST objectAPIHandlers.HeadBucket] [17:23:21.412985428] 127.0.0.1 HEAD /yyy/ 127.0.0.1 Host: localhost:9000 127.0.0.1 User-Agent: MinIO (linux; amd64) minio-go/v6.0.29 mc/2019-06-15T10:29:41Z 127.0.0.1 X-Amz-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 127.0.0.1 X-Amz-Date: 20190619T172321Z 127.0.0.1 Authorization: AWS4-HMAC-SHA256 Credential=Q3AM3UQ867SPQQA43P2F/20190619/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=e0a02a62d39994d0206586f01dd2ab3a4aea74e60da9ff4d427629f705c62c02 127.0.0.1 Content-Length: 0 127.0.0.1 127.0.0.1 [RESPONSE] [17:23:21.413457159] 127.0.0.1 200 OK 127.0.0.1 Vary: Origin 127.0.0.1 Accept-Ranges: bytes 127.0.0.1 Content-Length: 0 127.0.0.1 X-Amz-Bucket-Region: us-east-1 127.0.0.1 X-Amz-Request-Id: 15A9A9660005982D 127.0.0.1 X-Minio-Deployment-Id: 41e39f4a-3b66-415b-9ddf-025d76a58668 127.0.0.1 X-Xss-Protection: 1; mode=block 127.0.0.1 Content-Security-Policy: block-all-mixed-content 127.0.0.1 Server: MinIO/DEVELOPMENT.2019-06-18T17-17-02Z 127.0.0.1 127.0.0.1 [REQUEST objectAPIHandlers.ListObjectsV1] [17:23:21.423153668] 127.0.0.1 GET /yyy/?delimiter=%2F&max-keys=1000&prefix= 127.0.0.1 Host: localhost:9000 127.0.0.1 Content-Length: 0 127.0.0.1 User-Agent: MinIO (linux; amd64) minio-go/v6.0.29 mc/2019-06-15T10:29:41Z 127.0.0.1 X-Amz-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 127.0.0.1 X-Amz-Date: 20190619T172321Z 127.0.0.1 Authorization: AWS4-HMAC-SHA256 Credential=Q3AM3UQ867SPQQA43P2F/20190619/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=46ee3d2fc5085432b94bc3205076abd8166ffa3e35c639f84e9684c7c6a181c9 127.0.0.1 127.0.0.1 [RESPONSE] [17:23:21.424260967] 127.0.0.1 200 OK 127.0.0.1 Content-Security-Policy: block-all-mixed-content 127.0.0.1 Content-Type: application/xml 127.0.0.1 Server: MinIO/DEVELOPMENT.2019-06-18T17-17-02Z 127.0.0.1 X-Amz-Bucket-Region: us-east-1 127.0.0.1 X-Minio-Deployment-Id: 41e39f4a-3b66-415b-9ddf-025d76a58668 127.0.0.1 Accept-Ranges: bytes 127.0.0.1 Content-Length: 253 127.0.0.1 Vary: Origin 127.0.0.1 X-Amz-Request-Id: 15A9A966009F94A6 127.0.0.1 X-Xss-Protection: 1; mode=block 127.0.0.1 yyy1000/false

Explore Further

더 자세히 살펴보세요

MinIO Quickstart Guide

MinIO 빠른 시작 가이드

Configure MinIO Server with TLS

TLS를 사용하여 MinIO 서버 구성