Skip to content

Instantly share code, notes, and snippets.

View djschny's full-sized avatar

Ryan Schneider djschny

View GitHub Profile
@djschny
djschny / tes
Created March 25, 2024 12:16
test
test
# Request a New Guide
## We explain what a guide is quickly, 5-20 minutes, etc.
* What's your idea for a guide?
* Is it Tanzu specific or Kubernetes/Cloud Native general? Talk about KubeAcademy as well.
* Is some of the content in an existing course or an existing guide?
* Is there an example of the content somewhere else? (Tanzu documentation, blog posts, internal wiki, etc.)
* Are you interested and able to contribute this guide?
profile: full
shared:
ca_cert_data: "-----BEGIN CERTIFICATE-----/....."
# This is a comment
@djschny
djschny / content-design-workshop.md
Last active January 12, 2023 16:43
Content Design Workshop - Ryan Comments

Kubernetes Platform Design

Presentation/Recording

  • 08:12 - video covers up graphics
  • having the video be larger on title/header/intro slides is beneficial
  • jittering in video

Slide Style

  • title slides to introduce sections are nice so focus is on the narrative
@djschny
djschny / tkg-implemtation-diffs.md
Created October 11, 2022 12:46
Detailed Comparison of TKG Implementations

Overview

Tanzu Kubernetes Grid builds on trusted upstream and community projects and delivers a Kubernetes platform that is engineered and supported by VMware, so that you do not have to build your Kubernetes environment by yourself. In addition to Kubernetes binaries that are tested, signed, and supported by VMware, Tanzu Kubernetes Grid provides the services such as networking, authentication, ingress control, and logging that a production Kubernetes environment requires.

Comparing Tanzu Kubernetes Grid Implementations

Something to be aware of is that there are different implementations of Tanzu Kubernetes Grid. The most common implementations are:

  • Tanzu Kubernetes Grid Service (TKGS)
  • Tanzu Kubernetes Grid multi-cloud (TKGm)

Overview

Observing heap behavior is often the most revealing indication of system behavior and can even give an indication of which specific members of the DS deserve a more thorough review.

It can be very helpful to build a chart showing tenured / old generation heaps used as well as max, overlay, and other statistics such as eviction, critical thresholds, and tenured GC collections. Collectively, these can paint a picture of stability or instability, pointing in a direction for where to focus when investigating a ticket.

Building and understanding these charts can be different depending on the GC algorithm in play. CMS for example has defined spaces such as Eden, Survivor, and OldGeneration, including some defined maximum Eden and Survivor. G1GC and other newer GC algorithms attempt to be more flexible. There is no Eden max or Survivor max defined for these newer algorithms, they grow and shrink related to what the heuristics of GC determine to be the optimal rate based upon recent behavior.

It

@djschny
djschny / ingress-controller.yaml
Created February 3, 2021 17:56
ingress-controller.yaml
# Source: https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v0.43.0/deploy/static/provider/baremetal/deploy.yaml
# Modified to use hostPort on the controller container, be a DaemonSet, and pin to master node
---
apiVersion: v1
kind: Namespace
metadata:
name: ingress-nginx
labels:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/instance: ingress-nginx
#!/usr/bin/env bash
set -v
set -e
mkdir -p /home/ubuntu/workspace /home/ubuntu/dev /home/ubuntu/Downloads /home/ubuntu/Desktop
sudo apt-get update
apt-get install -y software-properties-common wget curl jq vim
kind: Service
apiVersion: v1
metadata:
name: nginx
labels:
app: nginx
spec:
selector:
app: nginx
type: LoadBalancer
kind: Service
apiVersion: v1
metadata:
name: nginx
labels:
app: nginx
spec:
selector:
app: nginx
type: LoadBalancer