Last active
July 29, 2019 06:00
-
-
Save burtonr/de18969e6494d0a68f2bed253e02f382 to your computer and use it in GitHub Desktop.
Commands to use to create an AKS cluster and deploy OpenFaaS to it
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Be sure to log in first! | |
az login | |
# Set the default location to avoid having to pass it on each command | |
az configure --defaults location=southcentralus | |
# Set the default subscription to avoid having to pass it on each command | |
az account set -s "Visual Studio Premium with MSDN" | |
# Create a new resource group (optional) | |
az group create -n OpenFaaS-RG | |
# Create the AKS cluster | |
az aks create -n openfaas-aks1 -g OpenFaaS-RG -k 1.12.8 -c 1 --generate-ssh-keys | |
# Get the kubectl config | |
az aks get-credentials --resource-group OpenFaaS-RG --name openfaas-aks1 | |
# Set kubctl to the azure config | |
export KUBECONFIG=<output from above command> | |
# Verify kubectl | |
kubectl get nodes | |
# Helm setup | |
helm init | |
helm repo add openfaas https://openfaas.github.io/faas-netes/ | |
helm repo update | |
# OpenFaaS | |
kubectl apply -f https://raw.githubusercontent.com/openfaas/faas-netes/master/namespaces.yml | |
# generate a password | |
PASSWORD=$(head -c 12 /dev/urandom | shasum| cut -d' ' -f1) | |
# create the secrets on the cluster | |
kubectl -n openfaas create secret generic basic-auth --from-literal=basic-auth-user=admin --from-literal=basic-auth-password="$PASSWORD" | |
# install the openfaas deployment | |
helm upgrade openfaas --install openfaas/openfaas --namespace openfaas --set basic_auth=true --set functionNamespace=openfaas-fn --set operator.create=true --set serviceType=LoadBalancer | |
# verify the deployment | |
kubectl --namespace=openfaas get deployments -l "release=openfaas, app=openfaas" | |
# get the OpenFaaS gateway's external IP address | |
kubectl get service -l component=gateway --namespace openfaas | |
# set the OpenFaaS gateway address | |
export OPENFAAS_URL=http://<gateway-external ip address>:8080 | |
# login to the openfaas cli | |
echo $PASSWORD | faas login -u admin -s | |
# when you're done, deleting the cluster is a single command | |
az aks delete -n openfaas-aks1 -g OpenFaaS-RG |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment