-
Notifications
You must be signed in to change notification settings - Fork 3
large bucket support
Krishna Srinivas edited this page Dec 15, 2017
·
1 revision
NAME:
minio server - Start object storage server.
USAGE:
minio server [FLAGS] DIR1 [DIR2..]
minio server [FLAGS] DIR{1...64}
DIR:
DIR points to a directory on a filesystem. When you want to combine multiple drives
into a single large system, pass one directory per filesystem separated by space.
You may also use a `...` convention to abbreviate the directory arguments. Remote
directories in a distributed setup are encoded as HTTP(s) URIs.
FLAGS:
--address value Bind to a specific ADDRESS:PORT, ADDRESS can be an IP or hostname. (default: ":9000")
--config-dir value, -C value Path to configuration directory. (default: "/home/harsha/.minio")
--quiet Disable startup information.
--help, -h Show help.
minio server dir1 - good
minio server dir1 dir2 dir3 dir4 - good
minio server dir{1...64} - good
minio server http://host{1...64}/export{1...64} - good
minio server http://host{1...4}/export{1...8} - good
export MINIO_ERASURE=8x4
minio server dir{1...64} - good (Means 8 data, 4 parity split)
minio server http://host{1...64}/export{1...64} - good (same as {1...32} {33...64})
minio server http://host{1...32}/export{1...32} http://host{33...64}/export{33...64} - good (same as {1...64})
minio server dir{1...64} dir{65...128} - good (same as {1...128})
minio server dir{1...128} - good (same as {1...64} {65...128})
minio server dir{1...64} dir{1...64} - fail duplicates
minio server http://192.168.{1...4}.{1...4}/export{1...4} - fail parse error
New format.json
{
"version": "1",
"format": "xl",
"xl": {
"version": "2",
"this": "4ec63786-3dbd-4a9e-96f5-535f6e850fb1",
"sets": [][
"4ec63786-3dbd-4a9e-96f5-535f6e850fb1",
"1f3cf889-bc90-44ca-be2a-732b53be6c9d",
"4b23eede-1846-482c-b96f-bfb647f058d3",
"e1f17302-a850-419d-8cdb-a9f884a63c92"
], [
"2ca4c5c1-dccb-4198-a840-309fea3b5449",
"6d1e666e-a22c-4db4-a038-2545c2ccb6d5",
"d4fa35ab-710f-4423-a7c2-e1ca33124df0",
"88c65e8b-00cb-4037-a801-2549119c9a33"
]
}
}
New format-config-v1.go
behavior
Format structure is used as a opaque type, .Format field signifies the bootstrap format of the backend. Once the format has been identified it is now the job of the identified backend to further interpret the next structures.
type formatType string
const (
formatFS formatType = "fs"
formatXL = "xl"
)
type format struct {
Version string
Format BackendFormat
}
func newFormat(fmt string) (format)
func parseFormat(buf []byte) (format, error) {
var f format
json.Unmarshal(buf, &f)
return f, nil
}
Current XL format.
type formatXLV1 struct{
format
XL struct{
Version string
Disk string
JBOD []string
}
}
New `formatXLV2` will be following
type formatXLV2 struct{
format
XL struct{
Version string `json:"version"`
This string `json:"this"`
Sets [][]string `json:"sets"`
}
}
Current FS format.
type formatFSV1 struct{
format
FS struct{
Version string
}
}