I successfully build and run rippled 1.1.2 on Ubuntu 18.04 with the following commands:
sudo apt-get -y install git cmake pkg-config protobuf-compiler libprotobuf-dev libssl-dev wget cd ~Downloads/ wget https://dl.bintray.com/boostorg/release/1.67.0/source/boost_1_67_0.tar.gz cd .. mkdir lib cd lib/ tar xvzf ~/Downloads/boost_1_67_0.tar.gz ./bootstrap.sh ./b2 -j1 export BOOST_ROOT=/home/xrp/lib/boost_1_67_0 cd ~/repos/ git clone https://github.com/ripple/rippled.git cd rippled git tag git show --summary 1.1.2 git reset --hard 1.1.2 mkdir build cd build/ cmake .. cmake --build . ./rippled -u
284.6s, 171 suites, 1049 cases, 379760 tests total, 0 failures
configured it and started:
cd ~ mkdir -p ~/.config/ripple cd ~/repos/rippled/ cp cfg/rippled-example.cfg ~/.config/ripple/rippled.cfg sudo mkdir -p /var/log/rippled/ sudo chgrp user /var/log/rippled/ sudo chmod g+w /var/log/rippled/ cd ~ mkdir /ripple-data nano ~/.config/ripple/rippled.cfg #set path in [node_db] to /home/xrp/ripple-data/node #set [database_path] to /home/xrp/ripple-data/db cp cfg/validators-example.txt ~/.config/ripple/validators.txt cd ~/repos/rippled/build ./rippled
and got something close to what is expected:
Loading: "/home/user/.config/ripple/rippled.cfg" Watchdog: Launching child 1 2019-Jan-17 15:42:38.701970571 JobQueue:NFO Auto-tuning to 3 validation/transaction/proposal threads. 2019-Jan-17 15:42:39.203725985 Amendments:DBG Amendment 4C97EBA926031A7CF7D7B36FDE3ED66DDA5421192D63DE53FFB46E43B9DC8373 is supported. 2019-Jan-17 15:42:39.203866283 Amendments:DBG Amendment 6781F8368C4771B83E8B821D88F580202BCB4228075297B19E4FDC5233F1EFDC is supported. 2019-Jan-17 15:42:39.203909683 Amendments:DBG Amendment 42426C4D4F1009EE67080A9B7965B44656D7714D104A72F9B4369F97ABF044EE is supported. 2019-Jan-17 15:42:39.203946982 Amendments:DBG Amendment 08DE7D96082187F6E6578530258C77FAABABE4C20474BDB82F04B021F1A68647 is supported. 2019-Jan-17 15:42:39.203982682 Amendments:DBG Amendment 740352F2412A9909880C23A559FCECEDA3BE2126FED62FC7660D628A06927F11 is supported. 2019-Jan-17 15:42:39.204022581 Amendments:DBG Amendment 1562511F573A19AE9BD103B5D6B9E01B3B46805AEC5D3C4805C902B514399146 is supported. 2019-Jan-17 15:42:39.204061081 Amendments:DBG Amendment 532651B4FD58DF8922A49BA101AB3E996E5BFBF95A913B3E392504863E63B164 is supported. 2019-Jan-17 15:42:39.204097281 Amendments:DBG Amendment E2E6F2866106419B88C50045ACE96368558C345566AC8F2BDF5A5B5587F0E6FA is supported. 2019-Jan-17 15:42:39.204132780 Amendments:DBG Amendment 07D43DCE529B15A10827E5E04943B496762F9A88E3268269D69C44BE49E21104 is supported. 2019-Jan-17 15:42:39.204539475 Amendments:DBG Amendment 86E83A7D2ECE3AD5FA87AB2195AE015C950469ABF0B72EAACED318F74886AE90 is supported. 2019-Jan-17 15:42:39.204832272 Amendments:DBG Amendment 42EEA5E28A97824821D4EF97081FE36A54E9593C6E4F20CBAE098C69D2E072DC is supported. 2019-Jan-17 15:42:39.204876671 Amendments:DBG Amendment DC9CA96AEA1DCF83E527D1AFC916EFAF5D27388ECA4060A88817C1238CAEE0BF is supported. 2019-Jan-17 15:42:39.204913671 Amendments:DBG Amendment 3012E8230864E95A58C60FD61430D7E1B4D3353195F2981DC12B0C7C0950FFAC is supported. 2019-Jan-17 15:42:39.204949071 Amendments:DBG Amendment CC5ABAE4F3EC92E94A59B1908C2BE82D2228B6485C00AFF8F22DF930D89C194E is supported. 2019-Jan-17 15:42:39.204984270 Amendments:DBG Amendment B4D44CC3111ADD964E846FC57760C8B50FFCD5A82C86A72756F6B058DDDF96AD is supported. 2019-Jan-17 15:42:39.205024670 Amendments:DBG Amendment 6C92211186613F9647A89DFFBAB8F94C99D4C7E956D495270789128569177DA1 is supported. 2019-Jan-17 15:42:39.205061969 Amendments:DBG Amendment 67A34F2CF55BFC0F93AACD5B281413176FEE195269FA6D95219A2DF738671172 is supported. 2019-Jan-17 15:42:39.205107869 Amendments:DBG Amendment B9E739B8296B4A1BB29BE990B17D66E21B62A300A909F25AC55C22D6C72E1F9D is supported. 2019-Jan-17 15:42:39.205522664 Amendments:DBG Amendment 1D3463A5891F9E589C5AE839FFAC4A917CE96197098A1EF22304E1BC5B98A454 is supported. 2019-Jan-17 15:42:39.205617963 Amendments:DBG Amendment F64E1EABBE79D55B3BB82020516CEC2C582A98A6BFE20FBE9BB6A0D233418064 is supported. 2019-Jan-17 15:42:39.205756461 Amendments:DBG Amendment 157D2D480E006395B76F948E3E07A45A05FE10230D88A7993C71F97AE4B1F2D1 is supported. 2019-Jan-17 15:42:39.205801361 Amendments:DBG Amendment 7117E2EC2DBF119CA55181D69819F1999ECEE1A0225A7FD2B9ED47940968479C is supported. 2019-Jan-17 15:42:39.205839160 Amendments:DBG Amendment CA7C02118BA27599528543DFE77BA6838D1B0F43B447D4D7F53523CE6A0E9AC2 is supported. 2019-Jan-17 15:42:39.205874560 Amendments:DBG Amendment 58BE9B5968C4DA7C59BA900961828B113E5490699B21877DEF9A31E9D0FE5D5F is supported. 2019-Jan-17 15:42:39.205909759 Amendments:DBG Amendment 3CBC5C4E630A1B82380295CDA84B32B49DD066602E74E39B85EF64137FA65194 is supported. 2019-Jan-17 15:42:39.205944759 Amendments:DBG Amendment 5D08145F0A4983F23AFFFF514E83FAD355C5ABFBB6CAB76FB5BC8519FF5F33BE is supported. 2019-Jan-17 15:42:39.207952835 OrderBookDB:DBG Advancing from 0 to 3 2019-Jan-17 15:42:39.208033934 OrderBookDB:DBG OrderBookDB::update> 2019-Jan-17 15:42:39.208246032 OrderBookDB:DBG OrderBookDB::update< 0 books found 2019-Jan-17 15:42:39.403812138 ValidatorList:DBG Loading configured trusted validator list publisher keys 2019-Jan-17 15:42:39.403927336 ValidatorList:DBG Loaded 1 keys 2019-Jan-17 15:42:39.403967136 ValidatorList:DBG Loading configured validator keys 2019-Jan-17 15:42:39.404002936 ValidatorList:DBG Loaded 0 entries 2019-Jan-17 15:42:39.404039435 ValidatorSite:DBG Loading configured validator list sites 2019-Jan-17 15:42:39.404118534 ValidatorSite:DBG Loaded 1 sites 2019-Jan-17 15:42:39.404713927 NodeObject:DBG NodeStore.main target size set to 131072 2019-Jan-17 15:42:39.404771827 NodeObject:DBG NodeStore.main target age set to 120000000000 2019-Jan-17 15:42:39.404811926 TaggedCache:DBG LedgerCache target size set to 256 2019-Jan-17 15:42:39.404847926 TaggedCache:DBG LedgerCache target age set to 180000000000 2019-Jan-17 15:42:39.406504406 TaggedCache:DBG TreeNodeCache target size set to 512000 2019-Jan-17 15:42:39.406564905 TaggedCache:DBG TreeNodeCache target age set to 90000000000 2019-Jan-17 15:42:39.464171930 NetworkOPs:NFO Consensus time for #3 with LCL EB39BE60EFC9FF7E6923CCC19FAD550B1219D22A2B2DC3BB448BC3FEA34E349C 2019-Jan-17 15:42:39.464299528 ValidatorList:DBG 0 of 0 listed validators eligible for inclusion in the trusted set 2019-Jan-17 15:42:39.464340428 ValidatorList:DBG Using quorum of 18446744073709551615 for new set of 0 trusted validators (0 added, 0 removed) 2019-Jan-17 15:42:39.464377027 ValidatorList:WRN New quorum of 18446744073709551615 exceeds the number of trusted validators (0) 2019-Jan-17 15:42:39.464413927 LedgerConsensus:NFO Entering consensus process, watching, synced=no 2019-Jan-17 15:42:39.464455526 LedgerConsensus:NFO Consensus mode change before=observing, after=observing 2019-Jan-17 15:42:39.464494426 NetworkOPs:DBG Initiating consensus engine 2019-Jan-17 15:42:39.548974635 Server:NFO Opened 'port_rpc_admin_local' (ip=127.0.0.1:5005, admin IPs:127.0.0.1, http) 2019-Jan-17 15:42:39.549160133 Server:NFO Opened 'port_peer' (ip=0.0.0.0:51235, peer) 2019-Jan-17 15:42:39.549243032 Server:NFO Opened 'port_ws_admin_local' (ip=127.0.0.1:6006, admin IPs:127.0.0.1, ws) 2019-Jan-17 15:42:39.549323631 Application:FTL Startup RPC: { "command" : "log_level", "severity" : "warning" } 2019-Jan-17 15:42:39.549505629 Application:FTL Result: {} 2019-Jan-17 15:43:25.496585827 Peer:WRN [021] onReadMessage: Connection reset by peer 2019-Jan-17 15:43:32.555149723 NetworkOPs:WRN We are not running on the consensus ledger 2019-Jan-17 15:43:32.555897415 LedgerConsensus:WRN Need consensus ledger 13DA374D11825AB417E311C1C97E45BFE0B72F7EB01F54D39BFB86D87AF3BF74 2019-Jan-17 15:43:34.555687055 LedgerConsensus:WRN View of consensus changed during establish status=establish, mode=wrongLedger 2019-Jan-17 15:43:34.555829453 LedgerConsensus:WRN 13DA374D11825AB417E311C1C97E45BFE0B72F7EB01F54D39BFB86D87AF3BF74 to 730A2036165DD9DA2DD9CCA3B07B93
A separate user for rippled:
sudo useradd -d /home/xrp -m --uid 10001 --shell "/bin/bash" xrp
Starting the service:
[Unit] Description=Ripple [Service] Type=simple User=xrp KillSignal=SIGINT Restart=always WorkingDirectory=/home/xrp ExecStart=/home/xrp/rippled --net [Install] WantedBy=default.target
sudo nano /etc/systemd/system/ripple.service sudo systemctl daemon-reload sudo systemctl enable ripple.service sudo service ripple start journalctl -u ripple.service | tail -n 100
and "pubkey_validator" matched the validator public key.
I created the wallet from the command line
./rippled wallet_propose
and was able to run ‘account_info’ from the command line:
./rippled account_info rG1QQv2nh2gr7RCZ1P8YYcBUKCCN633jCn strict
{ "result" : { "account_data" : { "Account" : "rG1QQv2nh2gr7RCZ1P8YYcBUKCCN633jCn", "Balance" : "9986", "Flags" : 1114112, "LedgerEntryType" : "AccountRoot", "OwnerCount" : 0, "PreviousTxnID" : "BA7C7E006BE3C6CDBCAE001EFEBCE19E1B3F4D1B415D2E7CA067E30B830D0F17", "PreviousTxnLgrSeq" : 47079653, "RegularKey" : "rhLkGGNZdjSpnHJw4XAFw1Jy7PD8TqxoET", "Sequence" : 192220, "index" : "92FA6A9FC8EA6018D5D16532D7795C91BFB0831355BDFDA177E86C8BF997985F" }, "ledger_current_index" : 48144155, "status" : "success", "validated" : false } }
And with JSON-RPC:
curl -i -X POST http://localhost:5005 -H "Content-Type: text/xml" --data "@./ai.json"
Request (the contenct of ai.json file):
{ "method": "account_info", "params": [ { "account": "rG1QQv2nh2gr7RCZ1P8YYcBUKCCN633jCn", "strict": true, "ledger_index": "current", "queue": true } ] }
Response:
{ "result": { "account_data": { "Account": "rG1QQv2nh2gr7RCZ1P8YYcBUKCCN633jCn", "Balance": "9986", "Flags": 1114112, "LedgerEntryType": "AccountRoot", "OwnerCount": 0, "PreviousTxnID": "BA7C7E006BE3C6CDBCAE001EFEBCE19E1B3F4D1B415D2E7CA067E30B830D0F17", "PreviousTxnLgrSeq": 47079653, "RegularKey": "rhLkGGNZdjSpnHJw4XAFw1Jy7PD8TqxoET", "Sequence": 192220, "index": "92FA6A9FC8EA6018D5D16532D7795C91BFB0831355BDFDA177E86C8BF997985F" }, "ledger_current_index": 48035448, "queue_data": { "txn_count": 0 }, "status": "success", "validated": false } }
The same command with s1.ripple.com:
curl -i -X POST https://s1.ripple.com:51234 -H "Content-Type: text/xml" --data "@./ai.json"
Other commands worked with the command line:
./rippled server_state
{ "result" : { "state" : { "build_version" : "1.2.4", "complete_ledgers" : "48028373-48031627", "io_latency_ms" : 1, "jq_trans_overflow" : "33", "last_close" : { "converge_time" : 3001, "proposers" : 31 }, "load" : { "job_types" : [ { "job_type" : "untrustedValidation", "per_second" : 1 }, { "job_type" : "ledgerRequest", "peak_time" : 4, "per_second" : 1 }, { "job_type" : "untrustedProposal", "peak_time" : 11, "per_second" : 29 }, { "avg_time" : 9, "job_type" : "ledgerData", "peak_time" : 205, "per_second" : 2 }, { "in_progress" : 1, "job_type" : "clientCommand", "peak_time" : 5, "per_second" : 6 }, { "job_type" : "transaction", "peak_time" : 5, "per_second" : 11 }, { "job_type" : "batch", "peak_time" : 32, "per_second" : 6 }, { "job_type" : "advanceLedger", "peak_time" : 18, "per_second" : 3 }, { "job_type" : "fetchTxnData", "peak_time" : 5, "per_second" : 2 }, { "avg_time" : 1, "job_type" : "trustedValidation", "peak_time" : 14, "per_second" : 4 }, { "job_type" : "writeObjects", "peak_time" : 24, "per_second" : 8 }, { "job_type" : "trustedProposal", "peak_time" : 8, "per_second" : 10 }, { "job_type" : "peerCommand", "peak_time" : 7, "per_second" : 1083 }, { "job_type" : "diskAccess", "peak_time" : 10, "per_second" : 4 }, { "job_type" : "processTransaction", "per_second" : 7 }, { "job_type" : "SyncReadNode", "peak_time" : 1, "per_second" : 51 }, { "job_type" : "AsyncReadNode", "peak_time" : 50, "per_second" : 1885 }, { "job_type" : "WriteNode", "per_second" : 106 } ], "threads" : 4 }, "load_base" : 256, "load_factor" : 256, "load_factor_fee_escalation" : 256, "load_factor_fee_queue" : 256, "load_factor_fee_reference" : 256, "load_factor_server" : 256, "peer_disconnects" : "1197", "peer_disconnects_resources" : "0", "peers" : 21, "pubkey_node" : "n9MVgjp3rEh6UAWHMA4MwQRerSzmyJb5toQqUaMMUcdXrf6ruXsU", "pubkey_validator" : "nHUQnU65NwZh8eaHEvJit6R4V5gMySCAaWNW1a84zZtbwzFUzV7E", "server_state" : "proposing", "server_state_duration_us" : "12982431440", "state_accounting" : { "connected" : { "duration_us" : "493346490", "transitions" : 1 }, "disconnected" : { "duration_us" : "3861135", "transitions" : 1 }, "full" : { "duration_us" : "131396185770", "transitions" : 12 }, "syncing" : { "duration_us" : "37702330", "transitions" : 12 }, "tracking" : { "duration_us" : "11", "transitions" : 12 } }, "time" : "2019-Jun-17 12:31:05.451341", "uptime" : 131933, "validated_ledger" : { "base_fee" : 10, "close_time" : 614089860, "hash" : "E28B4CC2A6D27179D7B19F145B9BB6335578F767D70874A6753195EF93A25000", "reserve_base" : 20000000, "reserve_inc" : 5000000, "seq" : 48031627 }, "validation_quorum" : 26, "validator_list_expires" : 616636800 }, "status" : "success" } }
To enable the validation I built validator-keys-tool:
cd ~/repos git clone --recursive https://github.com/ripple/validator-keys-tool.git cd validator-keys-tool/ git submodule update --init --recursive mkdir build cd build/ export BOOST_ROOT=/home/user/lib/boost_1_67_0 cmake .. cmake --build . ./validator-keys -u
Then I generated the keys:
./validator-keys create_keys ./validator-keys create_token --keyfile /home/user/.ripple/validator-keys.json
added [validator_token] section to /home/xrp/.config/ripple/rippled.cfg and “pubkey_validator” matched the validator public key.
./rippled server_info
{ "result" : { "info" : { "build_version" : "1.2.4", "complete_ledgers" : "48028373-48031643", "hostid" : "bank", "io_latency_ms" : 1, "jq_trans_overflow" : "33", "last_close" : { "converge_time_s" : 3.001, "proposers" : 31 }, "load" : { "job_types" : [ { "avg_time" : 3, "job_type" : "untrustedValidation", "peak_time" : 82, "per_second" : 1, "waiting" : 2 }, { "job_type" : "ledgerRequest", "per_second" : 1 }, { "job_type" : "untrustedProposal", "peak_time" : 4, "per_second" : 40 }, { "avg_time" : 8, "job_type" : "ledgerData", "peak_time" : 125, "per_second" : 2 }, { "in_progress" : 1, "job_type" : "clientCommand", "peak_time" : 1, "per_second" : 9 }, { "job_type" : "transaction", "peak_time" : 2, "per_second" : 9 }, { "avg_time" : 1, "job_type" : "batch", "peak_time" : 135, "per_second" : 8 }, { "job_type" : "advanceLedger", "peak_time" : 15, "per_second" : 6 }, { "job_type" : "fetchTxnData", "peak_time" : 5, "per_second" : 2 }, { "avg_time" : 1, "job_type" : "trustedValidation", "peak_time" : 95, "per_second" : 9 }, { "job_type" : "writeObjects", "peak_time" : 10, "per_second" : 25 }, { "avg_time" : 96, "job_type" : "acceptLedger", "peak_time" : 271 }, { "job_type" : "trustedProposal", "peak_time" : 1, "per_second" : 12 }, { "in_progress" : 1, "job_type" : "sweep" }, { "job_type" : "heartbeat", "peak_time" : 1 }, { "job_type" : "peerCommand", "peak_time" : 8, "per_second" : 1328 }, { "job_type" : "diskAccess", "peak_time" : 1, "per_second" : 9 }, { "job_type" : "processTransaction", "peak_time" : 1, "per_second" : 9 }, { "job_type" : "SyncReadNode", "peak_time" : 2, "per_second" : 61 }, { "job_type" : "AsyncReadNode", "peak_time" : 14, "per_second" : 2269 }, { "job_type" : "WriteNode", "per_second" : 401 } ], "threads" : 4 }, "load_factor" : 1, "peer_disconnects" : "1201", "peer_disconnects_resources" : "0", "peers" : 19, "pubkey_node" : "n9MVgjp3rEh6UAWHMA4MwQRerSzmyJb5toQqUaMMUcdXrf6ruXsU", "pubkey_validator" : "nHUQnU65NwZh8eaHEvJit6R4V5gMySCAaWNW1a84zZtbwzFUzV7E", "server_state" : "proposing", "server_state_duration_us" : "13044297563", "state_accounting" : { "connected" : { "duration_us" : "493346490", "transitions" : 1 }, "disconnected" : { "duration_us" : "3861135", "transitions" : 1 }, "full" : { "duration_us" : "131458051893", "transitions" : 12 }, "syncing" : { "duration_us" : "37702330", "transitions" : 12 }, "tracking" : { "duration_us" : "11", "transitions" : 12 } }, "time" : "2019-Jun-17 12:32:07.317357", "uptime" : 131994, "validated_ledger" : { "age" : 6, "base_fee_xrp" : 1e-05, "hash" : "2A611F7A785DE5EB58B7E479AA9B7499AB5163B086B25EC1998A315F2D09D955", "reserve_base_xrp" : 20, "reserve_inc_xrp" : 5, "seq" : 48031643 }, "validation_quorum" : 26, "validator_list" : { "count" : 1, "expiration" : "2019-Jul-17 00:00:00.000000000", "status" : "active" } }, "status" : "success" } }
Currently there are 31 validator nodes IDs (50-odd character strings starting with “n”), the status is “active”, but the expiration date is not in future: at the moment of running the command the server date/time was 2019-Jul-17 12:42:16 UTC, but the expiration date was 2019-Jul-17 00:00:00, see below:
./rippled validators
{ "result" : { "local_static_keys" : [], "publisher_lists" : [ { "available" : true, "expiration" : "2019-Jul-17 00:00:00.000000000", "list" : [ "nHBSUZJnqK5BRu3bWAmebfkETNeEFmU7sm3DXzCuEYzRkAEdxuTy", "nHBgiH2aih5JoaL3wbiiqSQfhrC21vJjxXoCoD2fuqcNbriXsfLm", "nHB5kpvUaEpvCtwu31fMf6dTuuCNnWRctWrV3UEZ9rbtPdpvbUvJ", "nHB8QMKGt9VB4Vg71VszjBVQnDW3v3QudM4DwFaJfy96bj4Pv9fA", "nHBidG3pZK11zQD6kpNDoAhDxH6WLGui6ZxSbUx7LSqLHsgzMPec", "nHBtDzdRDykxiuv7uSMPTcGexNm879RUUz5GW4h1qgjbtyvWZ1LE", "nHUpJSKQTZdB1TDkbCREMuf8vEqFkk84BcvZDhsQsDufFDQVajam", "nHUpcmNsxAw47yt2ADDoNoQrzLyTJPgnyq16u6Qx2kRPA17oUNHz", "nHUnhRJK3csknycNK5SXRFi8jvDp3sKoWvS9wKWLq1ATBBGgPBjp", "nHUfPizyJyhAJZzeq3duRVrZmsTZfcLn7yLF5s2adzHdcHMb9HmQ", "nHU95JxeaHJoSdpE7R49Mxp4611Yk5yL9SGEc12UDJLr4oEUN4NT", "nHUUrjuEMtvzzTsiW2xKinUt7Jd83QFqYgfy3Feb7Hq1EJyoxoSz", "nHUKp8XUkaFN6GzQ3o4qTE1w9aAD5uFjZ8vDt6pwjBsTFRq5FWEb", "nHULqGBkJtWeNFjhTzYeAsHA3qKKS7HoBh8CV3BAGTGMZuepEhWC", "nHUStq4qu3NXaL6T42wbtpR8mare8gWMVYrUzek227c6QeUn6QGN", "nHUVPzAmAmQ2QSc4oE1iLfsGi17qN2ado8PhxvgEkou76FLxAz7C", "nHUXeusfwk61c4xJPneb9Lgy7Ga6DVaVLEyB29ftUdt9k2KxD6Hw", "nHU2Y1mLGDvTbc2dpvpkQ16qdeTKv2aJwGJHFySSB9U3jkTmj4CA", "nHUcNC5ni7XjVYfCMe38Rm3KQaq27jw7wJpcUYdo4miWwpNePRTw", "nHUd8g4DWm6HgjGTjKKSfYiRyf8qCvEN1PXR7YDJ5QTFyAnZHkbW", "nHUCCckfXVBdoounaU7JVnfdPdMXEeetwH8VdCBXD996BaVZ8WdJ", "nHUkp7WhouVMobBUKGrV5FNqjsdD9zKP5jpGnnLLnYxUQSGAwrZ6", "nHUon2tpyJEHHYGmxqeGu37cvPYHzrMtUNQFVdCgGNvEkjmCpTqK", "nHUFE9prPXPrHcG3SkwP1UzAQbSphqyQkQK9ATXLZsfkezhhda3p", "nHUFCyRCrUjvtZmKiLeF8ReopzKuUoKeDeXo3wEUBVSaawzcSBpW", "nHUFzgC9fDw2MEDaiv9JMdBFhtJ6DMKoUCpS8gPGi6tkfbqmTyis", "nHUzum747yqip3HWSgzSNHNMjmLUqhroNVWidSRTREswEVhKNQEM", "nHDwHQGjKTz6R6pFigSSrNBrhNYyUGFPHA75HiTccTCQzuu9d7Za", "nHDB2PAPYqF86j9j3c6w1F1ZqwvQfiWcFShZ9Pokg9q4ohNDSkAz", "nHDDasc9BHNB99PW8KUduS8Phqg8NPUmjufzMU6HGGDMUH2xNpPh", "nHDH7bQJpVfDhVSqdui3Z8GPvKEBQpo6AKHcnXe21zoD4nABA6xj" ], "pubkey_publisher" : "ED2677ABFFD1B33AC6FBC3062B71F1E8397C1505E1C42C64D11AD1B28FF73F4734", "seq" : 52, "uri" : "https://vl.ripple.com", "version" : 1 } ], "signing_keys" : { "nHB5kpvUaEpvCtwu31fMf6dTuuCNnWRctWrV3UEZ9rbtPdpvbUvJ" : "n9MtAgMDVFxEgzYsmZKNBYS4vTx76xSSD78tFdZFcL27aeXeeECQ", "nHB8QMKGt9VB4Vg71VszjBVQnDW3v3QudM4DwFaJfy96bj4Pv9fA" : "n9J2hKPRZ9bUmsBD6d1j16G2P1arMxfASgSKYpoK9dRpJEuD3Joz", "nHBSUZJnqK5BRu3bWAmebfkETNeEFmU7sm3DXzCuEYzRkAEdxuTy" : "n9MUYTDQbd5BqxRiU8JuYoDAD9Trjzvd9VWfVYadgwqmxREjvRe5", "nHBgiH2aih5JoaL3wbiiqSQfhrC21vJjxXoCoD2fuqcNbriXsfLm" : "n9KhsMP6jKFQPpjJ9VwqyZSwrL4shdX9YknRwmsAVL1RNVrx4jLm", "nHBidG3pZK11zQD6kpNDoAhDxH6WLGui6ZxSbUx7LSqLHsgzMPec" : "n9KaxgJv69FucW5kkiaMhCqS6sAR1wUVxpZaZmLGVXxAcAse9YhR", "nHBtDzdRDykxiuv7uSMPTcGexNm879RUUz5GW4h1qgjbtyvWZ1LE" : "n9LCf7NtwcyXVc5fYB6UVByRoQZqJDhrMUoKnr3GQB6mFqpcmMzg", "nHDB2PAPYqF86j9j3c6w1F1ZqwvQfiWcFShZ9Pokg9q4ohNDSkAz" : "n94RJmUKMJHTmuXhNYsFUwje9a9hD3Rw3dESntBDeonJLCjAEbMZ", "nHDDasc9BHNB99PW8KUduS8Phqg8NPUmjufzMU6HGGDMUH2xNpPh" : "n9L2y9THhdubapafmt7b2TRuhRUfPf1anchmiFyFSKBiaK3BEAwY", "nHDH7bQJpVfDhVSqdui3Z8GPvKEBQpo6AKHcnXe21zoD4nABA6xj" : "n9MSTcx1fmfyKpaDTtpXucugcqM7yxpaggmwRxcyA3Nr4pE1pN3x", "nHDwHQGjKTz6R6pFigSSrNBrhNYyUGFPHA75HiTccTCQzuu9d7Za" : "n9KKQUgUwXAAh7LKKjQos85vr19EvWghM13oBXurpvmRgEPZJ7XE", "nHU2Y1mLGDvTbc2dpvpkQ16qdeTKv2aJwGJHFySSB9U3jkTmj4CA" : "n9K2FpCqZftM1xXXaWXFPVbEimLX6MEjrmQywfSutkdK1PRvqDb2", "nHU95JxeaHJoSdpE7R49Mxp4611Yk5yL9SGEc12UDJLr4oEUN4NT" : "n9JtY9MqUcwKWenHp8WoRobFRmB2mmBEJd1ruJmhKGKAwtFQkQjb", "nHUCCckfXVBdoounaU7JVnfdPdMXEeetwH8VdCBXD996BaVZ8WdJ" : "n9KiJP9wcJheTs6187LB8SP6Pw1UghKUQLgq4RmMKheTzvVhmesM", "nHUFCyRCrUjvtZmKiLeF8ReopzKuUoKeDeXo3wEUBVSaawzcSBpW" : "n9Lqr4YZxk7WYRDTBZjjmoAraikLCjAgAswaPaZ6LaGW6Q4Y2eoo", "nHUFE9prPXPrHcG3SkwP1UzAQbSphqyQkQK9ATXLZsfkezhhda3p" : "n9J67zk4B7GpbQV5jRQntbgdKf7TW6894QuG7qq1rE5gvjCu6snA", "nHUFzgC9fDw2MEDaiv9JMdBFhtJ6DMKoUCpS8gPGi6tkfbqmTyis" : "n94RChC3yKSHyXUerLYE1sjm13eP7hucSNpoZZTVgq4UtAiZAcgP", "nHUKp8XUkaFN6GzQ3o4qTE1w9aAD5uFjZ8vDt6pwjBsTFRq5FWEb" : "n9M6V1wyi9qwU3CESTmta3ANQehmdqFFf8osuR1jkKQ7GBcV7746", "nHULqGBkJtWeNFjhTzYeAsHA3qKKS7HoBh8CV3BAGTGMZuepEhWC" : "n9MZ7EVGKypqdyNguP31xSqhFqDBF4V5FESLMmLiGrBJ3khP2AzQ", "nHUQnU65NwZh8eaHEvJit6R4V5gMySCAaWNW1a84zZtbwzFUzV7E" : "n9KrSrf3XcR2s6zTGggYMwK54x1qBtM1fhioztXqeNjDj1ugMkLR", "nHUStq4qu3NXaL6T42wbtpR8mare8gWMVYrUzek227c6QeUn6QGN" : "n9Mvj6QPzZZP3KJSsoYT6mTFPvtsGKKSRHYd2U7YhArUB4ZD1m9M", "nHUUrjuEMtvzzTsiW2xKinUt7Jd83QFqYgfy3Feb7Hq1EJyoxoSz" : "n9LLqqH1cVFPjEnQYFQ6DooxuhHPQxwXgMjDGrpJ6pb1WGDoi76Q", "nHUVPzAmAmQ2QSc4oE1iLfsGi17qN2ado8PhxvgEkou76FLxAz7C" : "n9J1GJHtua77TBEzir3FvsgWX68xBFeC8os3s5TkCg97E1cwxKfH", "nHUXeusfwk61c4xJPneb9Lgy7Ga6DVaVLEyB29ftUdt9k2KxD6Hw" : "n9KHXifDfimGs2CREvbRrAfjnoWcwjMCC8u8KLRTtrRAYk1ktSxX", "nHUcNC5ni7XjVYfCMe38Rm3KQaq27jw7wJpcUYdo4miWwpNePRTw" : "n9KGPLrThyYDW231KgtRUrk56RtPCKqPVRMLeaXQszvEQd3Yf5wj", "nHUd8g4DWm6HgjGTjKKSfYiRyf8qCvEN1PXR7YDJ5QTFyAnZHkbW" : "n9KSXAVPy6ac8aX88fRsJN6eSrJ2gEfGrfskUVJJ7XkopGsKNg9X", "nHUfPizyJyhAJZzeq3duRVrZmsTZfcLn7yLF5s2adzHdcHMb9HmQ" : "n9M2anhK2HzFFiJZRoGKhyLpkh55ZdeWw8YyGgvkzY7AkBvz5Vyj", "nHUkp7WhouVMobBUKGrV5FNqjsdD9zKP5jpGnnLLnYxUQSGAwrZ6" : "n9MzwWa4dwdZkRzj6XmihBG4ymGtMPd12cLjfhKwx5Hoqeu6WEgy", "nHUnhRJK3csknycNK5SXRFi8jvDp3sKoWvS9wKWLq1ATBBGgPBjp" : "n9LbDLg9F7ExZCeMw1QZqsd1Ejs9uYpwd8bPUStF5hBJdd6B5aWj", "nHUon2tpyJEHHYGmxqeGu37cvPYHzrMtUNQFVdCgGNvEkjmCpTqK" : "n9JebyUXwBa5GoYJQ6AbupoMKyE2zaiR3FTfDTMkxpMMv1KPmQEn", "nHUpJSKQTZdB1TDkbCREMuf8vEqFkk84BcvZDhsQsDufFDQVajam" : "n9LFSE8fQ6Ljnc97ToHVtv1sYZ3GpzrXKpT94eFDk8jtdbfoBe7N", "nHUpcmNsxAw47yt2ADDoNoQrzLyTJPgnyq16u6Qx2kRPA17oUNHz" : "n94D6X6oFGyuvWpSjGwv3rmGSPSi5gNEVCDwnEc8arLC6HnqfEhn", "nHUzum747yqip3HWSgzSNHNMjmLUqhroNVWidSRTREswEVhKNQEM" : "n9KQRiTw9LnSsVN2tv4guAqQ2KKUYmxnhT48QU2bbx8KmFGaUxTd" }, "status" : "success", "trusted_validator_keys" : [ "nHUKp8XUkaFN6GzQ3o4qTE1w9aAD5uFjZ8vDt6pwjBsTFRq5FWEb", "nHUFzgC9fDw2MEDaiv9JMdBFhtJ6DMKoUCpS8gPGi6tkfbqmTyis", "nHUUrjuEMtvzzTsiW2xKinUt7Jd83QFqYgfy3Feb7Hq1EJyoxoSz", "nHUStq4qu3NXaL6T42wbtpR8mare8gWMVYrUzek227c6QeUn6QGN", "nHUfPizyJyhAJZzeq3duRVrZmsTZfcLn7yLF5s2adzHdcHMb9HmQ", "nHULqGBkJtWeNFjhTzYeAsHA3qKKS7HoBh8CV3BAGTGMZuepEhWC", "nHB5kpvUaEpvCtwu31fMf6dTuuCNnWRctWrV3UEZ9rbtPdpvbUvJ", "nHUnhRJK3csknycNK5SXRFi8jvDp3sKoWvS9wKWLq1ATBBGgPBjp", "nHUpcmNsxAw47yt2ADDoNoQrzLyTJPgnyq16u6Qx2kRPA17oUNHz", "nHBtDzdRDykxiuv7uSMPTcGexNm879RUUz5GW4h1qgjbtyvWZ1LE", "nHBSUZJnqK5BRu3bWAmebfkETNeEFmU7sm3DXzCuEYzRkAEdxuTy", "nHUkp7WhouVMobBUKGrV5FNqjsdD9zKP5jpGnnLLnYxUQSGAwrZ6", "nHDH7bQJpVfDhVSqdui3Z8GPvKEBQpo6AKHcnXe21zoD4nABA6xj", "nHUpJSKQTZdB1TDkbCREMuf8vEqFkk84BcvZDhsQsDufFDQVajam", "nHB8QMKGt9VB4Vg71VszjBVQnDW3v3QudM4DwFaJfy96bj4Pv9fA", "nHUXeusfwk61c4xJPneb9Lgy7Ga6DVaVLEyB29ftUdt9k2KxD6Hw", "nHUon2tpyJEHHYGmxqeGu37cvPYHzrMtUNQFVdCgGNvEkjmCpTqK", "nHDB2PAPYqF86j9j3c6w1F1ZqwvQfiWcFShZ9Pokg9q4ohNDSkAz", "nHUFCyRCrUjvtZmKiLeF8ReopzKuUoKeDeXo3wEUBVSaawzcSBpW", "nHUCCckfXVBdoounaU7JVnfdPdMXEeetwH8VdCBXD996BaVZ8WdJ", "nHUFE9prPXPrHcG3SkwP1UzAQbSphqyQkQK9ATXLZsfkezhhda3p", "nHU95JxeaHJoSdpE7R49Mxp4611Yk5yL9SGEc12UDJLr4oEUN4NT", "nHUQnU65NwZh8eaHEvJit6R4V5gMySCAaWNW1a84zZtbwzFUzV7E", "nHUcNC5ni7XjVYfCMe38Rm3KQaq27jw7wJpcUYdo4miWwpNePRTw", "nHDwHQGjKTz6R6pFigSSrNBrhNYyUGFPHA75HiTccTCQzuu9d7Za", "nHUzum747yqip3HWSgzSNHNMjmLUqhroNVWidSRTREswEVhKNQEM", "nHU2Y1mLGDvTbc2dpvpkQ16qdeTKv2aJwGJHFySSB9U3jkTmj4CA", "nHUd8g4DWm6HgjGTjKKSfYiRyf8qCvEN1PXR7YDJ5QTFyAnZHkbW", "nHUVPzAmAmQ2QSc4oE1iLfsGi17qN2ado8PhxvgEkou76FLxAz7C", "nHDDasc9BHNB99PW8KUduS8Phqg8NPUmjufzMU6HGGDMUH2xNpPh", "nHBidG3pZK11zQD6kpNDoAhDxH6WLGui6ZxSbUx7LSqLHsgzMPec", "nHBgiH2aih5JoaL3wbiiqSQfhrC21vJjxXoCoD2fuqcNbriXsfLm" ], "validation_quorum" : 26, "validator_list" : { "count" : 1, "expiration" : "2019-Jul-17 00:00:00.000000000", "status" : "active" } } }
./rippled validator_list_sites
2019-Jun-17 13:07:35.587219557 HTTPClient:NFO Connecting to 127.0.0.1:5005 { "result" : { "status" : "success", "validator_sites" : [ { "last_refresh_status" : "same_sequence", "last_refresh_time" : "2019-Jun-17 13:02:46.055804293", "next_refresh_time" : "2019-Jun-17 13:07:45.333209872", "refresh_interval_min" : 5, "uri" : "https://vl.ripple.com" } ] } }
Set node_size = tiny Resource utilization looks like this:

There are the following warnings all the time:
мая 28 08:32:17 bank rippled[668]: 2019-May-28 05:32:17.581363014 LoadMonitor:WRN Job: processLedgerData run: 1400ms wait: 1ms мая 28 08:32:17 bank rippled[668]: 2019-May-28 05:32:17.581443513 LoadMonitor:WRN Job: processLedgerData run: 1072ms wait: 1ms мая 28 08:32:17 bank rippled[668]: 2019-May-28 05:32:17.604906442 LoadMonitor:WRN Job: recvPropose->checkPropose run: 2ms wait: 1027ms мая 28 08:32:17 bank rippled[668]: 2019-May-28 05:32:17.640121185 LoadMonitor:WRN Job: advanceLedger run: 1030ms wait: 56ms мая 28 08:32:22 bank rippled[668]: 2019-May-28 05:32:22.321920511 LoadMonitor:WRN Job: processLedgerData run: 1898ms wait: 0ms мая 28 08:32:44 bank rippled[668]: 2019-May-28 05:32:44.321182078 LoadMonitor:WRN Job: processLedgerData run: 1592ms wait: 0ms мая 28 08:32:44 bank rippled[668]: 2019-May-28 05:32:44.365547162 LoadMonitor:WRN Job: processLedgerData run: 1405ms wait: 1ms мая 28 08:32:47 bank rippled[668]: 2019-May-28 05:32:47.650407247 LoadMonitor:WRN Job: processLedgerData run: 1223ms wait: 0ms мая 28 08:32:47 bank rippled[668]: 2019-May-28 05:32:47.650626245 LoadMonitor:WRN Job: processLedgerData run: 1108ms wait: 0ms мая 28 08:32:49 bank rippled[668]: 2019-May-28 05:32:49.248391956 LoadMonitor:WRN Job: processLedgerData run: 1151ms wait: 0ms мая 28 08:33:03 bank rippled[668]: 2019-May-28 05:33:03.313900693 LoadMonitor:WRN Job: processLedgerData run: 1897ms wait: 81ms мая 28 08:33:06 bank rippled[668]: 2019-May-28 05:33:06.477857740 LoadMonitor:WRN Job: processLedgerData run: 1495ms wait: 0ms мая 28 08:33:36 bank rippled[668]: 2019-May-28 05:33:36.223585805 LoadMonitor:WRN Job: processLedgerData run: 461ms wait: 760ms мая 28 08:33:38 bank rippled[668]: 2019-May-28 05:33:38.014848136 LedgerMaster:WRN Can't get seq 0 from 47563178 error мая 28 08:33:41 bank rippled[668]: 2019-May-28 05:33:41.638585105 LoadMonitor:WRN Job: processLedgerData run: 1540ms wait: 0ms мая 28 08:33:44 bank rippled[668]: 2019-May-28 05:33:44.223378780 LoadMonitor:WRN Job: processLedgerData run: 1083ms wait: 0ms мая 28 08:33:51 bank rippled[668]: 2019-May-28 05:33:51.056503272 LoadMonitor:WRN Job: processLedgerData run: 1070ms wait: 0ms мая 28 08:33:51 bank rippled[668]: 2019-May-28 05:33:51.057627264 LoadMonitor:WRN Job: processLedgerData run: 1140ms wait: 0ms мая 28 08:33:52 bank rippled[668]: 2019-May-28 05:33:52.582092797 LoadMonitor:WRN Job: processLedgerData run: 1524ms wait: 1024ms мая 28 08:33:56 bank rippled[668]: 2019-May-28 05:33:56.955457823 LoadMonitor:WRN Job: processLedgerData run: 2782ms wait: 0ms
I opened port 51235 for incoming connections and now I have about 20 peers:
./rippled peers ./rippled server_state | grep peers
"peers" : 19,
My SSD benchmark (read and write speed):
sudo hdparm -Tt /dev/sda
/dev/sda: Timing cached reads: 6194 MB in 2.00 seconds = 3100.77 MB/sec Timing buffered disk reads: 1200 MB in 3.00 seconds = 399.96 MB/sec
dd if=/dev/zero of=~/temp/output bs=8k count=1000k
1024000+0 records in 1024000+0 records out 8388608000 bytes (8,4 GB, 7,8 GiB) copied, 10,114 s, 829 MB/s
My system summary (for some reason inxi unable to detect the network card):
inxi -F
System: Host: bank Kernel: 4.18.0-21-generic x86_64 bits: 64 Console: tty 0 Distro: Ubuntu 18.04.2 LTS Machine: Device: desktop Mobo: Microsoft model: Virtual Machine v: Hyper-V UEFI Release v4.0 serial: N/A UEFI: Microsoft v: Hyper-V UEFI Release v4.0 date: 01/30/2019 CPU: Dual core Intel Celeron G3900 (-MCP-) cache: 2048 KB clock speeds: max: 2807 MHz 1: 2807 MHz 2: 2807 MHz Graphics: Card: Failed to Detect Video Card! Display Server: N/A drivers: fbdev (unloaded: modesetting,vesa) tty size: 151x45 Advanced Data: N/A out of X Network: Card: Failed to Detect Network Card! Drives: HDD Total Size: 214.7GB (6.8% used) ID-1: /dev/sda model: Virtual_Disk size: 214.7GB Partition: ID-1: / size: 195G used: 13G (7%) fs: ext4 dev: /dev/dm-0 ID-2: swap-1 size: 1.02GB used: 0.00GB (0%) fs: swap dev: /dev/dm-1 RAID: No RAID devices: /proc/mdstat, md_mod kernel module present Sensors: None detected - is lm-sensors installed and configured? Info: Processes: 236 Uptime: 3 days Memory: 12271.5/16040.5MB Init: systemd runlevel: 5 Client: Shell (bash) inxi: 2.3.56
Once rippled stopped working at all and htop displayed me this:

There were multiple occurrences of a string like this in logs:
rippled[687]: 2019-Jun-15 22:54:30.584170705 LoadManager:WRN Server stalled for 31820 seconds
I rebooted the machine and rippled started to work normally as before:

The internet speed:

Links:
Official rippled system unit file: https://github.com/ripple/rippled-package-builder/blob/staging/rpm-builder/rippled.service
Tried rippled version 1.2.4 and got the same result.