Reduce number of envs and options from command line. (#3230)

Ref #3229

After review with @abperiasamy we decided to remove all the unnecessary options

- MINIO_BROWSER (Implemented as a security feature but now deemed obsolete
  since even if blocking access to MINIO_BROWSER, s3 API port is open)
- MINIO_CACHE_EXPIRY (Defaults to 72h)
- MINIO_MAXCONN (No one used this option and we don't test this)
- MINIO_ENABLE_FSMETA (Enable FSMETA all the time)

Remove --ignore-disks option - this option was implemented when XL layer
 would initialize the backend disks and heal them automatically to disallow
 XL accidentally using the root partition itself this option was introduced.

This behavior has been changed XL no longer automatically initializes
`format.json`  a HEAL is controlled activity, so ignore-disks is not
useful anymore. This change also addresses the problems of our documentation
going forward and keeps things simple. This patch brings in reduction of
options and defaulting them to a valid known inputs.  This patch also
serves as a guideline of limiting many ways to do the same thing.
This commit is contained in:
Harshavardhana
2016-11-11 16:36:07 -08:00
parent 98e79b4b50
commit 716316f711
42 changed files with 165 additions and 1536 deletions

View File

@@ -2,36 +2,30 @@
Object caching by turned on by default with following settings
- Default cache size 8GB, can be changed from environment variable
``MINIO_CACHE_SIZE`` supports both SI and ISO IEC standard forms
for input size parameters.
- Default cache size 8GB. Cache size also automatically picks
a lower value if your local memory size is lower than 8GB.
- Default expiration of entries is 72 hours, can be changed from
environment variable ``MINIO_CACHE_EXPIRY`` supportings Go
``time.Duration`` with valid units "ns", "us" (or "µs"),
"ms", "s", "m", "h".
- Default expiration of entries happensat 72 hours,
this option cannot be changed.
- Default expiry interval is 1/4th of the expiration hours, so
expiration sweep happens across the cache every 1/4th the time
duration of the set entry expiration duration.
### Tricks
Setting MINIO_CACHE_SIZE=0 will turn off caching entirely.
Setting MINIO_CACHE_EXPIRY=0s will turn off cache garbage collections,
all cached objects will never expire.
- Default expiry interval is 1/4th of the expiration hours, so
expiration sweep happens across the cache every 1/4th the time
duration of the set entry expiration duration.
### Behavior
Caching happens for both GET and PUT.
Caching happens on both GET and PUT operations.
- GET caches new objects for entries not found in cache,
otherwise serves from the cache.
- GET caches new objects for entries not found in cache.
- PUT/POST caches all successfully uploaded objects.
NOTE: Cache is not populated if there are any errors
while reading from the disk.
In all other cases if objects are served from cache.
NOTE:
Cache is always populated upon object is successfully
read from the disk.
Expiration happens automatically based on the configured
interval as explained above, frequently accessed objects

View File

@@ -1,47 +0,0 @@
# Minio Environmental variables
#### MINIO_ENABLE_FSMETA
When enabled, minio-FS saves the HTTP headers that start with `X-Amz-Meta-` and `X-Minio-Meta`. These header meta data can be retrieved on HEAD and GET requests on the object.
#### MINIO_PROFILER
Used for Go profiling. Supported values are:
`cpu` - for CPU profiling
`mem` - for memory profiling
`block` - for block profiling
#### MINIO_PROFILE_DIR
Path where cpu/mem/block profiling files are dumped
#### MINIO_BROWSER
setting this to `off` disables the minio browser.
#### MINIO_ACCESS_KEY
Minio access key.
#### MINIO_SECRET_KEY
Minio secret key.
#### MINIO_CACHE_SIZE
Set total cache size in NN[GB|MB|KB]. Defaults to 8GB
Ex: MINIO_CACHE_SIZE=2GB
#### MINIO_CACHE_EXPIRY
Set the object cache expiration duration in NN[h|m|s]. Defaults to 72 hours.
Ex. MINIO_CACHE_EXPIRY=24h
#### MINIO_MAXCONN
Limit of the number of concurrent http requests.
Ex. MINIO_MAXCONN=500