Change-Id: I8049850fa1fb1937c64c9db9765170f10292f356
Reviewed-on: http://photon-jenkins.eng.vmware.com/1144
Reviewed-by: gerrit-photon <photon-checkins@vmware.com>
Tested-by: gerrit-photon <photon-checkins@vmware.com>
... | ... |
@@ -1,6 +1,6 @@ |
1 | 1 |
#Photon OS on GCE |
2 | 2 |
## Google Compute Engine (GCE) Image background |
3 |
-GCE is a service that lets you run virtual machines on Google's infrastructure. You can customize the virtual machine as much as you want, and you can even install your own custom operating system image. Or, you can adopt one of the public [images](https://cloud.google.com/compute/docs/operating-systems/) provided by Google. For any operating system to work with GCE, it must match the Google's infrastructure needs. |
|
3 |
+GCE is a service that lets you run virtual machines on Google's infrastructure. You can customize the virtual machine as much as you want, and you can even install your own custom operating system image. Or, you can adopt one of the public [images](https://cloud.google.com/compute/docs/operating-systems/) provided by Google. For any operating system to work with GCE, it must match Google's infrastructure needs. |
|
4 | 4 |
Google provides tools that VM instances require to work correctly on GCE: |
5 | 5 |
|
6 | 6 |
* __[Google startup scripts](https://cloud.google.com/compute/docs/startupscript)__: User can provide some startup script to configure their instances at startup. |
... | ... |
@@ -1,8 +1,6 @@ |
1 |
-Running Kubernetes on Photon |
|
1 |
+Running Kubernetes on Photon OS |
|
2 | 2 |
----------------------------------------------------- |
3 | 3 |
|
4 |
-(Note: Modified Getting started Kubernetes docs accordingly to run Kubernetes on Photon) |
|
5 |
- |
|
6 | 4 |
**Table of Contents** |
7 | 5 |
|
8 | 6 |
- [Prerequisites](#prerequisites) |
... | ... |
@@ -10,15 +8,15 @@ Running Kubernetes on Photon |
10 | 10 |
|
11 | 11 |
## Prerequisites |
12 | 12 |
|
13 |
-1. You need 2 or more machines with Photon installed. |
|
13 |
+* You need 2 or more machines with Photon installed. |
|
14 | 14 |
|
15 | 15 |
## Instructions |
16 | 16 |
|
17 |
-This is a getting started guide for Photon. It is a manual configuration so you understand all the underlying packages / services / ports, etc... |
|
17 |
+This document gets you started using Kubernetes with Photon OS. The instructions present a manual configuration that gets one worker node running to help you understand the underlying packages, services, ports, and so forth. |
|
18 | 18 |
|
19 |
-This guide will only get ONE node (previously minion) working. |
|
19 |
+The Kubernetes package provides several services: kube-apiserver, kube-scheduler, kube-controller-manager, kubelet, kube-proxy. These services are managed by systemd. Their configuration resides in a central location: /etc/kubernetes. |
|
20 | 20 |
|
21 |
-The Kubernetes package provides a few services: kube-apiserver, kube-scheduler, kube-controller-manager, kubelet, kube-proxy. These services are managed by systemd and the configuration resides in a central location: /etc/kubernetes. We will break the services up between the hosts. The first host, photon-master, will be the Kubernetes master. This host will run the kube-apiserver, kube-controller-manager, and kube-scheduler. In addition, the master will also run _etcd_ (not needed if _etcd_ runs on a different host but this guide assumes that _etcd_ and Kubernetes master run on the same host). The remaining host, photon-node will be the node and run kubelet, proxy and docker. |
|
21 |
+The following instructions break the services up between the hosts. The first host, photon-master, will be the Kubernetes master. This host will run the kube-apiserver, kube-controller-manager, and kube-scheduler. In addition, the master will also run _etcd_ (not needed if _etcd_ runs on a different host but this guide assumes that _etcd_ and Kubernetes master run on the same host). The remaining host, photon-node will be the node and run kubelet, proxy and docker. |
|
22 | 22 |
|
23 | 23 |
**System Information:** |
24 | 24 |
|
... | ... |
@@ -62,7 +60,7 @@ echo "192.168.121.9 photon-master |
62 | 62 |
# Comma separated list of nodes in the etcd cluster |
63 | 63 |
KUBE_MASTER="--master=http://photon-master:8080" |
64 | 64 |
|
65 |
-# logging to stderr means we get it in the systemd journal |
|
65 |
+# logging to stderr routes it to the systemd journal |
|
66 | 66 |
KUBE_LOGTOSTDERR="--logtostderr=true" |
67 | 67 |
|
68 | 68 |
# journal message level, 0 is debug |
... | ... |
@@ -86,7 +84,7 @@ KUBE_ETCD_SERVERS="--etcd_servers=http://127.0.0.1:4001" |
86 | 86 |
# Address range to use for services |
87 | 87 |
KUBE_SERVICE_ADDRESSES="--service-cluster-ip-range=10.254.0.0/16" |
88 | 88 |
|
89 |
-# Add your own! |
|
89 |
+# Add your own |
|
90 | 90 |
KUBE_API_ARGS="" |
91 | 91 |
``` |
92 | 92 |
|
... | ... |
@@ -153,7 +151,7 @@ KUBELET_HOSTNAME="--hostname_override=photon-node" |
153 | 153 |
# location of the api-server |
154 | 154 |
KUBELET_API_SERVER="--api_servers=http://photon-master:8080" |
155 | 155 |
|
156 |
-# Add your own! |
|
156 |
+# Add your own |
|
157 | 157 |
#KUBELET_ARGS="" |
158 | 158 |
``` |
159 | 159 |
|
... | ... |
@@ -183,9 +181,10 @@ To delete _photon-node_ from your Kubernetes cluster, one should run the followi |
183 | 183 |
kubectl delete -f ./node.json |
184 | 184 |
``` |
185 | 185 |
|
186 |
-*You should be finished!* |
|
186 |
+*You should be finished.* |
|
187 |
+ |
|
188 |
+**The cluster should be running. Launch a test pod.** |
|
187 | 189 |
|
188 |
-**The cluster should be running! Launch a test pod.** |
|
190 |
+You should have a functional cluster. Check out [101](https://github.com/GoogleCloudPlatform/kubernetes/blob/master/docs/user-guide/walkthrough/README.md). |
|
189 | 191 |
|
190 |
-You should have a functional cluster, check out [101](https://github.com/GoogleCloudPlatform/kubernetes/blob/master/docs/user-guide/walkthrough/README.md)! |
|
191 | 192 |
|
... | ... |
@@ -1,23 +1,24 @@ |
1 |
-Running Rocket containers on Photon |
|
2 |
-=================================== |
|
1 |
+Running Rocket Containers on Photon OS |
|
2 |
+====================================== |
|
3 | 3 |
|
4 |
-Rocket is a new container runtime, created by [CoreOS](http://coreos.com) and designed for composability, security, and speed. |
|
4 |
+Rocket is a container runtime created by [CoreOS](http://coreos.com). It is designed for composability, security, and speed. |
|
5 | 5 |
|
6 |
-rkt (pronounced _"rock-it"_) is a CLI for running app containers, and an implementation of the [App Container Spec](https://github.com/coreos/rkt/blob/master/Documentation/app-container.md). |
|
6 |
+A command-line interface for running application containers, rkt (pronounced _"rock-it"_) implements the [App Container Spec](https://github.com/coreos/rkt/blob/master/Documentation/app-container.md). |
|
7 | 7 |
|
8 |
-rkt is available as an optional package in Photon, to install it: |
|
8 |
+The rkt package is installed by default in the full version of Photon OS. In the minimal version, rkt is an optional package. You can install it by running the following commands as root: |
|
9 | 9 |
|
10 | 10 |
``` |
11 |
-mount /dev/cdrom /media/cdrom |
|
12 |
- |
|
13 | 11 |
tdnf install rocket |
14 | 12 |
``` |
15 | 13 |
|
16 |
-### Running an App Container Image (ACI) |
|
14 |
+For more information about the tdnf command, see the [Photon OS Administration Guide](https://github.com/vmware/photon/blob/master/docs/photon-admin-guide.md). |
|
15 |
+ |
|
17 | 16 |
|
18 |
-rkt uses content addressable storage (CAS) for storing an ACI on disk. In this example, the image is downloaded and added to the CAS. |
|
17 |
+### Running an App Container Image |
|
19 | 18 |
|
20 |
-Since rkt verifies signatures by default, you will need to first [trust](https://github.com/coreos/rkt/blob/master/Documentation/signing-and-verification-guide.md#establishing-trust) the [CoreOS public key](https://coreos.com/dist/pubkeys/aci-pubkeys.gpg) used to sign the image: |
|
19 |
+rkt uses content addressable storage (CAS) for storing an app container image (ACI) on disk. In the following example, the image is downloaded and added to the CAS. |
|
20 |
+ |
|
21 |
+Since rkt verifies signatures by default, you need to first [trust](https://github.com/coreos/rkt/blob/master/Documentation/signing-and-verification-guide.md#establishing-trust) the [CoreOS public key](https://coreos.com/dist/pubkeys/aci-pubkeys.gpg) used to sign the image: |
|
21 | 22 |
|
22 | 23 |
``` |
23 | 24 |
$ sudo rkt trust --prefix coreos.com/etcd |
... | ... |
@@ -30,7 +31,7 @@ Trusting "https://coreos.com/dist/pubkeys/aci-pubkeys.gpg" for prefix "coreos.co |
30 | 30 |
Added key for prefix "coreos.com/etcd" at "/etc/rkt/trustedkeys/prefix.d/coreos.com/etcd/8b86de38890ddb7291867b025210bd8888182190" |
31 | 31 |
``` |
32 | 32 |
|
33 |
-Now that we've trusted the CoreOS public key, we can bring up a simple etcd instance using the ACI format: |
|
33 |
+Now that you have trusted the CoreOS public key, you can bring up a simple etcd instance using the ACI format: |
|
34 | 34 |
|
35 | 35 |
``` |
36 | 36 |
$ privateIp=$(ip -4 -o addr show eth0 | cut -d' ' -f7 | cut -d'/' -f1) |
... | ... |
@@ -74,4 +75,5 @@ Timezone UTC does not exist in container, not updating container timezone. |
74 | 74 |
2015/04/02 13:18:41 etcdserver: published {Name:vmware-cna ClientURLs:[http://192.168.35.246:2379]} to cluster 75c533bd1f49730b |
75 | 75 |
``` |
76 | 76 |
|
77 |
-At any time you can press ^] three times to kill container. |
|
78 | 77 |
\ No newline at end of file |
78 |
+When you are done, press the `^]` key three times to kill the container. To generate `^]` on a U.S. keyboard, type Ctrl+] (hold down the Ctrl key and then press the `]` key). The key combination to generate the `^]` escape character might differ on keyboard layouts other than the U.S. keyboard. |
|
79 |
+ |