Skip to content

Commit 3c19fb3

Browse files
committed
Updated install doc.
1 parent 336473b commit 3c19fb3

File tree

1 file changed

+29
-74
lines changed

1 file changed

+29
-74
lines changed

docs/install.md

Lines changed: 29 additions & 74 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
# Installing JSON-SCADA
22

3-
## Supported Hardware/OS Platforms
4-
5-
* Most modern Linux x86-64 bits. Recommend Centos/Redhat 8.2, Oracle Linux 8 or equivalent.
3+
## Compatible Hardware/OS Platforms
64

75
* Windows 10 or Server x86-64 bits (installer available).
86

9-
* Linux ARM 32 bits (tested at least for protocol drivers on Raspberry Pi 3/Raspbian OS).
7+
* Most modern Linux x86-64 bits. Recommend Centos/Redhat 8.2, Oracle Linux 8 or equivalent.
8+
9+
* Linux ARM 64 bits.
1010

11-
* Mac OSX (x64 Intel or M1 under Rosetta).
11+
* Linux ARM 32 bits (only protocol drivers). MongoDB does not support any 32 bit OS.
1212

13-
It can also possibly work on Linux ARM-64.
13+
* Mac OSX (x64 Intel or M1).
1414

1515
A full system can run on a single commodity x86 computer but for high performance and high availability on big systems (> 10.000 tags) it is strongly recommended the following hardware
1616

@@ -37,8 +37,8 @@ The Windows Installer has everything needed to run the system (MongoDB, PostgreS
3737
* Windows 10 or Server 2016/2019 (x86-64 bits), 8GB+ RAM.
3838
* Admin privileges.
3939
* Windows PowerShell.
40-
* DotNet Core 5.0.3 x64 Runtime.
41-
* Open SSL binaries for 64-bit Windows: https://slproweb.com/products/Win32OpenSSL.html.
40+
* DotNet Core 5.0.x x64 Runtime.
41+
* Open SSL 1.1.1m binaries for 64-bit Windows: https://slproweb.com/products/Win32OpenSSL.html.
4242

4343
### QUICKSTART
4444

@@ -69,12 +69,12 @@ To install JSON-SCADA manually, it is required to install all the requirements f
6969

7070
### 1. MongoDB Server
7171

72-
Version 4.2.x or 4.4.x - Lower versions are not supported.
72+
Versions 4.2.x, 4.4.x or 5.0.x - Lower versions are not supported.
7373

7474
* https://www.mongodb.com/try/download/community
7575
* https://docs.mongodb.com/manual/installation/
7676

77-
The _MongoDB Atlas_ cloud service is also supported (4.2 or 4.4 versions).
77+
The _MongoDB Atlas_ cloud service is also compatible.
7878

7979
The _Replica Set_ feature must be enabled, even when just one server is used because this is necessary for Change Streams to work.
8080

@@ -88,7 +88,7 @@ For not trusted or open to Internet networks it is important to use TLS for Mong
8888

8989
### 2. PostgreSQL / TimescaleDB
9090

91-
PostgreSQL version 12. TimescaleDB version 1.7. Previous versions can work but are not recommended. Newer versions can work but were not tested.
91+
PostgreSQL version 12, 13 or 14. TimescaleDB version 1.7 to 2.2.1 or newer. Previous versions can work but are not recommended. Newer versions can work but were not tested.
9292

9393
* https://www.timescale.com/products
9494
* https://docs.timescale.com/latest/getting-started/installation
@@ -105,7 +105,7 @@ Replication to a Standby server is recommended for high availability.
105105

106106
### 3. Grafana
107107

108-
Grafana version 7.x.x. Previous versions can work but are not recommended.
108+
Grafana version 8.x.x. Previous versions can work but are not recommended.
109109

110110
* https://grafana.com/grafana/download
111111
* https://grafana.com/docs/grafana/latest/installation/
@@ -124,11 +124,12 @@ If certificates are configured for PostgreSQL connections to the server, it must
124124

125125
### 6. DotNet Core
126126

127-
* DotNet Core version 3.x or 5.x. Previous versions are not tested or supported.
127+
* DotNet Core version 5.0.x. Previous versions are not tested or supported.
128128
* https://dotnet.microsoft.com/download
129129

130130
### 7. Other recommended software tools
131131

132+
* Open SSL Light 1.1.1m (for Windows) - https://slproweb.com/download/Win64OpenSSL_Light-1_1_1m.msi.
132133
* Nginx or some other web server - https://nginx.org/.
133134
* Inkscape SAGE or SCADAvis.io SVG Editor for synoptic display creation - https://sourceforge.net/projects/oshmiopensubstationhmi/ or https://www.microsoft.com/en-us/p/scadavisio-synoptic-editor/9p9905hmkz7x . Available only for Windows.
134135
* MongoDB Compass - https://www.mongodb.com/products/compass
@@ -147,73 +148,27 @@ Or do a git clone
147148

148149
git clone https://github.com/riclolsen/json-scada --config core.autocrlf=input
149150

150-
Build the code (use inverted slashes, .exe extension and copy instead of cp on Windows, choose also the adequate Dotnet target platform (e.g. win-x64), on Mac use --runtime osx-x64)
151-
152-
cd json-scada
153-
mkdir bin
154-
155-
cd src/lib60870.netcore
156-
dotnet publish --runtime linux-x64 -p:PublishReadyToRun=true -c Release -o ../../bin/
151+
Build the code using the adequate script for the host platform:
157152

158-
cd ../OPC-UA-Client
159-
dotnet publish --runtime linux-x64 -p:PublishReadyToRun=true -c Release -o ../../bin/
160-
161-
cd ../dnp3/Dnp3Client
162-
dotnet publish --runtime linux-x64 -p:PublishReadyToRun=true -c Release -o ../../../bin/
163-
164-
export GOBIN=~/json-scada/bin
165-
go env -w GO111MODULE=auto
166-
167-
cd ../../calculations
168-
go get ./...
169-
go build
170-
cp calculations ../../bin/
171-
172-
cd ../i104m
173-
go get ./...
174-
go build
175-
cp i104m ../../bin/
176-
177-
cd ../cs_data_processor
178-
npm install
179-
cd ../cs_custom_processor
180-
npm install
181-
cd ../grafana_alert2event
182-
npm install
183-
cd ../demo_simul
184-
npm install
185-
cd ../server_realtime
186-
npm install
187-
cd ../server_realtime_auth
188-
npm install
189-
cd ../updateUser
190-
npm install
191-
cd ../oshmi2json
192-
npm install
193-
cd ../oshmi_sync
194-
npm install
195-
cd ../htdocs-admin
196-
npm install
197-
npm run build
198-
cd ../shell_api
199-
npm install
200-
cd ../alarm_beep
201-
npm install
202-
cd ../telegraf-listener
203-
npm install
204-
cd ../mqtt-sparkplug
205-
npm install
206-
cd ../OPC-UA-Server
207-
npm install
208-
cd ../carbone-reports
209-
npm install
210-
cd ../..
153+
* https://github.com/riclolsen/json-scada/blob/master/platform-linux/build.sh
211154

155+
* https://github.com/riclolsen/json-scada/blob/master/platform-windows/build.bat
212156

213157
Configure the conf/json-scada.json file to define the node name and to point to the MongoDB server. Processes will look for the config file on the ../conf/ folder.
214158

215159
* [Config File Documentation](../conf/README.md)
216160

161+
Initiate/seed the MongoDB database.
162+
163+
* https://github.com/riclolsen/json-scada/blob/master/mongo_seed/init.sh
164+
165+
Initiate the Postgresql database.
166+
167+
cd json-scada/sql
168+
psql -h 127.0.0.1 -U postgres -w -f create_tables.sql
169+
170+
* https://github.com/riclolsen/json-scada/blob/master/sql/create_tables.sql
171+
217172
Processes can be distributed on distinct servers, each server must have a different node name.
218173

219174
Multiple JSON-SCADA systems can run on the same server, for this each one must have a distinct MongoDB and PostgreSQL database and a separate folder structure. Also a distinct listen HTTP ports must be configured.
@@ -387,7 +342,7 @@ Use the manager tool to start, stop and monitor the system
387342
tail -f cs_data_processor
388343
help
389344

390-
### NSSM Configuration (Windows)
345+
### NSSM Configuration on Windows (not necessary if used the Windows installer)
391346

392347
Install the NSSM tool. It can be installed in c:\json-scada\bin\ .
393348

0 commit comments

Comments
 (0)