Commit 0b094d75 authored by David José Araújo Ferreira's avatar David José Araújo Ferreira
Browse files

README instructions and explanation

parent f641cab5
Loading
Loading
Loading
Loading

ansible/README.md

0 → 100644
+35 −0
Original line number Diff line number Diff line
<!--
 Copyright 2024 David Araújo

 Licensed under the Apache License, Version 2.0 (the "License");
 you may not use this file except in compliance with the License.
 You may obtain a copy of the License at

     https://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->

# TFS Cluster Auto-setup

The Ansible playbook and inventory in this directory are set up to configure Ubuntu 22.04 hosts, preparing them for a future TeraFlowSDN deployment.

## Host Environment

As a sandbox example, we create a network of three hosts using Vagrant and provision them with password-less SSH public keys.

In a production environment, various tools or platforms can be used to run these instances, such as a server with Proxmox or a cloud provider. Provisioning can be done manually or with tools like Terraform.

## Inventory

In the inventory, we list the hosts that will be part of the MicroK8s cluster and define their roles.

As of this writing, only three tags are required, with one being optional.

- **microk8s_master** - *boolean* - *mandatory* - Identifies the node that will serve as the master of the MicroK8s cluster.
- **tfs_branch** - *string* - *optional* - Specifies the branch to checkout when cloning the repository (defaults to `master`). This tag must be defined on the same host as the *microk8s_master* tag.
- **containerlab_host** - *boolean* - *mandatory* - Identifies the node where ContainerLab will be deployed. This tag enables Ansible to install ContainerLab on the correct host and set static routes on other hosts to reach nodes in the ContainerLab topology.
 No newline at end of file