valepakh commented on code in PR #3199: URL: https://github.com/apache/ignite-3/pull/3199#discussion_r1484572254
########## DEVNOTES.md: ########## @@ -274,6 +274,129 @@ docker run -it --rm --net ignite3_default apacheignite/ignite3 cli > cluster init --cluster-name cluster --meta-storage-node node1 > --meta-storage-node node2 --meta-storage-node node3 ``` +### How to launch multiple nodes in same machine + +The easiest way to start as many nodes as you want is to use the docker-compose file located in the `packaging/docker` directory. +If you want to start nodes manually, you can use the following commands: Review Comment: ```suggestion If instead you want to start nodes manually, you can use the following commands: ``` ########## README.md: ########## @@ -32,23 +32,42 @@ Latest release artifacts (source release and binary packages) are [available](ht ### Run Ignite from released artifact -To start Ignite you need to download latest zip archive from the [Ignite web page](https://ignite.apache.org/download.cgi). -After unpacking it, go to the ignite3-db-3.0.0-beta1 folder and run the following command: +To start Ignite you need to download latest zip archive from the [Ignite web page](https://ignite.apache.org/download.cgi). +Scroll down to the "Binary releases" section and download the version you are interested in. +Here is the command you can run to download current latest release: + +```shell +https://dlcdn.apache.org/ignite/3.0.0-beta1/ignite3-3.0.0-beta1.zip Review Comment: There's a mix of `beta1` and `<version>` below, let's stick to the same naming, maybe preface this with a notion of what the `<version>` means. ########## DEVNOTES.md: ########## @@ -274,6 +274,129 @@ docker run -it --rm --net ignite3_default apacheignite/ignite3 cli > cluster init --cluster-name cluster --meta-storage-node node1 > --meta-storage-node node2 --meta-storage-node node3 ``` +### How to launch multiple nodes in same machine + +The easiest way to start as many nodes as you want is to use the docker-compose file located in the `packaging/docker` directory. +If you want to start nodes manually, you can use the following commands: + +```shell +./gradlew clean allDistZip +mkdir ignite-3-cluster +cd ignite-3-cluster +unzip ../packaging/build/distributions/ignite3-<version>.zip +``` +This is what you've already done when you've launched single-node Ignite cluster. Now you need to copy node directory as many times as you +want to start nodes. Then you need to change the name of the node in the `etc/ignite-config.conf` file in each node directory. + +Let's first rename current node directory to `node1` and copy it to `node2` and `node3`: +```shell +mv ignite3-db-<version> node1 +cp -r node1 node2 +cp -r node1 node3 +``` + +After that you have to change the name of the node in `etc/vars.env` file in each node directory: + +Linux: +```shell +sed -i 's/NODE_NAME=defaultNode/NODE_NAME=node1/' node1/etc/vars.env +sed -i 's/NODE_NAME=defaultNode/NODE_NAME=node2/' node2/etc/vars.env +sed -i 's/NODE_NAME=defaultNode/NODE_NAME=node3/' node3/etc/vars.env +``` + +MacOS: +```shell +sed -i '' 's/NODE_NAME=defaultNode/NODE_NAME=node1/' node1/etc/vars.env +sed -i '' 's/NODE_NAME=defaultNode/NODE_NAME=node2/' node2/etc/vars.env +sed -i '' 's/NODE_NAME=defaultNode/NODE_NAME=node3/' node3/etc/vars.env +``` + +Each node bind to its set of ports: HTTP, HTTPS(if configured), internal TCP for communication between nodes, and client TCP. +By default the following configurations are used: Review Comment: ```suggestion By default the following configuration is used: ``` ########## DEVNOTES.md: ########## @@ -274,6 +274,129 @@ docker run -it --rm --net ignite3_default apacheignite/ignite3 cli > cluster init --cluster-name cluster --meta-storage-node node1 > --meta-storage-node node2 --meta-storage-node node3 ``` +### How to launch multiple nodes in same machine + +The easiest way to start as many nodes as you want is to use the docker-compose file located in the `packaging/docker` directory. +If you want to start nodes manually, you can use the following commands: + +```shell +./gradlew clean allDistZip +mkdir ignite-3-cluster +cd ignite-3-cluster +unzip ../packaging/build/distributions/ignite3-<version>.zip +``` +This is what you've already done when you've launched single-node Ignite cluster. Now you need to copy node directory as many times as you +want to start nodes. Then you need to change the name of the node in the `etc/ignite-config.conf` file in each node directory. + +Let's first rename current node directory to `node1` and copy it to `node2` and `node3`: +```shell +mv ignite3-db-<version> node1 +cp -r node1 node2 +cp -r node1 node3 +``` + +After that you have to change the name of the node in `etc/vars.env` file in each node directory: + +Linux: +```shell +sed -i 's/NODE_NAME=defaultNode/NODE_NAME=node1/' node1/etc/vars.env +sed -i 's/NODE_NAME=defaultNode/NODE_NAME=node2/' node2/etc/vars.env +sed -i 's/NODE_NAME=defaultNode/NODE_NAME=node3/' node3/etc/vars.env +``` + +MacOS: +```shell +sed -i '' 's/NODE_NAME=defaultNode/NODE_NAME=node1/' node1/etc/vars.env +sed -i '' 's/NODE_NAME=defaultNode/NODE_NAME=node2/' node2/etc/vars.env +sed -i '' 's/NODE_NAME=defaultNode/NODE_NAME=node3/' node3/etc/vars.env +``` + +Each node bind to its set of ports: HTTP, HTTPS(if configured), internal TCP for communication between nodes, and client TCP. Review Comment: ```suggestion Each node binds to its set of ports: HTTP, HTTPS(if configured), internal TCP for communication between nodes, and client TCP. ``` ########## DEVNOTES.md: ########## @@ -274,6 +274,129 @@ docker run -it --rm --net ignite3_default apacheignite/ignite3 cli > cluster init --cluster-name cluster --meta-storage-node node1 > --meta-storage-node node2 --meta-storage-node node3 ``` +### How to launch multiple nodes in same machine Review Comment: ```suggestion ### How to launch multiple nodes on the same machine ``` ########## DEVNOTES.md: ########## @@ -274,6 +274,129 @@ docker run -it --rm --net ignite3_default apacheignite/ignite3 cli > cluster init --cluster-name cluster --meta-storage-node node1 > --meta-storage-node node2 --meta-storage-node node3 ``` +### How to launch multiple nodes in same machine + +The easiest way to start as many nodes as you want is to use the docker-compose file located in the `packaging/docker` directory. +If you want to start nodes manually, you can use the following commands: + +```shell +./gradlew clean allDistZip +mkdir ignite-3-cluster +cd ignite-3-cluster +unzip ../packaging/build/distributions/ignite3-<version>.zip +``` +This is what you've already done when you've launched single-node Ignite cluster. Now you need to copy node directory as many times as you +want to start nodes. Then you need to change the name of the node in the `etc/ignite-config.conf` file in each node directory. + +Let's first rename current node directory to `node1` and copy it to `node2` and `node3`: +```shell +mv ignite3-db-<version> node1 +cp -r node1 node2 +cp -r node1 node3 +``` + +After that you have to change the name of the node in `etc/vars.env` file in each node directory: + +Linux: +```shell +sed -i 's/NODE_NAME=defaultNode/NODE_NAME=node1/' node1/etc/vars.env +sed -i 's/NODE_NAME=defaultNode/NODE_NAME=node2/' node2/etc/vars.env +sed -i 's/NODE_NAME=defaultNode/NODE_NAME=node3/' node3/etc/vars.env +``` + +MacOS: +```shell +sed -i '' 's/NODE_NAME=defaultNode/NODE_NAME=node1/' node1/etc/vars.env +sed -i '' 's/NODE_NAME=defaultNode/NODE_NAME=node2/' node2/etc/vars.env +sed -i '' 's/NODE_NAME=defaultNode/NODE_NAME=node3/' node3/etc/vars.env +``` + +Each node bind to its set of ports: HTTP, HTTPS(if configured), internal TCP for communication between nodes, and client TCP. +By default the following configurations are used: +``` +clientConnector.port=10800, +network.port=3344, +rest : { port=10300, ssl.port=10400 } Review Comment: ```suggestion clientConnector.port = 10800, network.port = 3344, rest: { port = 10300, ssl.port = 10400 } ``` ########## DEVNOTES.md: ########## @@ -274,6 +274,129 @@ docker run -it --rm --net ignite3_default apacheignite/ignite3 cli > cluster init --cluster-name cluster --meta-storage-node node1 > --meta-storage-node node2 --meta-storage-node node3 ``` +### How to launch multiple nodes in same machine + +The easiest way to start as many nodes as you want is to use the docker-compose file located in the `packaging/docker` directory. +If you want to start nodes manually, you can use the following commands: + +```shell +./gradlew clean allDistZip +mkdir ignite-3-cluster +cd ignite-3-cluster +unzip ../packaging/build/distributions/ignite3-<version>.zip +``` +This is what you've already done when you've launched single-node Ignite cluster. Now you need to copy node directory as many times as you +want to start nodes. Then you need to change the name of the node in the `etc/ignite-config.conf` file in each node directory. + +Let's first rename current node directory to `node1` and copy it to `node2` and `node3`: +```shell +mv ignite3-db-<version> node1 +cp -r node1 node2 +cp -r node1 node3 +``` + +After that you have to change the name of the node in `etc/vars.env` file in each node directory: + +Linux: +```shell +sed -i 's/NODE_NAME=defaultNode/NODE_NAME=node1/' node1/etc/vars.env +sed -i 's/NODE_NAME=defaultNode/NODE_NAME=node2/' node2/etc/vars.env +sed -i 's/NODE_NAME=defaultNode/NODE_NAME=node3/' node3/etc/vars.env +``` + +MacOS: +```shell +sed -i '' 's/NODE_NAME=defaultNode/NODE_NAME=node1/' node1/etc/vars.env +sed -i '' 's/NODE_NAME=defaultNode/NODE_NAME=node2/' node2/etc/vars.env +sed -i '' 's/NODE_NAME=defaultNode/NODE_NAME=node3/' node3/etc/vars.env +``` + +Each node bind to its set of ports: HTTP, HTTPS(if configured), internal TCP for communication between nodes, and client TCP. +By default the following configurations are used: +``` +clientConnector.port=10800, +network.port=3344, +rest : { port=10300, ssl.port=10400 } +``` +If you want to start nodes on the same machine, you have to change the ports in the `etc/ignite-config.conf` file in each node directory. + +You can do it manually or use the following commands: + +Linux: +```shell +sed -i 's/port=10300/port=10301/' node1/etc/ignite-config.conf +sed -i 's/port=10300/port=10302/' node2/etc/ignite-config.conf +sed -i 's/port=10300/port=10303/' node3/etc/ignite-config.conf + +sed -i 's/port=3344/port=3301/' node1/etc/ignite-config.conf +sed -i 's/port=3344/port=3302/' node2/etc/ignite-config.conf +sed -i 's/port=3344/port=3303/' node3/etc/ignite-config.conf + +sed -i 's/port=10800/port=10801/' node1/etc/ignite-config.conf +sed -i 's/port=10800/port=10802/' node2/etc/ignite-config.conf +sed -i 's/port=10800/port=10803/' node3/etc/ignite-config.conf + +sed -i '/netClusterNodes=\[/,/\]/s/"localhost:3344"/"localhost:3301", "localhost:3302", "localhost:3303"/' node1/etc/ignite-config.conf +sed -i '/netClusterNodes=\[/,/\]/s/"localhost:3344"/"localhost:3301", "localhost:3302", "localhost:3303"/' node2/etc/ignite-config.conf +sed -i '/netClusterNodes=\[/,/\]/s/"localhost:3344"/"localhost:3301", "localhost:3302", "localhost:3303"/' node3/etc/ignite-config.conf +``` + +MacOS: +```shell +sed -i '' 's/port=10300/port=10301/' node1/etc/ignite-config.conf +sed -i '' 's/port=10300/port=10302/' node2/etc/ignite-config.conf +sed -i '' 's/port=10300/port=10303/' node3/etc/ignite-config.conf + +sed -i '' 's/port=3344/port=3301/' node1/etc/ignite-config.conf +sed -i '' 's/port=3344/port=3302/' node2/etc/ignite-config.conf +sed -i '' 's/port=3344/port=3303/' node3/etc/ignite-config.conf + +sed -i '' 's/port=10800/port=10801/' node1/etc/ignite-config.conf +sed -i '' 's/port=10800/port=10802/' node2/etc/ignite-config.conf +sed -i '' 's/port=10800/port=10803/' node3/etc/ignite-config.conf + +sed -i '' '/netClusterNodes=\[/,/\]/s/"localhost:3344"/"localhost:3301", "localhost:3302", "localhost:3303"/' node1/etc/ignite-config.conf +sed -i '' '/netClusterNodes=\[/,/\]/s/"localhost:3344"/"localhost:3301", "localhost:3302", "localhost:3303"/' node2/etc/ignite-config.conf +sed -i '' '/netClusterNodes=\[/,/\]/s/"localhost:3344"/"localhost:3301", "localhost:3302", "localhost:3303"/' node3/etc/ignite-config.conf +``` + +Now all nodes is set up and you can start them with the following commands: Review Comment: ```suggestion Now all the nodes are set up and you can start them with the following commands: ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
