Skip to content

Commit

Permalink
Update the acLabs Homepage (#52)
Browse files Browse the repository at this point in the history
* update the homepage

* hide the credits page

* grammar fixes

* add arista copyright

* set button color to arista dark blue

* tech library section update

* add support for footnotes

* add footnote for clab bsd-3 license

* footnotes for pexels and clab

* update clab footnote

* update techlib access note

* fix pexels footnote

* Update docs/index.md

Co-authored-by: Kyle Bush <[email protected]>

* add buttons to top of quickstart guide - credit @kpbush30

* Update docs/quickstart.md

Co-authored-by: Kyle Bush <[email protected]>

* grammar fix

* change content tab in quickstart guide

* update interaction section of qs guide

* Update docs/quickstart.md

Co-authored-by: Mark Thiel <[email protected]>

* change wording in techlib labs section

---------

Co-authored-by: Kyle Bush <[email protected]>
Co-authored-by: Mark Thiel <[email protected]>
  • Loading branch information
3 people authored Oct 9, 2024
1 parent c7740b5 commit 63ce569
Show file tree
Hide file tree
Showing 5 changed files with 104 additions and 43 deletions.
4 changes: 2 additions & 2 deletions docs/assets/stylesheets/extra.css
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@
}
/* Explicitly set the color for filled buttons */
a.md-button.md-button--primary {
background-color: #4473a9 !important;
background-color: #16325B !important;
}
[data-md-color-scheme="slate"] {
/* Arista True Black as dark mode background */
Expand All @@ -56,4 +56,4 @@
--md-primary-fg-color--dark: #16325B;
--md-primary-fg-color--light: #16325B;
--md-primary-fg-color: #16325B;
}
}
62 changes: 51 additions & 11 deletions docs/index.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,60 @@
# Arista Community Labs

!!! Abstract "Great labs for the great community!"
Welcome to Arista Community Labs!

The goal of acLabs is to provide a central place to share labs build by Arista community and for Arista comminity.
acLabs is also used as a lab "backend" for an amazing [TecLibrary](https://tech-library.arista.com/) portal hosting a great quality documentation avalailable to all registered Arista customers.
This site serves as a repository of labs built by the Arista community, for the Arista community.

The core values of acLabs is simplicity and user experience. Every lab must be easy to build, maintain and use. We aim to present complex and deeply technical environments in a simple way and rely on templating, [Github Actions](https://docs.github.com/en/actions) and [Github Codespaces](https://github.com/features/codespaces)(1) to deliver that.
{ .annotate }
??? info "🚧 Pardon our dust 🏗️"
The Arista Community Labs repository is under active development with new labs and features coming soon!

1. acLabs is the successor of the one-click-se-demos repository that was the first repository to use Github Codespaces for network labs.
Labs that currently reside in the following locations are being migrated to Arista Community Labs:

!!! Warning "Under Construction!"
- [One-Click Demos](https://arista-netdevops-community.github.io/one-click-se-demos/)
- [AVD with cEOS-Lab](https://arista-netdevops-community.github.io/avd-cEOS-Lab/)

This repository is still under construction. We are actively working on the new content and moving existing labs from:
## What is a Community Lab?

- [One-Click SE Demos](https://arista-netdevops-community.github.io/one-click-se-demos/)
- [avd-cEOS-Lab](https://arista-netdevops-community.github.io/avd-cEOS-Lab/)
Whether refreshing one's skills, performing testing, or learning new technologies, protocols, features, and tools, building and maintaining the lab environments necessary to support these endeavors can be a daunting task fraught with software dependencies and caveats.

Check this repository once in a few weeks for the new content.
Arista Community Labs reduce the burden of this task, with each lab environment built with three primary objectives:

<div class="grid cards" markdown>

- :material-clock-fast:{ .lg .middle } __Ease of Consumption__

---

Labs can be instantiated at any time with the click of a button.

- :fontawesome-solid-person-running:{ .lg .middle } __Portability__

---

The only local software requirement is a web browser.

- :material-puzzle:{ .lg .middle } __Modularity__

---

Nodes, image versions, and tools are easily modified over time.

</div>

The lab environments are pre-packaged with tools such as Ansible, Python, and the Arista [AVD](https://galaxy.ansible.com/ui/repo/published/arista/avd/), [CVP](https://galaxy.ansible.com/ui/repo/published/arista/cvp/), and [EOS](https://galaxy.ansible.com/ui/repo/published/arista/eos/) Ansible Galaxy collections.

Labs are created through the use of templates, [Github Actions](https://docs.github.com/en/actions), [Github Codespaces](https://github.com/features/codespaces), and [ContainerLab](https://containerlab.dev)[^2].'

Once started, labs will automatically download(1) the necessary cEOS-lab(2) and other container images necessary for the toplogy.
{ .annotate }

1. Automatic download of cEOS-lab is accomplished via the [Arista EOS Downloader](https://pypi.org/project/eos-downloader/) utility.
2. Downloading cEOS-lab requires an [Arista user token](https://www.arista.com/en/users/profile). See the [Quickstart Guide](./quickstart.md) for more information.

## How do I get started?

The [Quickstart Guide](./quickstart.md) is available to help folks who are trying out the labs for the first time or just need a refresher.

[Get Started :material-greater-than:](./quickstart.md){ .md-button .md-button--primary }

[^1]: This site uses the [Pexels](https://www.pexels.com/) royalty-free image library. Thank you to all Pexels authors and contributors!
[^2]: Containerlab is distributed under the [BSD-3 license](https://github.com/srl-labs/containerlab/blob/main/LICENSE).
55 changes: 33 additions & 22 deletions docs/quickstart.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,15 @@

This guide is intended for individuals looking to familiarize themselves with the steps necessary to get started with Arista Community Labs, powered by [GitHub Codespaces](https://github.com/features/codespaces/).

<div class="grid cards" markdown>

- :octicons-tasklist-16: [Pre-Requisites](#pre-requisites)
- :octicons-rocket-16: [Start the Lab](#starting-the-lab)
- :material-cursor-default-click: [Interact with the Lab](#interacting-with-the-lab)
- :fontawesome-regular-circle-stop: [Stop the Lab](#stopping-the-lab)

</div>

## Pre-Requisites

Before launching an Arista Community Lab, the following pre-requisites must be met:
Expand Down Expand Up @@ -177,9 +186,15 @@ make inspect

## Interacting with the Lab

### SSH
Once the lab is up and running, we can interact with the topology nodes.

Both SSH and API access to the nodes are available via the Codespace. Lab environments are pre-packaged with tools like Python and the Arista [AVD](https://galaxy.ansible.com/ui/repo/published/arista/avd/), [CVP](https://galaxy.ansible.com/ui/repo/published/arista/cvp/), and [EOS](https://galaxy.ansible.com/ui/repo/published/arista/eos/) Ansible Galaxy collections.

Once the lab is up and running, we can use the terminal in our Codespace to SSH into the nodes.
Labs that leverage tools such as AVD for configuration, documentation, and testing will provide the instructions in their lab guide.

Accessing the environment via SSH is detailed below:

### SSH

??? tip "More real estate for those SSH sessions 🏠"
Increase the size of the terminal by selecting the `Maximize Panel Size` button to the right of the terminal:
Expand All @@ -189,6 +204,21 @@ Once the lab is up and running, we can use the terminal in our Codespace to SSH
<figcaption>Maximize the Terminal (Click to Zoom)</figcaption>
</figure>

A list of `Lab Hosts` that are accessible via `SSH` from within the codespace can be viewed at any time from the terminal by entering the following command:

```bash
make inspect
```

To access a node, use the `ssh` command followed by `admin@hostname` as shown in the example below

```bash
ssh admin@A-SPINE1
```

??? question "What's the password? :lock:"
The credentials used to access nodes within an Arista Community Lab environment will always be listed in the lab's documentation.

??? tip "Use tabs 📑"
Create a new tab for an SSH session by selecting `New Terminal` to the right of the terminal.

Expand All @@ -208,31 +238,12 @@ Once the lab is up and running, we can use the terminal in our Codespace to SSH
<figcaption>Rename the Terminal Tab (Click to Zoom)</figcaption>
</figure>

=== "Party Time 🎉"
=== "Renamed Tabs 🎉"
<figure markdown>
![Post Deployment Script](assets/img/aclabs-quickstart-renamed-tabs.png "Post Deploy"){ width=800px }
<figcaption>Rename the Terminal Tab (Click to Zoom)</figcaption>
</figure>

A list of `Lab Hosts` that are accessible via `SSH` from within the codespace can be viewed at any time from the terminal by entering the following command:

```bash
make inspect
```

To access a node, use the `ssh` command followed by `admin@hostname` as shown in the example below

```bash
ssh admin@A-SPINE1
```

??? question "What's the password? :lock:"
The credentials used to access nodes within an Arista Community Lab environment will always be listed in the lab's documentation.

### API

All nodes are accessible via API from within the codespace. The codespace comes pre-packaged with tools like Python and the Arista [AVD](https://galaxy.ansible.com/ui/repo/published/arista/avd/), [CVP](https://galaxy.ansible.com/ui/repo/published/arista/cvp/), and [EOS](https://galaxy.ansible.com/ui/repo/published/arista/eos/) Ansible Galaxy collections.

## Stopping the Lab

When you're finished with the lab, simply close the codespace by exiting the browser window. By default, a GitHub Codespace is stopped after 45 minutes of idleness and deleted after 30 days of inactivity.
Expand Down
22 changes: 15 additions & 7 deletions docs/tech-library-labs.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,22 @@
# Tech Library Labs

Tech Library is an amazing technical documentation resource available to all Arista customers from [arista.com](https://www.arista.com/).
You can access the labs supporting Tech Library documentation from the Tech Library docs itself or directly from this page.
[Arista's Tech Library](https://arista.com/en/tech-library) contains guides developed to assist customers and partners with designing, deploying, and operating their Arista networks.

## EVPN
Arista Community Labs enables readers to quickly instantiate a fully configured lab environment that matches a Deployment Guide topology.

[Start :octicons-play-16: Domain-A Lab in Codespace :octicons-mark-github-24:](https://codespaces.new/aristanetworks/aclabs/tree/main?quickstart=1&devcontainer_path=.devcontainer%2Ftechlib-vxlan-domain-a%2Fdevcontainer.json){ .md-button .md-button--primary target=_blank}
??? question "How can I access the Tech Library?🤔"
The [Tech Library](https://arista.com/en/tech-library) is accessible to all Arista customers and partners. For individuals who are not currently customers, temporary access can be provided by contacting your local Arista account team.

[Start :octicons-play-16: Domain-B Lab in Codespace :octicons-mark-github-24:](https://codespaces.new/aristanetworks/aclabs/tree/main?quickstart=1&devcontainer_path=.devcontainer%2Ftechlib-vxlan-domain-b%2Fdevcontainer.json){ .md-button .md-button--primary target=_blank}
A verified email address in a valid corporate email domain is required for temporary access (no Gmail, Yahoo, etc.)

[Start :octicons-play-16: Domain-C Lab in Codespace :octicons-mark-github-24:](https://codespaces.new/aristanetworks/aclabs/tree/main?quickstart=1&devcontainer_path=.devcontainer%2Ftechlib-vxlan-domain-c%2Fdevcontainer.json){ .md-button .md-button--primary target=_blank}
## EVPN/VXLAN Deployment Guide

[Start :octicons-play-16: Domain-D Lab in Codespace :octicons-mark-github-24:](https://codespaces.new/aristanetworks/aclabs/tree/main?quickstart=1&devcontainer_path=.devcontainer%2Ftechlib-vxlan-domain-d%2Fdevcontainer.json){ .md-button .md-button--primary target=_blank}
Labs that align with the EVPN Domains found in Arista's [EVPN/VXLAN Deployment Guide](https://tech-library.arista.com/data_center/evpnvxlan/deployment_guide/) can be found below:

[Start :octicons-play-16: Domain-A Lab :octicons-mark-github-24:](https://codespaces.new/aristanetworks/aclabs/tree/main?quickstart=1&devcontainer_path=.devcontainer%2Ftechlib-vxlan-domain-a%2Fdevcontainer.json){ .md-button .md-button--primary target=_blank}

[Start :octicons-play-16: Domain-B Lab :octicons-mark-github-24:](https://codespaces.new/aristanetworks/aclabs/tree/main?quickstart=1&devcontainer_path=.devcontainer%2Ftechlib-vxlan-domain-b%2Fdevcontainer.json){ .md-button .md-button--primary target=_blank}

[Start :octicons-play-16: Domain-C Lab :octicons-mark-github-24:](https://codespaces.new/aristanetworks/aclabs/tree/main?quickstart=1&devcontainer_path=.devcontainer%2Ftechlib-vxlan-domain-c%2Fdevcontainer.json){ .md-button .md-button--primary target=_blank}

[Start :octicons-play-16: Domain-D Lab :octicons-mark-github-24:](https://codespaces.new/aristanetworks/aclabs/tree/main?quickstart=1&devcontainer_path=.devcontainer%2Ftechlib-vxlan-domain-d%2Fdevcontainer.json){ .md-button .md-button--primary target=_blank}
4 changes: 3 additions & 1 deletion mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,7 @@ theme:
markdown_extensions:
- attr_list
- admonition
- footnotes
- pymdownx.details
- pymdownx.superfences
- pymdownx.critic
Expand All @@ -87,6 +88,7 @@ markdown_extensions:
- md_in_html #Enable the use of captioned images via techniques shown here: https://squidfunk.github.io/mkdocs-material/reference/images/

copyright: >
Copyright &copy; 2024 Arista Networks
&nbsp;&#x1F36A;&nbsp;<a href="#__consent">Change cookie settings</a>
extra:
Expand Down Expand Up @@ -131,5 +133,5 @@ nav:
- About acLabs: index.md
- Quickstart: quickstart.md
# - Codespaces Quickstart: codespaces-quickstart.md
- Credits: credits.md
# - Credits: credits.md
- Tech Library Labs: tech-library-labs.md

0 comments on commit 63ce569

Please sign in to comment.