go-eve is trying to solve every Network Engineer's problem when they start working on a network lab; it is time-consuming. Unfortunately, it takes a long time to learn, set up, build and maintain their lab environment.
Go-eve is a tool for the EVE-NG network simulator platform.
The goal is that every time we run our tool, the lab's state will be as intended. If a lab is not working as expected, we can destroy the lab, rebuild it, and the lab will be as expected.
This tool will :
- Build: Build your compute instance ( Initial will support Google Cloud)
- Setup: Setup the cloud instance with all the software and setting needed for your initial EVE-NG lab.
- Destroy: Will destroy your entire lab.
- Golang install
- Set up the gcloud CLI to run on your computer gcl CLI install guide
- Create a Project
- Enable the Compute Engine and Cloud Build APIs.
- Create a local key file containing your new service account credentials (use the same instructions link above)
- Set the GOOGLE_APPLICATION_CREDENTIALS environment variable to the path of your local key file.
- Initiate gcloud SDK
gcloud init
guide
go get github.com/amb1s1/go-eve
- Open the
config.yaml
file and make all the necessary changes.
go build main.go
On your first run, you will need to create a custom eve-ng image.
./main --create_custom_eve_ng_image=true --instance_name=eve-go1
This will:
- Build a custom image.
- Install eve-ng.
- Setup eve-ng.
- Create an Ingress && Egress firewall to allow telnet to the eve-ng node from outside gcloud.
In the end, you should be able to HTTP into the eve-ng server and create labs.
- Upload and setup by vendor and os(You still need to provide the os).
- Backup your lab config.