add agenda and student lab-5

This commit is contained in:
Tyler Bird 2019-03-25 15:58:38 -06:00
parent ba896ceffc
commit 2252a8413c
3 changed files with 67 additions and 12 deletions

9
instructor/agenda.md Normal file
View File

@ -0,0 +1,9 @@
# Agenda
Here's how the class will run:
1. Get the emails from students and give them access to project.
2. Overview lecture on BOSH.
3. Have students do lab-0 to confirm access, shell works and clones repo.
4. Have lab-1 lecture.
5. Do lab-1 with students.

View File

@ -39,7 +39,6 @@ to do this, and you'll be able to insert the following to the file:
export MY_CIDR=10.42.1.0/24
export MY_GW=10.42.1.1
export MY_INTERNAL_IP=10.42.1.10
export MY_EXTERNAL_IP=35.196.19.152
export MY_SUBNET=student-1
export MY_ZONE=us-east1-c
@ -77,7 +76,6 @@ bosh create-env bosh-deployment/bosh.yml \
-o bosh-deployment/gcp/cpi.yml \
-o bosh-deployment/uaa.yml \
-o bosh-deployment/credhub.yml \
-o bosh-deployment/external-ip-not-recommended.yml \
-v director_name=bosh-director \
-v internal_cidr=$MY_CIDR \
-v internal_gw=$MY_GW \
@ -87,8 +85,7 @@ bosh create-env bosh-deployment/bosh.yml \
-v zone=$MY_ZONE \
-v tags=[internal] \
-v network=default \
-v subnetwork=$MY_SUBNET \
-v external_ip=$MY_EXTERNAL_IP
-v subnetwork=$MY_SUBNET
```
Then hit `ESC`, `:wq`, ENTER to save and quit.
@ -143,11 +140,11 @@ An alias creates a shortcut that saves connection parameters to a name.
In our `~/operator-workshop/student/lab-1` folder, run:
```
$ bosh alias-env bosh-director -e $MY_EXTERNAL_IP --ca-cert <(bosh int ~/operator-workshop/student/lab-1/creds.yml --path /director_ssl/ca)
$ bosh alias-env bosh-director -e $MY_INTERNAL_IP --ca-cert <(bosh int ~/operator-workshop/student/lab-1/creds.yml --path /director_ssl/ca)
```
Now we have an environment alias called `bosh-director` that points to
our external IP and can supply our SSL certificate.
our internal IP and can supply our SSL certificate.
### Login to BOSH
@ -205,16 +202,16 @@ Yet we're going to want to pass in some variables like this:
$ bosh update-cloud-config cloud-config.yml -v internal_cidr=$MY_CIDR -v internal_gw=$MY_GW -v subnetwork_name=$MY_SUBNET
```
## Team Exercise
## Exercise
At this time, we're going to break into teams, and your goal will be to
Link to zookeeper repo
link to BOSH-CLI commands
Define bosh stemcells
At this time, and your goal will be to
deploy a "Hello World" BOSH release. We recommended the
[zookeeper-release][zookeeper-release] for BOSH.
First team to get all their teammates to deploy the BOSH release, wins 10
points. At the end of the workshop we have a prize for the team with the
most points!
When you're ready for the next lab, head on over to [lab-2][lab-2].
[//]: # (Pictures)

49
student/lab-5/README.md Normal file
View File

@ -0,0 +1,49 @@
# lab-5
The road goes on for you from here by exploring on your with the following
self-led resources.
## Choose a Cloud
In order to learn more BOSH, you need a "lab". This can be accomplished a couple
of ways. Either setup one on a public cloud. Or on your own server or laptop
you own.
### Public Clouds
Trial accounts are a great way to do rapid testing and a Proof of Concept (POC).
* [Google Cloud Platform (GCP)][gcp]
* [Amazon Web Services Elastic Compute Cloud (AWS EC2)][aws]
* [Microsoft® Azure][azure]
### Bare-Metal
Or if you have your own hardware, like a laptop or a server you can use
VirtualBox to simulate a cloud for you.
* Use the [how to install BOSH Lite with VirtualBox][bosh-lite] instructions.
NOTE: Keep in mind that long term though, a BOSH-lite is best for learning and
perhaps for developing locally a release. When setting up a CI/CD pipeline it's
better to have the same cloud in each environment.
## Build a Release
Once you have a lab to work with, these two guides will step you through how a
BOSH release is built. This is important because once you know how a release
is made, you can become literate in evaluating "off the shelf" releases available
in the Open Source Software (OSS) community. For example, on
[https://bosh.io/releases].
1. Learn how to build a release with the [Learn BOSH][mariash] tutorial.
2. Also you can follow the **bosh.io** guide for how to [create a release][create-release].
[//]: # (Links)
[gcp]: https://cloud.google.com/free/
[aws]: https://aws.amazon.com/free/
[azure]: https://azure.microsoft.com/en-us/free/
[mariash]: https://mariash.github.io/learn-bosh/
[create-release]: https://bosh.io/docs/create-release/
[bosh-lite]: https://bosh.io/docs/bosh-lite/