Home

Awesome

Algorand Node for Windows

This repository contains the supporting software for running an Algorand Node under Windows systems, including a native Windows service, companion tools and proper MSI based installer and uninstaller.

:warning: 32-bit Windows is not supported.

How to Install

To install Algorand Node for Windows, please download and execute the package you prefer from the Releases section on this repository. They follow the stable branch and version scheme of the official node.

Preliminary Information

Please read the following usage guidelines and advices.

Known bugs :warning:

Installation

:lock: Administrative rights are required to complete the installation.

To launch the installation process just double click the MSI file. Read and accept the license agreement and choose your target installation directory. We recommend to use the default installation place.

The installer will display a dialog to configure your node with the following options:

Once you are sure, press Continue and wait the installer to finish.

The installer will create:

At this stage you should be able to click on "Node Status Watch" shortcut in your Start Menu to verify that you are synchronizing. If you unchecked "Start on installation" you will need to start the service manually.

Manual Configuration

Please click the "Configuration" shortcut in your Start Menu, under the "Algorand Node" group, to start the proper config.json file. To make the changes operative, please restart the Windows service

Usage

:memo: In the following examples, service_name is algodsvc_ followed by the network the node is connected to. According to this scheme, your service will be named algodsvc_testnet, algodsvc_betanet or algodsvc_mainnet.

Start the Algorand Service by using the "Services" management console. You can launch the "Run..." panel by pressing Windows + R and executing services.msc. Alternatively, you can use the sc start <service_name> command in a shell with administrative privileges.

The status of the service can be inspected with the Services management console, or by executing sc query <service_name> command in a shell with administrative privileges.

In the same way, stopping the node can be done with the Services management console, or by executing sc stop <service_name> command in a shell with administrative privileges.

:warning: Forcefully terminating the controlled ALGOD.EXE executable, either by user action or by fatal system error, will trigger the stopping of the Windows service. This will get reported to the Windows Event Log as a 3002 event.

Monitoring the node

The node can be monitored using the "Node Status Watch" shortcut. Access it by going to your Start Menu, "Algorand ..." group, Node Watch shortcut. This is equivalent of running the goal node status command.

Using the Windows Event Log

Open the Event Log by pressing Windows + R and executing eventvwr. The service will write entries with origin named Algorand Windows Service. Current emitted events are on the following list:

Event IDCause
3000Service started.
3001Algod.exe executable finished normally.
3002Algod.exe executable terminated abnormally.
3003Configuration error.
3004Algod.exe child process could not be spawned.
3005Service stopped.
3006Invalid number of arguments for service start.
3007Invalid network parameter.
3008Invalid, nonexistent or inaccesible node data directory.
3009Pre-flight configuration information.

Data directory setting for Release before 2.8.0

If you install any release < 2.8.0, all commands requiring data directory specification should be supplied with:

  1. %PROGRAMDATA%\Algorand\data\<network>
    

    Replace <network> with the node you are operating on. For example, on the Command Line Tools you could type:

    goal account changeonlinestatus -a o=%address% -d %PROGRAMDATA%\Algorand\data\testnet
    

or alternatively, 2. Set ALGORAND_DATA environment variable as follows

%PROGRAMDATA%\Algorand\data\<network>

Building How-TO

The following information applies to power users and developer that are interested in doing a manual build of the Algorand Service and installer.

Prerequisites

To build the algorand node, service and installer you need to install the following software distributions:

The two projects contained herein are:

Building the go-algorand project

Building the Windows Service

Switch to the algodsvc subdirectory and execute

make

to generate the algodsvc.exe binary file.

Building the Windows MSI Installer

License

License: AGPL v3