To evaluate the services Banzai Cloud Backyards offers, we recommend to create a test environment and use our demo application. This way you can start over any time, and try all the options you are interested in without having to worry about changes made to your existing environment, even if it’s not used in production.

Production installation is very similar, but of course you won’t need to deploy the demo application, and you must exactly specify which components you want to use.

H2 heading πŸ”—︎

Before deploying Backyards on your cluster, complete the following tasks.

H3 heading πŸ”—︎

Before deploying Backyards on your cluster, complete the following tasks.

H4 heading πŸ”—︎

skdjfslfj

H5 heading

Avoid using h5 if possible.

Alternating heading levels - h2 πŸ”—︎

H3 πŸ”—︎

H2 πŸ”—︎

H3 πŸ”—︎

H4 πŸ”—︎

H3 πŸ”—︎

Code πŸ”—︎

Code without indent πŸ”—︎

curl https://getbackyards.sh | sh

Long code πŸ”—︎

apiVersion: istio.banzaicloud.io/v1beta1
kind: Istio
metadata:
    name: mesh
    namespace: istio-system
spec:
    gateways:
    ingress:
        serviceType: "NodePort"

Code in note πŸ”—︎

Note: If you are installing Backyards on a local cluster (for example, using MiniKube) and you don’t have a local LoadBalancer setup, use a NodePort type istio-ingressgateway service. To do that, create a file called local_istio_cr.yaml with the following content:

apiVersion: istio.banzaicloud.io/v1beta1
kind: Istio
metadata:
    name: mesh
    namespace: istio-system
spec:
    gateways:
    ingress:
        serviceType: "NodePort"

Then, run the following command.

$ curl https://getbackyards.sh | sh && backyards install -a --run-demo --istio-cr-file=local_istio_cr.yaml

Inline code πŸ”—︎

Some text with inline code and some longer one as well this is a long command --run <namespace> --whatever

You need a Kubernetes cluster to test Backyards with. If you don’t already have a Kubernetes cluster to work with, create one with one of the methods described in Inline link.

Cross-reference (xref) πŸ”—︎

xref to a page: Security and compliance

xref to an anchor in the page: xref to a page: Reconciler mode

xref to an anchor that includes non-ascii characters What’s the story on access and visibility control?

xref in a headless file:

If your application hasn’t received any traffic yet, there will be no metrics in the system so you won’t see any visualization yet. To send some traffic to your services as a test, see Generate test load.

Block elements πŸ”—︎

Note πŸ”—︎

Note: The Backyards CLI supports macOS and Linux (x86_64). It may work on Windows natively, but we don’t test it. More note Note with link

Note with code πŸ”—︎

Note: ;aljf;asjf;jf Some inline code in the note: sudo su -; rm -rf /tmp

curl https://getbackyards.sh | sh

Warning πŸ”—︎

CAUTION:

While this is an option, we do not recommend it as the Azure built-in roles used below provide wider access rights within the scope of the subscription than needed.

Warning with code πŸ”—︎

CAUTION:

While this is an option, we do not recommend it as the Azure built-in roles used below provide wider access rights within the scope of the subscription than needed:

az ad sp create-for-rbac --name "PKEAdminSP" --skip-assignment
az role assignment create --role "User Access Administrator" --assignee "http://PKEAdminSP" --scope /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}
az role assignment create --role "Owner" --assignee "http://PKEAdminSP" --scope /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}

Warning in a procedure πŸ”—︎

  1. Register for an evaluation version of Backyards.

    CAUTION:

    While this is an option, we *do not* recommend it as the **Azure built-in** roles used below provide wider access rights within the scope of the subscription than needed.
    
  2. Install the backyards-cli package for your environment by running the following command:
  3. Register for an evaluation version of Backyards.
  4. Install the backyards-cli package for your environment by running the following command:

Procedure πŸ”—︎

  1. Register for an evaluation version of Backyards.

  2. Install the backyards-cli package for your environment by running the following command:

    curl https://getbackyards.sh | sh
    

    For other options, see the Backyards CLI Installation Guide.

  3. ;asdlkasd;lfk

  4. ;dsfkj;asldfkj;lasjkf

Procedure with substeps πŸ”—︎

  1. Register for an evaluation version of Backyards.

  2. Install the backyards-cli package for your environment by running the following command. Substeps:

    1. Register for an evaluation version of Backyards.
    2. Install the backyards-cli package for your environment by running the following command:
    3. ;asdlkasd;lfk
    4. ;dsfkj;asldfkj;lasjkf
  3. ;asdlkasd;lfk

  4. ;dsfkj;asldfkj;lasjkf

Procedure with bullets πŸ”—︎

  1. Register for an evaluation version of Backyards.

  2. Install the backyards-cli package for your environment by running the following command. Substeps:

  3. ;asdlkasd;lfk

  4. ;dsfkj;asldfkj;lasjkf

Procedure with image πŸ”—︎

See here.

Emphasis πŸ”—︎

After you have completed the prerequisites, you can install Backyards on a single cluster, or you can form a multi-cluster mesh right away.

Bullet points πŸ”—︎

  • Do this
  • Than that
  • Once more

Select the installation method you want to use:

Bullet points with indented text and code πŸ”—︎

  • Do this Indented text for first bullet

  • Than that

    docker run -d --name blog -v /Users/whatever/akarmi/doc:/src -v /Users/whatever/akarmi/doc/public:/output -p 80:80 jojomi/hugo:0.71.0 hugo server --bind 0.0.0.0 --port 80 -F -b http://localhost:80 --appendPort=false
    
  • Once more

Including text from headless πŸ”—︎

Set Kubernetes configuration and context πŸ”—︎

The command-line tool uses your current Kubernetes context, from the file named in the KUBECONFIG environment variable (~/.kube/config by default). Check if this is the cluster you plan to deploy the product by running the following command: kubectl config get-contexts

If there are multiple contexts in the Kubeconfig file, specify the one you want to use with the use-context parameter, for example: kubectl config use-context <context-to-use>

If the cluster is managed by Banzai Cloud Pipeline, complete the following steps. For more detailed instructions, see the Banzai Cloud Pipeline documentation.

  1. Login to your Pipeline instance (for example, by running banzai login --endpoint https://try.pipeline.banzai.cloud/pipeline).
  2. Run banzai cluster shell, and select the cluster to use. A subshell with the correct environment will open automatically.

Indented include πŸ”—︎

  1. Pipeline terminates the nodes in the batch.
  2. Repeat from Step 2.

    Note: To rollback to the previous version of the node pool, repeat the upgrade process with the old YAML file of the node pool. Include only the parameters that you want to change during the update, you don’t have to list every parameter of the node pool in the YAML file.

    Rollback is possible only if the cluster has been created with Banzai Cloud Pipeline version 0.5.0 or later, or if a node pool upgrade has been successfully completed on the cluster at least once. Otherwise, the rollback will delete and recreate every node.

  3. Next step.

Include steps πŸ”—︎

  1. This step is not included.

  2. These steps are included from a headless file. Numbering should continue.
  3. These steps are included from a headless file. Numbering should continue.

Images πŸ”—︎

Image πŸ”—︎

Simple markdown image:

Show selected resources of the mesh

Image with html formatting:

Topology view legend

Inline icon πŸ”—︎

Click Open metrics in Grafana to open the related dashboards

Image in procedure πŸ”—︎

  1. first step

  2. To get rule recommendations based on live traffic, click Automatic recommendation.

    Proxy config > Automatic recommendation

  3. next step

Tables πŸ”—︎

Simple Markdown table πŸ”—︎

Possible values:

value description example
image AMI ID (Note that the ID can vary between regions.) ami-yyyyyyyyy
options JSON object of optional parameters
options.maxBatchSize Number of nodes to update in a batch. Default: 2
options.maxUnavailable Maximum number of nodes that can be unavailable during the update. Default: 0
options.drain JSON object with the parameters for draining the nodes being updated See the detailed example
options.drain.timeout Timeout to wait for the node to drain in seconds. Default: 300
options.drain.failOnError If true, the update fails if a node cannot be drained. Default: true
options.drain.podSelector A Kubernetes label selector. Default: empty string “app=kaleidoscope”

Table in a procedure πŸ”—︎

  1. Step 1
  2. Step 2 Possible values:
    value description example
    image AMI ID (Note that the ID can vary between regions.) ami-yyyyyyyyy
    options JSON object of optional parameters
    options.maxBatchSize Number of nodes to update in a batch. Default: 2
    options.maxUnavailable Maximum number of nodes that can be unavailable during the update. Default: 0
    options.drain JSON object with the parameters for draining the nodes being updated See the detailed example
    options.drain.timeout Timeout to wait for the node to drain in seconds. Default: 300
    options.drain.failOnError If true, the update fails if a node cannot be drained. Default: true
    options.drain.podSelector A Kubernetes label selector. Default: empty string “app=kaleidoscope”
  3. Step 3