BitShares Forum

Main => Technical Support => Topic started by: sahkan on March 26, 2017, 04:30:58 am

Title: Setting Up a New Witness Node
Post by: sahkan on March 26, 2017, 04:30:58 am
Quick Background: I have been on the crypto arena since 2013. A big fan of Peercoin and POS. I think we all have been waiting for a true decentralized exchange since creation of bitcoin technology. There is no doubt that PoW was a break through thinking in the early crypto stages I do not belive that is sustainable because of it's huge burden on the world's power grid (I believe currently equal to about 1/3 electricity consumption of Ireland).  Recently I have decided to shift my focus to bitshares and since I like to support the crypto economy I would like to get involved with making the current infrastructure more stable.

Hopefully this short guide will enable more people to support the witness nodes.

COST: You have to be a lifetime member to run a witness node current cost: 17,612 BTS for a lifetime membership. And a cost to create a witness: 7,338 BTS, since you had to upgrade your node to a lifetime membership 5,870 BTS will be returned to you after 90 days and your final cost will be 1,468 BTS. You can check current fees at: https://www.cryptofresh.com/fees (https://www.cryptofresh.com/fees)

HW Recommendation: There is no official recommendation. But what I found out is that ATM you should be OK with 8GB 16GB RAM and a reasonable CPU and with a current blockchain of about 7GB enough disk space to support it.

My Build: Ubuntu 16.04,  8 Cores at 3.6GHz, 16GB RAM and 1TB HDD

You will need a registered account in the network to get started.

Setup Steps:
-Some basic steps to get your server secured before you install the node can be found here:
https://bitsharestalk.org/index.php/topic,24005.0.html

Open terminal window and navigate to the directory where you want bitshares to download to as an example:
Code: [Select]
$ cd /home/sahkan
Download your sources with git:
$ git clone https://github.com/bitshares/bitshares-2

[10 APR 2017 Edit - On my production server I have changed this to reflect the latest bitshers github repo:]
Code: [Select]
$ git clone https://github.com/bitshares/bitshares-core
your sources are now downloaded to /bitshares-2 ; Since the repository makes use of so called submodules which are repositories on their own, you need to refresh those:
$ cd bitshares-2
$ git submodule update --init --recursive


[10 APR 2017 Edit:]
Code: [Select]
$ cd bitshares-core
$ git submodule update --init --recursive

Install dependencies for your development toolbox:
$ sudo apt-get install gcc-4.9 g++-4.9 cmake make \
                     libbz2-dev libdb++-dev libdb-dev \
                     libssl-dev openssl libreadline-dev \
                     autoconf libtool git


[10 APR 2017 Edit: I tested the install with the latest gcc (5.X) and it worked fine, so I adjusted the install of dependencies to reflect it:
Code: [Select]
$ sudo apt-get install gcc g++ cmake make \
                     libbz2-dev libdb++-dev libdb-dev \
                     libssl-dev openssl libreadline-dev \
                     autoconf libtool git

Now you can run cmake for configuration and compile with make: (Quick note here: I did not have to update boost, if you do, refer to bitshares docs)
Code: [Select]
$ cmake -DBOOST_ROOT="$BOOST_ROOT" -DCMAKE_BUILD_TYPE=Release
$ make

Now you can test your install, run a full node to update the blockchain: (took me about 1.5 hrs or so...)
$./programs/witness_node/witness_node --rpc-endpoint="0.0.0.0:8090"

Once your blockchain catches up CTRL-C to stop your node and you can move on to create a witness.

[10 APR 2017 Edit: On the production server I skipped this per [member=34707]rnglab[/member] 's below comments, the difference was the synch time to the blockchain - 12Hrs+]

Run your Full node without block production:
Code: [Select]
$ programs/witness_node/witness_node --rpc-endpoint 127.0.0.1:8090
Now open a second terminal/SSH and and navigate to your bitshares directory:
Code: [Select]
$ cd bitshares-core
Run CLI wallet:
Code: [Select]
$ programs/cli_wallet/cli_wallet -s ws://127.0.0.1:8090
Your prompt will change to ">>>" indicating you are in CLI
Create password for your new CLI wallet:
>>> set_password <password>
null
Example:
Code: [Select]
>>> set_password G5rrzhZ6FCLI Responds:
null

Now unlock the wallet:
Code: [Select]
>>> unlock G5rrzhZ6F
You can import the account name (owner and active keys) to be able to access your funds in BitShares 2.0:
>>> import_key <accountname> <owner wif key>

(You can find your public and private keys in your light wallet under SETTINGS, ACCOUNTS, Click on the LOCK)
Example:
Code: [Select]
>>> import_key sahkan GPH7vQ7GmRSJfDHxKdBmWMeDMFENpmHWKn99J457BNApiX1T5TNM8
Now check your balances in CLI:
>>> list_account_balances <accountname>

Eample:
Code: [Select]
>>> list_account_balances sahkan
If all done correctly It will list all your balances.
To become a witness and be able to produce blocks, you first need to create a witness object that can be voted in,
THE BELOW COMMAND WILL CHARGE YOUR ACCOUNT CURRENT WITNESS CREATION FEE:
>>> create_witness <accountname> "url-to-proposal" true

Example:
Code: [Select]
>>> create_witness sahkan "www. MyCoolBitshares .com" true
Now you need some votes for your new witness, so vote all your shares in:
>>> vote_for_witness <accountname> <accountname> true true

Example:
Code: [Select]
>>> vote_for_witness sahkan sahkan true true
You need to wait until the next maintenance interval until you can see your votes. Check the time left to the next maintenance  here: https://www.cryptofresh.com/ (https://www.cryptofresh.com/)

Once all the votes are tallied you can move on, check your witness id:
>>> get_witness <accountname>

Example:
Code: [Select]
>>> get_witness sahkan
CLI responds with:
{
  [...]
  "id": "1.6.10",
  "signing_key": "GPH7vQ7GmRSJfDHxKdBmWMeDMFENpmHWKn99J457BNApiX1T5TNM8",
  [...]
}

Warning: dump_private_keys will display your keys unencrypted on the terminal, don’t do this with someone looking over your shoulder.
The id and the signing_key are the two important parameters, above. Let’s get the private key for that signing key with:
Code: [Select]
>>> dump_private_keys
CLI responds with:
[[
  ...
  ],[
"GPH7vQ7GmRSJfDHxKdBmWMeDMFENpmHWKn99J457BNApiX1T5TNM8",
"5JGi7DM7J8fSTizZ4D9roNgd8dUc5pirUe9taxYCUUsnvQ4zCaQ"
  ]
]

Now we need to start the witness, so shut down the wallet (ctrl-d), and shut down the witness (ctrl-c). Re-launch the witness, now mentioning the new witness 1.6.10 and its keypair:
Code: [Select]
$ ./witness_node  \
       --rpc-endpoint=127.0.0.1:8090 \
       --witness-id '"1.6.10"' \
       --private-key '["GPH7vQ7GmRSJfDHxKdBmWMeDMFENpmHWKn99J457BNApiX1T5TNM8", "5JGi7DM7J8fSTizZ4D9roNgd8dUc5pirUe9taxYCUUsnvQ4zCaQ"]'

Note: Make sure to use YOUR public/private keys instead of the once given above!

If you monitor the output of the witness_node, and get voted in to become an active node, you should see it generate blocks signed by your witness:

Witness 1.6.10 production slot has arrived; generating a block now...
Generated block #1500367 with timestamp 2017-03-05T20:46:30 at time 2017-03-05T20:46:30


If you are not an active witness, you will simply see your node receiving transactions and blocks. And look for confirmation that you are running a witness node at start up:
1448052ms th_a       witness.cpp:122               plugin_startup       ] witness plugin:  plugin_startup() begin
1448055ms th_a       witness.cpp:127               plugin_startup       ] Launching block production for 1 witnesses.
1448055ms th_a       witness.cpp:138               plugin_startup       ] witness plugin:  plugin_startup() end



Here are some notes on installing and running my witness:  sahkan-bitshares

1. My 16GB RAM runs at 95% utilization, in comparison CPUs at 5% and Network around .5% [10 APR 2017, this now my seed node, witness runs on a 24 core 64GB dedicated server]
2. I am one of 56 witness nodes, only 19 are block producing (Active) I would say that it is extremely  centralized ATM.
3. To vote yourself in as an active node as of today you need over 403mln votes, around $23MLN?
4. 11 Committee members control most of the votes and settings on the network, including voting in witness nodes.

My witness runs in NY (Dedicated server), See/backup/test node in Hawaii[10 APR 2017 Update], if it ever goes active I will update this post with the MPA Price Feeds guide [10 APR 2017 Update - After working on this for few days and learning Bitshares I think I can write couple more guides without actually being an active witness, the setup should work it will just not publish any feeds until the witness becomes active]. Any feedback on fine tuning my witness will be appreciated and I will be grateful for any votes for  witness sahkan-bitshares!
Title: Re: Setting Up a New Witness Node
Post by: JonnyB on March 28, 2017, 10:20:02 pm
thanks for this guide, you have my proxy vote
Title: Re: Setting Up a New Witness Node
Post by: rnglab on March 28, 2017, 11:45:04 pm
Hi sahkan, just a heads up:

Quote
Now you can test your install, run a full node to update the blockchain: (took me about 1.5 hrs or so...)
$./programs/witness_node/witness_node --rpc-endpoint="0.0.0.0:8090"

there's no need to expose the witness_node websocket rpc  to sync the blockchain, and block producer witness shouldn't expose it for security reasons.

Quote
HW Recommendation: There is no official recommendation. But what I found out is that ATM you should be OK with 8G RAM and a reasonable CPU and with a current blockchain of about 7GB enough disk space to support it.

My block producer witness nodes are using more than 9G RAM on Arch and Jessie this days. Even if you can successfully run it with just 8G, take into consideration that in-memory blockchain state is always growing with new objects  being created every day.  The node will crash if it gets out of RAM so I'd suggest starting with 16G RAM.

Good luck and welcome aboard
Title: Re: Setting Up a New Witness Node
Post by: alt on March 29, 2017, 12:39:37 am
I just want to remind guys don't give your vote so easy
don't forget account  bue who was our witness appear as a new member too.
I will only support new witness who has do some volunteer job for community already.
witness is not only a job but also an honour for those who believe Bitshares
It shouldn't be so easy to got.
I wish more volunteer like JonnyBitcoin will set up the witness node.

according to the info I collected from China community, the man behind witness "bue" is sfinder, a famous cheater in China cryptocurrency area.
if this is the fact,  we should definitely remove "bue" from witness slate immediately, it's a shame to let a cheater hide there.
this old post shows what sfinder has done in the past: https://bitsharestalk.org/index.php/topic,10937.0.html (https://bitsharestalk.org/index.php/topic,10937.0.html)

however, I am 95%, but not 100% sure what I collected is the fact, to be careful, I set the title of this thread as "about witness "bue"" instead of "please remove "bue" from witness slate". if you know more about "bue", please post it here as proof for community to reach a decision.

to bue: if you are not sfinder, please claim here and provide evidence about who you are.

cheaters are always good at lying, so just being nice is not enough, being careful is always a must.
Title: Re: Setting Up a New Witness Node
Post by: tbone on March 29, 2017, 02:14:59 am
Here are some notes on installing and running my witness:  sahkan-bitshares

1. My 16GB RAM runs at 95% utilization, in comparison CPUs and Network around 5%
2. I am one of 56 witness nodes, only 19 are block producing (Active) I would say that it is extremely  centralized ATM.
3. To vote yourself in as an active node as of today you need over 403mln votes, around $23MLN?
4. 11 Committee members control most of the votes and setting on the network, including voting in witness nodes.
5. I saw a recent proposal to raise the witness pay to 3BTS per block (from 1.5BTS) maybe the number of Active witnesses should be raised as well?

My witness runs in Hawaii, if it ever goes active I will update this post with the MPA Price Feeds guide. Any feedback on fine tuning my witness will be appreciated and I will be grateful for any votes for  witness sahkan-bitshares!

Just so you know, the inventor of DPOS -- one of the world's foremost blockchain experts -- has shown over and over that Bitshares and Steem are effectively far more decentralized than Bitcoin, and that adding more witnesses does not improve security much and would actually have a negative consequence because it would increase the time to irreversible confirmation.
Title: Re: Setting Up a New Witness Node
Post by: sahkan on March 29, 2017, 04:09:14 am
[member=37127]JonnyBitcoin[/member]
Thanks! I appreciate your confidence and the tip. You can have my votes as well if you ever need them.

[member=34707]rnglab[/member]
The websocket exposure was only during the initial synch (per the docs guide) but I will skip it on my next build. Thank you.

So the 8GB was an initial recommendation I found browsing through the forum. My build uses 16GB and it's pushing its limit. I am looking at 32GB for my final build (aiming at a 2 year life cycle)

[member=4465]alt[/member]
I meant this threat to be a guide for people to help secure the network, I am not even soliciting anything. I will write my witness proposal later when I get done tuning it and get the final build.
But I guess there is always a hater so to answer you quickly:
- about 'bue' - I like swiss cheese
- Running a witness is a RESPONSIBILITY and I would think that it is in community's interest to build a pool of capable witnesses, both active and standby
- If you keep hating on every new comer, you will not be able to grow this community
- and as far as the active witnesses go, they are mostly voted in by two people only
Feel free to look me up on https://bitcointalk.org or https://talk.peercoin.net/


[member=39182]tbone[/member]
Thanks
Title: Re: Setting Up a New Witness Node
Post by: rnglab on April 17, 2017, 06:02:18 am

[member=34707]rnglab[/member]
The websocket exposure was only during the initial synch (per the docs guide) but I will skip it on my next build. Thank you.


Exposing your witness_node *before* enabling block production was not essentially wrong, it just may lead to confussion.
IP address are obfuscated on block producing witness nodes.On top of server hardening (including DOS protection) this is a great built in security measure, but not exempt from network mapping and profiling to reveal a witness IP.

Also remember not importing your witness owner key. If  your nodes get compromised you will only need to deploy new ones with different IP addresses, new active and signing keys and login credentials to start producing again from a clean state.

Quote
[10 APR 2017 Edit: On the production server I skipped this per [member=34707]rnglab[/member] 's below comments, the difference was the synch time to the blockchain - 12Hrs+]

12Hrs is a lot for 3G blockchain. Did you have updated seed nodes then?
https://github.com/bitshares/bitshares-core/blob/master/libraries/app/application.cpp#L163

It  helps to backup your blockchain folder once you closed your witness_node with a clean exit.
If your node crashes you will only need to sync just the last blocks, most of the times without even having to raplay/reindex the blockchain.

You are doing a good job, I have upvoted your witness a few days ago.
Title: Re: Setting Up a New Witness Node
Post by: sahkan on April 17, 2017, 07:30:37 am

Also remember not importing your witness owner key. If  your nodes get compromised you will only need to deploy new ones with different IP addresses, new active and signing keys and login credentials to start producing again from a clean state.

Quote
[10 APR 2017 Edit: On the production server I skipped this per [member=34707]rnglab[/member] 's below comments, the difference was the synch time to the blockchain - 12Hrs+]

12Hrs is a lot for 3G blockchain. Did you have updated seed nodes then?
https://github.com/bitshares/bitshares-core/blob/master/libraries/app/application.cpp#L163

You are doing a good job, I have upvoted your witness a few days ago.

Yes ACTIVE PERMISSIONS only (for signing the blocks) no owner key. It was a clean build without nodes, so the time did not matter. I have tested it since that build and replays were much quicker (about 1hr). I saw the vote, appreciate it and returned the favor!
Title: Re: Setting Up a New Witness Node
Post by: alt on April 20, 2017, 12:50:52 pm
[member=37127]JonnyBitcoin[/member]
Thanks! I appreciate your confidence and the tip. You can have my votes as well if you ever need them.

[member=34707]rnglab[/member]
The websocket exposure was only during the initial synch (per the docs guide) but I will skip it on my next build. Thank you.

So the 8GB was an initial recommendation I found browsing through the forum. My build uses 16GB and it's pushing its limit. I am looking at 32GB for my final build (aiming at a 2 year life cycle)

[member=4465]alt[/member]
I meant this threat to be a guide for people to help secure the network, I am not even soliciting anything. I will write my witness proposal later when I get done tuning it and get the final build.
But I guess there is always a hater so to answer you quickly:
- about 'bue' - I like swiss cheese
- Running a witness is a RESPONSIBILITY and I would think that it is in community's interest to build a pool of capable witnesses, both active and standby
- If you keep hating on every new comer, you will not be able to grow this community
- and as far as the active witnesses go, they are mostly voted in by two people only
Feel free to look me up on https://bitcointalk.org or https://talk.peercoin.net/


[member=39182]tbone[/member]
Thanks
sorry I just saw this today.
and you have my support
I am not hate for newcomer, I just need be carefully, because I have saw so many scam happened in Bitshares
Title: Re: Setting Up a New Witness Node
Post by: sahkan on April 22, 2017, 02:21:38 am
[member=37127]JonnyBitcoin[/member]
Thanks! I appreciate your confidence and the tip. You can have my votes as well if you ever need them.

[member=34707]rnglab[/member]
The websocket exposure was only during the initial synch (per the docs guide) but I will skip it on my next build. Thank you.

So the 8GB was an initial recommendation I found browsing through the forum. My build uses 16GB and it's pushing its limit. I am looking at 32GB for my final build (aiming at a 2 year life cycle)

[member=4465]alt[/member]
I meant this threat to be a guide for people to help secure the network, I am not even soliciting anything. I will write my witness proposal later when I get done tuning it and get the final build.
But I guess there is always a hater so to answer you quickly:
- about 'bue' - I like swiss cheese
- Running a witness is a RESPONSIBILITY and I would think that it is in community's interest to build a pool of capable witnesses, both active and standby
- If you keep hating on every new comer, you will not be able to grow this community
- and as far as the active witnesses go, they are mostly voted in by two people only
Feel free to look me up on https://bitcointalk.org or https://talk.peercoin.net/


[member=39182]tbone[/member]
Thanks
sorry I just saw this today.
and you have my support
I am not hate for newcomer, I just need be carefully, because I have saw so many scam happened in Bitshares

Great, thank you. Let's take it to the next level together, it will be good for everyone!  8)
Title: Re: Setting Up a New Witness Node
Post by: giannigre on July 19, 2019, 07:01:48 pm
Hello, so if i follow your installation guide i will be able to run my own exchange,with my own coin?
Title: Re: Setting Up a New Witness Node
Post by: sahkan on July 20, 2019, 02:26:20 am
Hello, so if i follow your installation guide i will be able to run my own exchange,with my own coin?

No. To do that you have to just install bitshares with new parameters. A bit more work.
Title: Re: Setting Up a New Witness Node
Post by: giannigre on July 20, 2019, 04:50:17 am
hi and thanks for the answer.
Can you help me showing a link to do this? Is there a guide?


maybe this one?
https://steemit.com/bitshares/@ihashfury/run-your-own-decentralised-exchange (https://steemit.com/bitshares/@ihashfury/run-your-own-decentralised-exchange)
Title: Re: Setting Up a New Witness Node
Post by: sahkan on July 20, 2019, 12:22:10 pm
Running your own chain would be like running Bitshares private testnet. You can start here:
https://github.com/bitshares/bitshares-core/wiki/private-testnet
Title: Re: Setting Up a New Witness Node
Post by: giannigre on July 20, 2019, 03:58:54 pm
hi
so the difference between your
https://dexnode.net/?r=sahkan-bitshares (https://dexnode.net/?r=sahkan-bitshares)

and this one
https://ex.xbts.io/?r=xbtsx#/market/XBTSX.BTC_BTS (https://ex.xbts.io/?r=xbtsx#/market/XBTSX.BTC_BTS)

is that yow own a normal witness node,he turned a witness node in personal exchange?
So is possible follow your guide,install  a witness node ,and add my coin "i will find the way" and turn it in my own exchange?
Thanks.
Title: Re: Setting Up a New Witness Node
Post by: abit on July 24, 2019, 01:38:54 pm
hi
so the difference between your
https://dexnode.net/?r=sahkan-bitshares (https://dexnode.net/?r=sahkan-bitshares)

and this one
https://ex.xbts.io/?r=xbtsx#/market/XBTSX.BTC_BTS (https://ex.xbts.io/?r=xbtsx#/market/XBTSX.BTC_BTS)

is that yow own a normal witness node,he turned a witness node in personal exchange?
So is possible follow your guide,install  a witness node ,and add my coin "i will find the way" and turn it in my own exchange?
Thanks.

If you want to create a coin, you don't need to run a witness node, instead, you can create via https://wallet.bitshares.org. Please read https://how.bitshares.works/en/master/bts_holders/tutorials/uia-create-gui.html

If you want to run a web wallet like https://wallet.bitshares.org, please read https://dev.bitshares.works/en/master/bts_guide/tutorials/distributed-access-hosting.html#distributed-access-to-dex and https://github.com/bitshares/bitshares-ui/blob/develop/README.md

If you want to run a customized web wallet like https://ex.xbts.io/, please read https://steemit.com/bitshares/@cm-steem/bitshares-ui-customization-guide

If you want other people to deposit to your exchange, you need to develop a gateway service, please read https://github.com/bitshares/bitshares-ui/wiki/Gateway-Integration-Requirements
Title: Re: Setting Up a New Witness Node
Post by: giannigre on July 24, 2019, 02:33:52 pm
hi
so the difference between your
https://dexnode.net/?r=sahkan-bitshares (https://dexnode.net/?r=sahkan-bitshares)

and this one
https://ex.xbts.io/?r=xbtsx#/market/XBTSX.BTC_BTS (https://ex.xbts.io/?r=xbtsx#/market/XBTSX.BTC_BTS)

is that yow own a normal witness node,he turned a witness node in personal exchange?
So is possible follow your guide,install  a witness node ,and add my coin "i will find the way" and turn it in my own exchange?
Thanks.

If you want to create a coin, you don't need to run a witness node, instead, you can create via https://wallet.bitshares.org. Please read https://how.bitshares.works/en/master/bts_holders/tutorials/uia-create-gui.html

If you want to run a web wallet like https://wallet.bitshares.org, please read https://dev.bitshares.works/en/master/bts_guide/tutorials/distributed-access-hosting.html#distributed-access-to-dex and https://github.com/bitshares/bitshares-ui/blob/develop/README.md

If you want to run a customized web wallet like https://ex.xbts.io/, please read https://steemit.com/bitshares/@cm-steem/bitshares-ui-customization-guide

If you want other people to deposit to your exchange, you need to develop a gateway service, please read https://github.com/bitshares/bitshares-ui/wiki/Gateway-Integration-Requirements

thanks are good guides,but i have a problem from the biginning ,because my coin has a total supply of 10 billion,and  in create asset maximum is 10 million,what i can do?
Title: Re: Setting Up a New Witness Node
Post by: abit on July 24, 2019, 03:04:35 pm
hi
so the difference between your
https://dexnode.net/?r=sahkan-bitshares (https://dexnode.net/?r=sahkan-bitshares)

and this one
https://ex.xbts.io/?r=xbtsx#/market/XBTSX.BTC_BTS (https://ex.xbts.io/?r=xbtsx#/market/XBTSX.BTC_BTS)

is that yow own a normal witness node,he turned a witness node in personal exchange?
So is possible follow your guide,install  a witness node ,and add my coin "i will find the way" and turn it in my own exchange?
Thanks.

If you want to create a coin, you don't need to run a witness node, instead, you can create via https://wallet.bitshares.org. Please read https://how.bitshares.works/en/master/bts_holders/tutorials/uia-create-gui.html

If you want to run a web wallet like https://wallet.bitshares.org, please read https://dev.bitshares.works/en/master/bts_guide/tutorials/distributed-access-hosting.html#distributed-access-to-dex and https://github.com/bitshares/bitshares-ui/blob/develop/README.md

If you want to run a customized web wallet like https://ex.xbts.io/, please read https://steemit.com/bitshares/@cm-steem/bitshares-ui-customization-guide

If you want other people to deposit to your exchange, you need to develop a gateway service, please read https://github.com/bitshares/bitshares-ui/wiki/Gateway-Integration-Requirements

thanks are good guides,but i have a problem from the biginning ,because my coin has a total supply of 10 billion,and  in create asset maximum is 10 million,what i can do?
Change precision to 5 or less, then can increase maximum supply.
Title: Re: Setting Up a New Witness Node
Post by: giannigre on July 25, 2019, 09:00:22 pm
hi
so the difference between your
https://dexnode.net/?r=sahkan-bitshares (https://dexnode.net/?r=sahkan-bitshares)

and this one
https://ex.xbts.io/?r=xbtsx#/market/XBTSX.BTC_BTS (https://ex.xbts.io/?r=xbtsx#/market/XBTSX.BTC_BTS)

is that yow own a normal witness node,he turned a witness node in personal exchange?
So is possible follow your guide,install  a witness node ,and add my coin "i will find the way" and turn it in my own exchange?
Thanks.

If you want to create a coin, you don't need to run a witness node, instead, you can create via https://wallet.bitshares.org. Please read https://how.bitshares.works/en/master/bts_holders/tutorials/uia-create-gui.html

If you want to run a web wallet like https://wallet.bitshares.org, please read https://dev.bitshares.works/en/master/bts_guide/tutorials/distributed-access-hosting.html#distributed-access-to-dex and https://github.com/bitshares/bitshares-ui/blob/develop/README.md

If you want to run a customized web wallet like https://ex.xbts.io/, please read https://steemit.com/bitshares/@cm-steem/bitshares-ui-customization-guide

If you want other people to deposit to your exchange, you need to develop a gateway service, please read https://github.com/bitshares/bitshares-ui/wiki/Gateway-Integration-Requirements

thanks are good guides,but i have a problem from the biginning ,because my coin has a total supply of 10 billion,and  in create asset maximum is 10 million,what i can do?
Change precision to 5 or less, then can increase maximum supply.
Thanks very kind ,i started to build my exchange,soon i will update
Title: Re: Setting Up a New Witness Node
Post by: TechnoL0g on August 28, 2019, 03:27:42 pm
hi
so the difference between your
https://dexnode.net/?r=sahkan-bitshares (https://dexnode.net/?r=sahkan-bitshares)

and this one
https://ex.xbts.io/?r=xbtsx#/market/XBTSX.BTC_BTS (https://ex.xbts.io/?r=xbtsx#/market/XBTSX.BTC_BTS)

is that yow own a normal witness node,he turned a witness node in personal exchange?
So is possible follow your guide,install  a witness node ,and add my coin "i will find the way" and turn it in my own exchange?
Thanks.

https://ex.xbts.io this is not a witness node, it's just a relay node, and even relay nodes we have 128 GB of RAM and 24 cores and only xeons.

witness node from xbts.io will be soon and it has a separate name
because it’s bad practice to mix the exchange node with the witness node

Because studies of delegate models of other blockchains (not Bitshares) show that the efficiency of block production may fall if you use a witness for other purposes, for example, processing a large number of other transactions, while you need to create new blocks.

I thank the author of the topic for a detailed guide!