Skip to content

Commit 6dda954

Browse files
committed
Merge commit 'stash' into feature/update-doc-tfvars
2 parents 2734ab3 + c68ca48 commit 6dda954

14 files changed

+124
-46
lines changed

.travis.yml

+16-1
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,19 @@ install:
1010

1111
script:
1212
- sphinx-build -W -b html -d _build/doctrees . _build/html
13-
13+
14+
notifications:
15+
email: false
16+
slack:
17+
secure: >
18+
Q1Ln2QTsVCzvxQUUZUHEgY1s48mk6qv0bfCH4k4szzQk3rYRoM0oKz+CxqlDHaaeav
19+
J7tbYtiYh+rBnTTUKM7EIduoYnwJ98qsCMPoRlJl/5hknW9wF4bhjX9QouFSrdqrqh
20+
8mK/be/QU95D+f82Z2yuJTtBMakmmYhhbWkuecTr6g+uukLRDIzSZKJnyXKxh3xiKz
21+
kT1RMqn3dg6QFNYWGMsI9aZBYaDpMYHbnW1BPQClRvoTxtojQqQsAhhnOIJI3Z4xkz
22+
IxNzzkcj3xFU3e6bUEVO6A9/GzRgddrUBzyTQEwj/JuhPgxlQe0Effniyp29Y31C2i
23+
AMnCCXH+lGCJe18q254Q7xzg5jRJiEKUgPKui3Ku2tK9GLlDdXngUcMTlmwcZI227V
24+
79oryqW7mk1Bl5+RqzEHqcTJhS8+iSLZdwXaH8n7Ne1UJABaDRS9/X2SsXP6h5gO9R
25+
UTvj1+zypdLnvhEyUhM9KywB/31/KsIM9bUC023zS2vVtiOD/TVY3ZVmVdDx8UXsfc
26+
3s3InRGJ0OVu3eO5ILHyoZnYDYXFS/3YoXJaFsEbyMxIDEKRMvhMleTxZHXUu7Win+
27+
EKEFi3Yv6IfZbbj4DTO7RdlUWHMTUMkFRYMV6I/ftuZNAb+6+RtlKGL5wwANclkbE7
28+
6JqZ67WSQPtl6VklfYHLYRY=

CONTRIBUTING.md

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# Contributing Guidelines
2+
3+
**First off, thanks for taking the time to contribute!**
4+
5+
Information about contributing to all the various [KubeNow's repositories](https://github.com/kubenow) lives in the [KubeNow's main repo](https://github.com/kubenow/KubeNow).
6+
7+
We'd love to get your questions and accept your patches! Thus before we can take them, please make sure to read our contributing guidelines [here](https://github.com/kubenow/KubeNow/blob/master/CONTRIBUTING.md).

PULL_REQUEST_TEMPLATE.md

+4-28
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,15 @@
1-
<!--
2-
Thanks for sending a Pull Request (PR)! Please use this template to facilitate the review/merge process.
3-
4-
WARNING!!! Make sure that the PR fullfills the review criteria before submitting:
5-
6-
POSITIVES
7-
- Change has already been discussed and is known to committers (open an issue first otherwise)
8-
- Has a nice, self-explanatory title
9-
- Fixes the root cause of a bug in existing functionality
10-
- Adds functionality or fixes a problem needed by a large number of users
11-
- Simple, targeted
12-
- Easily tested; has tests
13-
- Reduces complexity and lines of code
14-
15-
NEGATIVES
16-
- Makes lots of modifications in one "big bang" change
17-
- Band-aids a symptom of a bug only
18-
- Introduces complex new functionality
19-
- Adds complexity that only helps a niche use case
20-
- Adds user-space functionality that does not need to be maintained in KubeNow, but could be hosted externally
21-
- Adds large dependencies
22-
- Changes versions of existing dependencies
23-
- Adds a large amount of code
24-
-->
25-
261
## Change content and motivation
272
<!-- please describe briefly the content of this PR, and motivate why this changes are needed -->
283

29-
## GitHub cross-links
4+
<!-- Please uncomment if applicable -->
5+
<!-- ## GitHub cross-links -->
306
<!--
317
please list the issues that are going to be fixed by this PR (if applicable).
328
Use the suggested format to facilitate issue closing.
339
-->
34-
**Fixes:** <!-- fixes #X, fixes #Y, ... fixes #Z -->
10+
<!-- Fixes #X, fixes #Y, ... fixes #Z -->
3511
<!--
3612
please add documentation for your feature (if applicable), and link the documentation changes.
3713
Documentation PRs are to be sent to https://github.com/kubenow/docs.
3814
-->
39-
**Docs**: <!-- #X, #Y, ... #Z -->
15+
<!-- Docs: kubenow/docs#X, kubenow/docs#Y, ... kubenow/docs#Z -->

advanced_topics/cloudflare-dns.rst

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
Cloudflare DNS Records
2+
======================
3+
`Cloudflare <https://www.cloudflare.com>`_ runs one of the largest authoritative DNS networks in the world. In order to resolve domain names for exposed services, KubeNow can optionally configure the Cloudflare dynamic DNS service, so that a base domain name will resolve to the edge nodes (or the master node if no edge node is deployed).
4+
5+
To configure the Cloudflare dynamic DNS service, it is sufficient to uncomment the following lines in the ``config.tfvars`` file, specifying credentials, domain and subdomain::
6+
7+
# Cloudflare configuration (optional)
8+
use_cloudflare = "true"
9+
cloudflare_email = "your-cloudflare-email"
10+
cloudflare_token = "your-cloudflare-token"
11+
cloudflare_domain = "your-domain-name"
12+
cloudflare_subdomain = "your-subdomain-name"
+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
Cloudflare: Proxied Traffic
2+
===========================
3+
Incoming container traffic can be optionally proxied through the `Cloudflare <https://www.cloudflare.com>`_ servers. When operating in this mode Cloudflare provides HTTPS for container services, and it protects against distributed denial of service, customer data breach and malicious bot abuse.
4+
5+
To enable Cloudflare proxied traffic, it is sufficient to uncomment the following lines in the ``config.tfvars`` file, specifying DNS records to be proxied::
6+
7+
# Cloudflare proxy (optional)
8+
cloudflare_proxied = "true"
9+
cloudflare_record_texts = ["record1","record2",...] # Warn: wildcards are not supported when using proxied records

advanced_topics/edge-nodes.rst

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
Edge Nodes
2+
==========
3+
Edge nodes are specialized service nodes with an associated public IP address, and they run `Traefik <https://traefik.io>`_ acting as reverse proxies, and load balancers, for the services that are exposed to the Internet. In the default settings, we don't deploy any edge node enabling the reverse proxy logic in the master node instead. However, in production settings we recommend to deploy one or more edge nodes to reduce the load in the master.
4+
5+
To deploy edge nodes, it is sufficient to uncomment the following lines in the ``config.tfvars`` file, and to set the desired number of edge nodes, along with an available instance flavor::
6+
7+
# Master configuration (mandatory in general, above all for single-server setup)
8+
master_flavor = "your-master-flavor"
9+
master_as_edge = "false"
10+
11+
# Edge configuration
12+
edge_count = "2"
13+
edge_flavor = "your-edge-flavor"
14+
15+
Please notice that we set ``master_as_edge = "false"`` to disable Traefik in the master node.

advanced_topics/glusterfs-nodes.rst

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
GlusterFS Nodes
2+
===============
3+
GlusterFS nodes are specialized service nodes. They run only `GlusterFS <https://www.gluster.org>`_ and they are attached to a block storage volume to provide additional capacity. In the default settings, we don't deploy GlusterFS nodes, as it is not required in many use cases. However, GlusterFS can be particularly convenient when a distributed file system is needed for container synchronization.
4+
5+
To deploy GlusterFS nodes, it is sufficient to uncomment the following lines in the ``config.tfvars`` file, and to set the desired number of edge nodes, along with an available instance flavor and block storage disk size::
6+
7+
# Gluster configuration
8+
glusternode_count = "1"
9+
glusternode_flavor = "your-glusternode-flavor"
10+
glusternode_extra_disk_size = "200" # Size in GB
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
Single-Node Deployments
2+
=======================
3+
When resources are scarce, or for testing purpose, KubeNow enables single-node deployments. In fact, it is possible to deploy the master node only, which will automatically enabled for service scheduling.
4+
5+
You can achieve this by commenting all of the lines for the other instance types (i.e. edge node, gluster node and worker node) in the ``config.tfvars`` file, leaving the master node only as it is shown below::
6+
7+
# Master configuration (mandatory in general, above all for single-server setup)
8+
master_flavor = "your-master-flavor"
9+
master_as_edge = "true"
10+
11+
# Node configuration
12+
# node_count = "3"
13+
# node_flavor = "your-node-flavor"
14+
15+
# Edge configuration
16+
# edge_count = "2"
17+
# edge_flavor = "your-edge-flavor"
18+
19+
# Gluster configuration
20+
# glusternode_count = "1"
21+
# glusternode_flavor = "your-glusternode-flavor"
22+
# glusternode_extra_disk_size = "200" # Size in GB

conf.py

+1
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
# ones.
3434
extensions = [
3535
'sphinx.ext.todo',
36+
'sphinx.ext.ifconfig',
3637
]
3738

3839
# Add any paths that contain templates here, relative to this directory.

getting_started/bootstrap.rst

+3-3
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ Deploy KubeNow
157157
~~~~~~~~~~~~~~
158158
Once you are done with your settings you are ready deploy your cluster running::
159159

160-
kn apply gce
160+
kn apply
161161

162162
The first time you are going to deploy it will take longer, since the KubeNow image needs to be imported. Future deployments will be considerably faster, since the image will be already present in your user space.
163163

@@ -222,7 +222,7 @@ Deploy KubeNow
222222
~~~~~~~~~~~~~~
223223
Once you are done with your settings you are ready deploy your cluster running::
224224

225-
kn apply aws
225+
kn apply
226226

227227
To check that your cluster is up and running you can run::
228228

@@ -283,7 +283,7 @@ Deploy KubeNow
283283
~~~~~~~~~~~~~~
284284
Once you are done with your settings you are ready deploy your cluster running::
285285

286-
kn apply azure
286+
kn apply
287287

288288
The first time you are going to deploy it will take longer, since the KubeNow image needs to be imported. Future deployments will be considerably faster, since the image will be already present in your user space.
289289

getting_started/first-app.rst

+2-2
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,9 @@ Accessing the Traefik UI
3131

3232
One simple and quick way to access the Traefik UI is to tunnel via SSH to one of the edge nodes with the following command::
3333

34-
ssh -N -f -L localhost:8080:localhost:8080 ubuntu@<your-domain>
34+
ssh -N -f -L localhost:8081:localhost:8081 ubuntu@<your-domain>
3535

36-
Using SSH tunnelling, the Traefik UI should be reachable at http://localhost:8080, and it should look something like this:
36+
Using SSH tunnelling, the Traefik UI should be reachable at http://localhost:8081, and it should look something like this:
3737

3838
.. image:: ../img/traefik_UI_example.png
3939

getting_started/prerequisites.rst

+8-7
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,14 @@ In order to get the provisioning tools please run:
1717
1818
We wrote up a handy CLI that wraps around the Docker container above, you can install it with a one-liner:
1919

20-
.. parsed-literal::
20+
.. ifconfig:: release == "master"
2121

22-
curl -Lo kn \https://raw.githubusercontent.com/kubenow/KubeNow/|release|/bin/kn && chmod +x kn && sudo mv kn /usr/local/bin/
23-
24-
By default ``kn`` uses the ``latest`` provisioner release, if you are planning to use another you need to set the ``KUBENOW_VERSION`` environment variable. For instance if you are planning to use the `master` version, you need to run:
22+
.. parsed-literal::
2523
26-
.. parsed-literal::
24+
curl -Lo kn \https://raw.githubusercontent.com/kubenow/KubeNow/|release|/bin/kn && chmod +x kn && sudo mv kn /usr/local/bin/
25+
26+
.. ifconfig:: release != "master"
27+
28+
.. parsed-literal::
2729
28-
export KUBENOW_VERSION="master"
29-
30+
curl -Lo kn \https://github.com/kubenow/KubeNow/releases/download/|release|/kn && chmod +x kn && sudo mv kn /usr/local/bin/

index.rst

+12-2
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ Welcome to KubeNow's documentation! This is a place where we aim to help you to
1212
getting_started/clean-up
1313

1414
.. toctree::
15-
:maxdepth: 1
15+
:maxdepth: 2
1616
:caption: Troubleshooting
1717

1818
troubleshoot/trouble-terraform
@@ -21,7 +21,17 @@ Welcome to KubeNow's documentation! This is a place where we aim to help you to
2121
troubleshoot/trouble-misc
2222

2323
.. toctree::
24-
:maxdepth: 1
24+
:maxdepth: 2
25+
:caption: Advanced Topics
26+
27+
advanced_topics/edge-nodes
28+
advanced_topics/glusterfs-nodes
29+
advanced_topics/single-node-deployments
30+
advanced_topics/cloudflare-dns
31+
advanced_topics/cloudflare-proxied
32+
33+
.. toctree::
34+
:maxdepth: 2
2535
:caption: Developers guide
2636

2737
developers/build-img

troubleshoot/trouble-kubernetes.rst

+3-3
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ List kubernetes pods
1313
kubectl get pods --all-namespaces
1414

1515
# With Ansible from your local computer:
16-
ansible master -a "kubectl get pods --all-namespaces"
16+
kn ansible master -a "kubectl get pods --all-namespaces"
1717

1818
Describe status of a specific pod
1919
---------------------------------
@@ -24,7 +24,7 @@ Describe status of a specific pod
2424
kubectl describe pod <pod id> --all-namespaces
2525

2626
# With Ansible from your local computer:
27-
ansible master -a "kubectl describe pod <pod id> --all-namespaces"
27+
kn ansible master -a "kubectl describe pod <pod id> --all-namespaces"
2828

2929
Get the kubelet service log
3030
---------------------------
@@ -35,4 +35,4 @@ Get the kubelet service log
3535
sudo journalctl -r -u kubelet
3636

3737
# With Ansible from your local computer:
38-
ansible master -a "journalctl -r -u kubelet"
38+
kn ansible master -a "journalctl -r -u kubelet"

0 commit comments

Comments
 (0)