diff --git a/docs/distributed/README.md b/docs/distributed/README.md index 9a25d510c..0f66264ed 100644 --- a/docs/distributed/README.md +++ b/docs/distributed/README.md @@ -48,8 +48,8 @@ To start a distributed Minio instance, you just need to pass drive locations as - Servers running distributed Minio instances should be less than 3 seconds apart. You can use [NTP](http://www.ntp.org/) as a best practice to ensure consistent times across servers. - Running Distributed Minio on Windows is experimental as of now. Please proceed with caution. -Example 1: Start distributed Minio instance with 1 drive each on 8 nodes, by running this command on all the 8 nodes. - +Example 1: Start distributed Minio instance on 8 nodes with 1 drive each (pictured below), by running this command on all the 8 nodes: +![Distributed Minio, 8 nodes with 1 disk each](https://github.com/minio/minio/blob/master/docs/screenshots/Architecture-diagram_distributed_8.jpg?raw=true) #### GNU/Linux and macOS ```shell @@ -60,6 +60,7 @@ minio server http://192.168.1.11/export1 http://192.168.1.12/export2 \ http://192.168.1.15/export5 http://192.168.1.16/export6 \ http://192.168.1.17/export7 http://192.168.1.18/export8 ``` + #### Windows ```cmd @@ -71,23 +72,30 @@ minio.exe server http://192.168.1.11/C:/data http://192.168.1.12/C:/data ^ http://192.168.1.17/C:/data http://192.168.1.18/C:/data ``` -![Distributed Minio, 8 nodes with 1 disk each](https://github.com/minio/minio/blob/master/docs/screenshots/Architecture-diagram_distributed_8.jpg?raw=true) -Example 2: Start distributed Minio instance with 4 drives each on 4 nodes, by running this command on all the 4 nodes. +Example 2: Start distributed Minio instance on 4 nodes with 4 drives (pictured below), by running this command on all the 4 nodes: +![Distributed Minio, 4 nodes with 4 disks each](https://github.com/minio/minio/blob/master/docs/screenshots/Architecture-diagram_distributed_16.jpg?raw=true) #### GNU/Linux and macOS ```shell export MINIO_ACCESS_KEY= export MINIO_SECRET_KEY= -minio server http://192.168.1.11/export1 http://192.168.1.11/export2 \ - http://192.168.1.11/export3 http://192.168.1.11/export4 \ - http://192.168.1.12/export1 http://192.168.1.12/export2 \ - http://192.168.1.12/export3 http://192.168.1.12/export4 \ - http://192.168.1.13/export1 http://192.168.1.13/export2 \ - http://192.168.1.13/export3 http://192.168.1.13/export4 \ - http://192.168.1.14/export1 http://192.168.1.14/export2 \ - http://192.168.1.14/export3 http://192.168.1.14/export4 +minio server http://192.168.1.11/export1 http://192.168.1.12/export1 \ + http://192.168.1.13/export1 http://192.168.1.14/export1 \ + http://192.168.1.11/export2 http://192.168.1.12/export2 \ + http://192.168.1.13/export2 http://192.168.1.14/export2 \ + http://192.168.1.11/export3 http://192.168.1.12/export3 \ + http://192.168.1.13/export3 http://192.168.1.14/export3 \ + http://192.168.1.11/export4 http://192.168.1.12/export4 \ + http://192.168.1.13/export4 http://192.168.1.14/export4 +``` + +##### Short version of the same command: +```shell +export MINIO_ACCESS_KEY= +export MINIO_SECRET_KEY= +minio server http://192.168.1.{11...14}/export{1...4} ``` #### Windows @@ -95,17 +103,24 @@ minio server http://192.168.1.11/export1 http://192.168.1.11/export2 \ ```cmd set MINIO_ACCESS_KEY= set MINIO_SECRET_KEY= -minio.exe server http://192.168.1.11/C:/data1 http://192.168.1.11/C:/data2 ^ - http://192.168.1.11/C:/data3 http://192.168.1.11/C:/data4 ^ - http://192.168.1.12/C:/data1 http://192.168.1.12/C:/data2 ^ - http://192.168.1.12/C:/data3 http://192.168.1.12/C:/data4 ^ - http://192.168.1.13/C:/data1 http://192.168.1.13/C:/data2 ^ - http://192.168.1.13/C:/data3 http://192.168.1.13/C:/data4 ^ - http://192.168.1.14/C:/data1 http://192.168.1.14/C:/data2 ^ - http://192.168.1.14/C:/data3 http://192.168.1.14/C:/data4 +minio.exe server http://192.168.1.11/C:/data1 http://192.168.1.12/C:/data1 ^ + http://192.168.1.13/C:/data1 http://192.168.1.14/C:/data1 ^ + http://192.168.1.11/C:/data2 http://192.168.1.12/C:/data2 ^ + http://192.168.1.13/C:/data2 http://192.168.1.14/C:/data2 ^ + http://192.168.1.11/C:/data3 http://192.168.1.12/C:/data3 ^ + http://192.168.1.13/C:/data3 http://192.168.1.14/C:/data3 ^ + http://192.168.1.11/C:/data4 http://192.168.1.12/C:/data4 ^ + http://192.168.1.13/C:/data4 http://192.168.1.14/C:/data4 ``` -![Distributed Minio, 4 nodes with 4 disks each](https://github.com/minio/minio/blob/master/docs/screenshots/Architecture-diagram_distributed_16.jpg?raw=true) +##### Short version of the same command: +```cmd +set MINIO_ACCESS_KEY= +set MINIO_SECRET_KEY= +minio.exe server http://192.168.1.{1...14}/C:/data{1...4} +``` +__NOTE:__ `{1...n}` shown in shortened examples above have 3 dots! Using only 2 dots `{1..4}` will be interpreted by your shell and won't be passed to minio server, affecting the erasure coding order, which may impact performance and high availability. __Always use `{1...n}` (3 dots!) to allow minio server to optimally stripe erasure-coded data__ + ## 3. Test your setup