Skip to content
This repository has been archived by the owner on Jan 25, 2024. It is now read-only.

demos for meetup about Azure Kubernetes Service

Notifications You must be signed in to change notification settings

bovrhovn/meetup-demo-aks-one-on-one

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Meetup demo: Azure Kubernetes Service 1 on 1

Demos for meetup about Azure Kubernetes Service and how to operate the heavy machinery.

Kubernetes structure

Prerequisites

  1. An active Azure subscription - MSDN or trial or Azure Pass is fine - you can also do all of the work in Azure Shell (all tools installed) and by using Github Codespaces
  2. Azure CLI installed to work with Azure
  3. GitHub account (sign-in or join here) - how to authenticate with GitHub available here
  4. [RECOMMENDATION] PowerShell installed - we do recommend an editor like Visual Studio Code to be able to write scripts, YAML pipelines and connect to repos to submit changes.
  5. [OPTIONAL] GitHub CLI installed to work with GitHub - how to install
  6. [OPTIONAL] Github GUI App for managing changes and work on forked repo
  7. [OPTIONAL] Windows Terminal

If you will be working on your local machines, you will need to have:

  1. Powershell installed
  2. git installed - instructions step by step here
  3. .NET installed to run the application if you want to run it
  4. an editor (besides notepad) to see and work with code, yaml, scripts and more (for example Visual Studio Code)

Scripts

Scripts are available in scripts folder. The scripts are written in PowerShell.

  1. Add-DirToSystemEnv.ps1 - adds a directory to the system environment variable PATH
  2. Install-AZCLI.ps1 - installs Azure CLI
  3. Install-Bicep.ps1 - installs Bicep language

Demo code structure

The demo code is structured in the following way:

code structure

  1. SimpleUrlList.Web - the web application
    • You will need to set settings in appsettings.json to work with SQL Server or Azure SQL
    • You will need to set settings in appsettings.json to work with API link ( check Links.cshtml)
  2. SimpleUrlList.SQL - project to work with SQL Server
  3. SimpleUrlList.Models - project with models, which are shared between web and API
  4. SimpleUrlList.Interfaces - project with contracts and implementation with SQL
  5. SimpleUrlList.Api - API project to get link groups / links and enable you to redirect apps

Docker files are available to build and run the application in containers. You can also leverage helper script Compile-Containers.ps1 to build containers using Azure Container Registry task builders.

YAML files

All the files we used on the session are available in YAML folder. Step by step execution is in file 00-notes.

If you want to test REST api's, there is Postman collection available. How to use it, you can read here.

Additional information and links

  1. Kubernetes Api Client Libraries and 3rd party community-maintained client libraries
  2. Kubernetes Api Overview and controlling access to cluster
  3. Kubeconfig view
  4. Setup kubectl
  5. Power tools for kubectl
  6. Portainer
  7. Azure Kubernetes Service
  8. AKS training

CREDITS

In this demo, we used the following 3rd party libraries and solutions:

  1. Spectre Console
  2. C# managed library for Kubernetes

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.

When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.