Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch from NodeJS/Gitbook back to Ruby/Jekyll, using latest Ruby #315

Merged
merged 42 commits into from
May 21, 2021
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
173148c
Revert "This closes #222"
ahgittin Sep 4, 2018
73f2627
ignore stuff from gitbook
ahgittin Sep 4, 2018
c26c8b9
Merge commit '5d11e405' into release-5.0-reverted-222
ahgittin Sep 4, 2018
22ef529
Merge commit 'ba27cf1b' into release-5.0-reverted-222
ahgittin Sep 4, 2018
90ef120
Revert "Merge commit 'ba27cf1b' into release-5.0-reverted-222"
ahgittin Sep 4, 2018
d1efaf7
Merge commit 'ba01df1a' into release-5.0-reverted-222
ahgittin Sep 4, 2018
b40c7ed
Merge commit '68ec56c3' into release-5.0-reverted-222
ahgittin Sep 4, 2018
f970695
Merge commit '3772c215' into release-5.0-reverted-222
ahgittin Sep 4, 2018
2698dbc
Merge commit '9d9028de' into release-5.0-reverted-222
ahgittin Sep 4, 2018
7d808f6
Merge commit '40c59c6c' into release-5.0-reverted-222
ahgittin Sep 4, 2018
15afba3
Merge commit '892400e4' into release-5.0-reverted-222
ahgittin Sep 4, 2018
b726b16
Merge commit '7402753b' into release-5.0-reverted-222
ahgittin Sep 4, 2018
42f4eba
Merge commit 'cd6242aa' into release-5.0-reverted-222
ahgittin Sep 4, 2018
499186d
Merge commit '62cf36a7' into release-5.0-reverted-222
ahgittin Sep 4, 2018
1f518ac
Merge commit '6c4d98ed' into release-5.0-reverted-222
ahgittin Sep 4, 2018
c28417f
Merge commit 'd00c98a7' into release-5.0-reverted-222
ahgittin Sep 4, 2018
a75819e
Merge commit '2c20b30f' into release-5.0-reverted-222
ahgittin Sep 4, 2018
d4f7185
Merge commit '5b78602c' into release-5.0-reverted-222
ahgittin Sep 4, 2018
cf28bf4
Merge commit '2f2ed97c' into release-5.0-reverted-222
ahgittin Sep 4, 2018
a0314df
Merge commit '1a922025' into release-5.0-reverted-222
ahgittin Sep 4, 2018
d616fbf
Merge remote-tracking branch 'origin/latest-upstream' into release-5.…
ahgittin Sep 4, 2018
a7dbdc2
Merge branch 'master' of github.com:apache/brooklyn-docs
nakomis Feb 5, 2019
c08d9b8
Merge apache-brooklyn/master as at commit c0b4ab45
richardcloudsoft Feb 25, 2021
dae7d77
Merge apache-brooklyn/master as at commit 42aa8274
richardcloudsoft Feb 25, 2021
1e0f1be
Merge apache-brooklyn/master as at commit f38fb8bb
richardcloudsoft Feb 25, 2021
93fa774
Merge apache-brooklyn/master as at commit edc13bd6
richardcloudsoft Feb 25, 2021
a6c7aaf
Merge apache-brooklyn/master as at commit 5237ea65
richardcloudsoft Feb 25, 2021
06230ce
Merge apache-brooklyn/master as at commit 6b410121
richardcloudsoft Feb 25, 2021
28a107a
Merge apache-brooklyn/master as at commit 84156e39
richardcloudsoft Feb 26, 2021
a116321
Resolve issues from merge
richardcloudsoft Mar 12, 2021
f8243c7
Merge branch 'master' into ruby-3
ahgittin May 20, 2021
f2f2f61
updating to latest ruby - 3.0.1 - ruby installs but doesn't yet run
ahgittin May 20, 2021
18c08d2
making new jekyll run - it needs a theme installed
ahgittin May 20, 2021
199567d
add webrick gem - needed to serve
ahgittin May 20, 2021
9772a69
remove package.json stuff - leftover from gitbook
ahgittin May 20, 2021
0eda085
fix some paths from gitbook
ahgittin May 20, 2021
484143d
restore title of available / off-the-shelf policies
ahgittin May 20, 2021
ce81908
fix various jekyll run problems
ahgittin May 20, 2021
8cbdb82
apply similar liquid cache workaround for page
ahgittin May 20, 2021
8c3b55e
avoid use of assign tag in liquid
ahgittin May 20, 2021
0b6a90c
fix instructions
ahgittin May 20, 2021
9b13e52
add a few dangling pages to the tree
ahgittin May 21, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Merge commit 'ba27cf1b' into release-5.0-reverted-222
merged with conflicts, will be reverted
  • Loading branch information
ahgittin committed Sep 4, 2018
commit 22ef529063c3b7beb3e681fa42f240b65c2064ca
15 changes: 15 additions & 0 deletions guide/_layouts/website/page.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{% extends template.self %}

{% block body %}
<header class="page-header">
<a href="{{book.url.brooklyn_website}}" class="navbar-brand">
<img src="{{book.url.brooklyn_website}}/v/latest/style/img/apache-brooklyn-logo-244px-wide.png" alt="Apache Brooklyn">
</a>
</header>
{{ super() }}
{% endblock %}

{% block page %}
<h1>{{page.title}}</h1>
{{ super () }}
{% endblock %}
3 changes: 3 additions & 0 deletions guide/blueprints/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@ children:
- blueprinting-tips.md
- { path: yaml-reference.md, title: YAML Blueprint Reference }
---
<<<<<<< HEAD


{% include list-children.html %}
=======
>>>>>>> ba27cf1b
3 changes: 3 additions & 0 deletions guide/blueprints/setting-locations.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,11 @@ layout: website-normal
toc: ../guide_toc.json
categories: [use, guide, defining-applications]
---
<<<<<<< HEAD

{% include fields.md %}
=======
>>>>>>> ba27cf1b

Brooklyn supports a very wide range of target locations.
With deep integration to [Apache jclouds](https://jclouds.apache.org), most well-known clouds
Expand Down
3 changes: 3 additions & 0 deletions guide/blueprints/test/test-entities.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,11 @@ title: Blueprint Test Entities
title_in_menu: Test Entities
layout: website-normal
---
<<<<<<< HEAD

{% include fields.md %}
=======
>>>>>>> ba27cf1b


## Structural Test Entities
Expand Down
3 changes: 3 additions & 0 deletions guide/blueprints/test/usage-examples.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,11 @@ title: Example Blueprint Tests
title_in_menu: Example Tests
layout: website-normal
---
<<<<<<< HEAD

{% include fields.md %}
=======
>>>>>>> ba27cf1b

## Introduction
This section describes some simple tests based on the [Getting Started]({{ site.path.guide }}/start/blueprints.html#launching-from-a-blueprint) example blueprint:
Expand Down
3 changes: 3 additions & 0 deletions guide/ops/gui/blueprints.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,11 @@ children:
- { section: Launching from a Blueprint, title: Launching from a Blueprint }
- { section: Launching from the Catalog, title: Launching from the Catalog }
---
<<<<<<< HEAD

{% include fields.md %}
=======
>>>>>>> ba27cf1b


## Launching from a Blueprint
Expand Down
3 changes: 3 additions & 0 deletions guide/ops/gui/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,8 @@ children:
- managing.md
- policies.md
---
<<<<<<< HEAD

{% include list-children.html %}
=======
>>>>>>> ba27cf1b
3 changes: 3 additions & 0 deletions guide/ops/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,5 +19,8 @@ children:
- security-guidelines.md
- troubleshooting/
---
<<<<<<< HEAD

{% include list-children.html %}
=======
>>>>>>> ba27cf1b
3 changes: 3 additions & 0 deletions guide/ops/production-installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,11 @@
layout: website-normal
title: Production Installation
---
<<<<<<< HEAD

{% include fields.md %}
=======
>>>>>>> ba27cf1b

To install Apache Brooklyn on a production server:

Expand Down
153 changes: 153 additions & 0 deletions guide/ops/troubleshooting/connectivity.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,158 @@ layout: website-normal
title: Troubleshooting Server Connectivity Issues in the Cloud
toc: /guide/toc.json
---
<<<<<<< HEAD
=======

A common problem when setting up an application in the cloud is getting the basic connectivity right - how
do I get my service (e.g. a TCP host:port) publicly accessible over the internet?

This varies a lot - e.g. Is the VM public or in a private network? Is the service only accessible through
a load balancer? Should the service be globally reachable or only to a particular CIDR?

This guide gives some general tips for debugging connectivity issues, which are applicable to a
range of different service types. Choose those that are appropriate for your use-case.

## VM reachable
If the VM is supposed to be accessible directly (e.g. from the public internet, or if in a private network
then from a jump host)...

### ping
Can you `ping` the VM from the machine you are trying to reach it from?

However, ping is over ICMP. If the VM is unreachable, it could be that the firewall forbids ICMP but still
lets TCP traffic through.

### telnet to TCP port
You can check if a given TCP port is reachable and listening using `telnet <host> <port>`, such as
`telnet www.google.com 80`, which gives output like:

~~~
Trying 31.55.163.219...
Connected to www.google.com.
Escape character is '^]'.
~~~

If this is very slow to respond, it can be caused by a firewall blocking access. If it is fast, it could
be that the server is just not listening on that port.

### DNS and routing
If using a hostname rather than IP, then is it resolving to a sensible IP?

Is the route to the server sensible? (e.g. one can hit problems with proxy servers in a corporate
network, or ISPs returning a default result for unknown hosts).

The following commands can be useful:

* `host` is a DNS lookup utility. e.g. `host www.google.com`.
* `dig` stands for "domain information groper". e.g. `dig www.google.com`.
* `traceroute` prints the route that packets take to a network host. e.g. `traceroute www.google.com`.

## Proxy settings
Depending on the type of location, brooklyn might use HTTP to provision machines (clocker, jclouds). If the host environment defines proxy settings, these might interfere with the reachability of the respective HTTP service.

One such case is using VirtualBox with host-only or private internal network settings, while using an external proxy for accessing the internet. It is clear that the external proxy won't be able to route HTTP calls properly, but that might not be clear when reading the logs (although brooklyn will present the failing URL).

Try accessing the web-service URLs from a browser via the proxy, or perhaps try running brooklyn with proxy disabled:

~~~
export http_proxy=
bin/brooklyn launch
~~~

If a system-level proxy server has been configured, you can instruct brooklyn to use the proxy server by passing `-Djava.net.useSystemProxies=true` to the JVM

## Service is listening

### Service responds
Try connecting to the service from the VM itself. For example, `curl http://localhost:8080` for a
web-service.

On dev/test VMs, don't be afraid to install the utilities you need such as `curl`, `telnet`, `nc`,
etc. Cloud VMs often have a very cut-down set of packages installed. For example, execute
`sudo apt-get update; sudo apt-get install -y curl` or `sudo yum install -y curl`.

### Listening on port
Check that the service is listening on the port, and on the correct NIC(s).

Execute `netstat -antp` (or on OS X `netstat -antp TCP`) to list the TCP ports in use (or use
`-anup` for UDP). You should expect to see the something like the output below for a service.

~~~
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 :::8080 :::* LISTEN 8276/java
~~~

In this case a Java process with pid 8276 is listening on port 8080. The local address `:::8080`
format means all NICs (in IPv6 address format). You may also see `0.0.0.0:8080` for IPv4 format.
If it says 127.0.0.1:8080 then your service will most likely not be reachable externally.

Use `ip addr show` (or the obsolete `ifconfig -a`) to see the network interfaces on your server.

For `netstat`, run with `sudo` to see the pid for all listed ports.

## Firewalls
On Linux, check if `iptables` is preventing the remote connection. On Windows, check the Windows Firewall.

If it is acceptable (e.g. it is not a server in production), try turning off the firewall temporarily,
and testing connectivity again. Remember to re-enable it afterwards! On CentOS, this is `sudo service
iptables stop`. On Ubuntu, use `sudo ufw disable`. On Windows, press the Windows key and type 'Windows
Firewall with Advanced Security' to open the firewall tools, then click 'Windows Firewall Properties'
and set the firewall state to 'Off' in the Domain, Public and Private profiles.

If you cannot temporarily turn off the firewall, then look carefully at the firewall settings. For
example, execute `sudo iptables -n --list` and `iptables -t nat -n --list`.

## Cloud firewalls
Some clouds offer a firewall service, where ports need to be explicitly listed to be reachable.

For example, [security groups for EC2-classic]
(http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html#ec2-classic-security-groups)
have rules for the protocols and ports to be reachable from specific CIDRs.

Check these settings via the cloud provider's web-console (or API).

## Quick test of a listener port
It can be useful to start listening on a given port, and to then check if that port is reachable.
This is useful for testing basic connectivity when your service is not yet running, or to a
different port to compare behaviour, or to compare with another VM in the network.

The `nc` netcat tool is useful for this. For example, `nc -l 0.0.0.0 8080` will listen on port
TCP 8080 on all network interfaces. On another server, you can then run `echo hello from client
| nc <hostname> 8080`. If all works well, this will send "hello from client" over the TCP port 8080,
which will be written out by the `nc -l` process before exiting.

Similarly for UDP, you use `-lU`.

You may first have to install `nc`, e.g. with `sudo yum install -y nc` or `sudo apt-get install netcat`.

### Cloud load balancers
For some use-cases, it is good practice to use the load balancer service offered by the cloud provider
(e.g. [ELB in AWS](http://aws.amazon.com/elasticloadbalancing/) or the [Cloudstack Load Balancer]
(http://docs.cloudstack.apache.org/projects/cloudstack-installation/en/latest/network_setup.html#management-server-load-balancing))

The VMs can all be isolated within a private network, with access only through the load balancer service.

Debugging techniques here include ensuring connectivity from another jump server within the private
network, and careful checking of the load-balancer configuration from the Cloud Provider's web-console.

### DNAT
Use of DNAT is appropriate for some use-cases, where a particular port on a particular VM is to be
made available.

Debugging connectivity issues here is similar to the steps for a cloud load balancer. Ensure
connectivity from another jump server within the private network. Carefully check the NAT rules from
the Cloud Provider's web-console.

### Guest wifi
It is common for guest wifi to restrict access to only specific ports (e.g. 80 and 443, restricting
ssh over port 22 etc).

Normally your best bet is then to abandon the guest wifi (e.g. to tether to a mobile phone instead).

There are some unconventional workarounds such as [configuring sshd to listen on port 80 so you can
use an ssh tunnel](http://askubuntu.com/questions/107173/is-it-possible-to-ssh-through-port-80).
However, the firewall may well inspect traffic so sending non-http traffic over port 80 may still fail.
>>>>>>> ba27cf1b

{% readj _connectivity.md %}
3 changes: 3 additions & 0 deletions guide/ops/troubleshooting/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,8 @@ children:
- { path: going-deep-in-java-and-logs.md, title: Going Deep in Java and Logs }
- { path: memory-usage.md, title: Monitoring Memory Usage }
---
<<<<<<< HEAD

{% include list-children.html %}
=======
>>>>>>> ba27cf1b
3 changes: 3 additions & 0 deletions guide/start/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,10 @@ children:
- policies.md
- concept-quickstart.md
---
<<<<<<< HEAD

{% include list-children.html %}


=======
>>>>>>> ba27cf1b
3 changes: 3 additions & 0 deletions guide/start/managing.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
<<<<<<< HEAD
---
title: Monitoring and Managing Applications
title_in_menu: Monitoring and Managing Applications
Expand All @@ -10,6 +11,8 @@ children:
- { section: Effectors }
- { section: Activities }
---
=======
>>>>>>> ba27cf1b



Expand Down
You are viewing a condensed version of this merge commit. You can view the full changes here.