Your App Is Alive – Health Checks In Kubernetes – A health check is ...



Your App Is Alive – Health Checks In Kubernetes – A health check is ...

0 0


your-app-is-alive

Slides for "Your App Is Alive" KubeCon 2016 London

On Github michelleN / your-app-is-alive

Your App Is Alive

Health Checks In Kubernetes

Created by Michelle Noorali @michellenoorali

What?

A health check is ...

a way to monitor your app's health

Is your app ...

responsive?

Is your app ...

performant?

Is your app ...

stable?

What does it look like?

In general

Press ESC to enter the slide overview.

Hold down alt and click on any element to zoom in on it using zoom.js. Alt + click anywhere to zoom back out.

In Kubernetes Land...

Introducing Puffy

Presentations look great on touch devices, like mobile phones and tablets. Simply swipe through your slides.

Share Puffy with the world!

  • Write a manfiest (Kubernetes definition in a yaml file)
  • Reference Docker image in Manifest
  • Use Kubectl (cli tool) to manage/inspect cluster
  • Prerequisites
    • Running Kubernetes Cluster on Google Container Engine (GCE)
    • Docker image of app stored on DockerHub
      • DockerHub = image registry = place to store images
      • Other image registries: Quay.io & Google Container Registry (GCR)

Puffy Repo

Dockerfile

Makefile

Pod Manifest File

Demo

Puffy is Alive

Let's make sure Puffy is OK.

Two Probes walk into a coffeeshop...

Wait. What is this probe thing?

Back to the probes...

Define a Liveness Probe in the Pod Manifest

Apply the changes in the Pod Manifest to the cluster

FAIL

Oops

Add /healthz

Bring Puffy Back!

Now for something more interesting...

More complex set up. App with data store that also calls to an external service.

Puffy's Career Change

Breaking news! Puffy has joined a boy band called Many Directions.

Puffy's world.

  • Puffy is a go web app
  • Relies on seatgeek for information on where One Direction (the competition) is performing
  • On startup, Puffy pulls in all of One Direction's latest album songs to perform

Many Directions Repo

Manifests with a Readiness Probe

Demo Many Directions

Summary!

```

Fragments

Hit the next arrow...

... to step through ...

... a fragmented slide.

This slide has fragments which are also stepped through in the notes window.

Fragment Styles

There's different types of fragments, like:

grow

shrink

fade-out

current-visible

highlight-red

highlight-blue

Transition Styles

You can select from different transitions, like: None - Fade - Slide - Convex - Concave - Zoom

Themes

reveal.js comes with a few themes built in: Black (default) - White - League - Sky - Beige - Simple Serif - Blood - Night - Moon - Solarized

Slide Backgrounds

Set data-background="#dddddd" on a slide to change the background color. All CSS color formats are supported.

Image Backgrounds

<section data-background="image.png">

Tiled Backgrounds

<section data-background="image.png" data-background-repeat="repeat" data-background-size="100px">

Video Backgrounds

<section data-background-video="video.mp4,video.webm">

... and GIFs!

Background Transitions

Different background transitions are available via the backgroundTransition option. This one's called "zoom".

Reveal.configure({ backgroundTransition: 'zoom' })

Background Transitions

You can override background transitions per-slide.

<section data-background-transition="zoom">

Pretty Code

function linkify( selector ) {
  if( supports3DTransforms ) {

    var nodes = document.querySelectorAll( selector );

    for( var i = 0, len = nodes.length; i < len; i++ ) {
      var node = nodes[i];

      if( !node.className ) {
        node.className += ' roll';
      }
    }
  }
}
					

Code syntax highlighting courtesy of highlight.js.

Marvelous List

  • No order here
  • Or here
  • Or here
  • Or here

Fantastic Ordered List

One is smaller than... Two is smaller than... Three!

Tabular Tables

Item Value Quantity Apples $1 7 Lemonade $2 18 Bread $3 2

Clever Quotes

These guys come in two forms, inline: “The nice thing about standards is that there are so many to choose from” and block:

“For years there has been a theory that millions of monkeys typing at random on millions of typewriters would reproduce the entire works of Shakespeare. The Internet has proven this theory to be untrue.”

Intergalactic Interconnections

You can link between slides internally, like this.

Speaker View

There's a speaker view. It includes a timer, preview of the upcoming slide as well as your speaker notes.

Press the S key to try it out.

Oh hey, these are some notes. They'll be hidden in your presentation, but you can see them if you open the speaker notes window (hit 's' on your keyboard).

Export to PDF

Presentations can be exported to PDF, here's an example:

Global State

Set data-state="something" on a slide and "something" will be added as a class to the document element when the slide is open. This lets you apply broader style changes, like switching the page background.

State Events

Additionally custom events can be triggered on a per slide basis by binding to the data-state name.

Reveal.addEventListener( 'customevent', function() {
	console.log( '"customevent" has fired' );
} );
					

Take a Moment

Press B or . on your keyboard to pause the presentation. This is helpful when you're on stage and want to take distracting slides off the screen.

Much more

THE END

- Try the online editor - Source code & documentation