Table of Contents

Getting started with local installation

DAPR works with the neos run --dapr command but you can manually start backend servers with DAPR CLI.

Prerequisites

Windows Subsystem for Linux (WSL)

For communicating between clusters in local, Neos requires that WSL is installed on the machine. Follow this article to learn how to install it.

By default, an Ubuntu distribution is installed. This version should be sufficient but, to avoid problems, we recommend installing an Ubuntu-22.04 distribution instead. A Debian distribution should also be sufficient if you already have one installed.

To check the installed distributions, use the following command :

wsl -l -v

Here is an example of the result of the command. Ubuntu is installed and running. The star means that it is the default distribution.

  NAME                   STATE           VERSION
* Ubuntu-22.04           Running         2
  docker-desktop-data    Stopped         2
  docker-desktop         Stopped         2

If you need or want to install Ubuntu-22.04, use the following command :

wsl --install -d Ubuntu-22.04
Warning

Memorize the login and password entered during the installation, they can be useful in case of problem.

To set Ubuntu as the default distribution, use the following command :

wsl --set-default Ubuntu-22.04
Warning

Neos requires the distribution to be the default one.

Note

If you are having trouble installing WSL, read this article.

How to debug communication between clusters

Debugging C#

You can the C# code creating or responding to communication events by simply attaching Visual Studio to the dotnet.exe process corresponding to one of your clusters after executing the neos run command.

Following communication events

Neos uses Jaeger to track messages sent between clusters. It can be accessed using the Inter-cluster communication menu entry of the Neos manager that opens when running the executing the neos run command.

Select the cluster you wish to view in the Service drop down menu and click Find traces. This will display all traces associated with that service.

To view the communication between this cluster and other clusters, click on one of the links representing a trace. This will display the details of the trace, including the operations performed by the cluster and the communications with other clusters.

Using Jaeger's search and filtering features, it is possible to filter the traces to show only communications between the selected cluster and other clusters.