GithubHelp home page GithubHelp logo

rpi-cluster-lab-demos's Introduction

rpi-cluster-demo

PLEASE NOTE: This repo is currently not maintained.

This repo contains several use cases to play with the Hypriot Cluster Lab.

Before you start, read about this project's introduction blog post here.

We are very happy about feedback. Open an issue, create a PR or get in touch with us in the community chat.

rpi-cluster-lab-demos's People

Contributors

mathiasrenner avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

rpi-cluster-lab-demos's Issues

Issue with traefik demo - ERROR: for traefik Unable to find a node that satisfies the following conditions [port 8080 (Bridge mode) port 80 (Bridge mode)]

Hi,

Testing your traefik demo based on blog post:

$ docker-compose up -d
Creating network "traefik_default" with the default driver
Pulling traefik (hypriot/rpi-traefik:latest)...
pico-worker3: Pulling hypriot/rpi-traefik:latest...
pico-worker1: Pulling hypriot/rpi-traefik:latest...
pico-worker3: Pulling hypriot/rpi-traefik:latest... : downloaded
pico-worker1: Pulling hypriot/rpi-traefik:latest... : downloaded
pico-master: Pulling hypriot/rpi-traefik:latest... : downloaded
pico-worker2: Pulling hypriot/rpi-traefik:latest... : downloaded
Pulling whoami (hypriot/rpi-whoami:latest)...
pico-worker3: Pulling hypriot/rpi-whoami:latest... : downloaded
pico-master: Pulling hypriot/rpi-whoami:latest... : downloaded
pico-worker2: Pulling hypriot/rpi-whoami:latest... : downloaded
pico-worker1: Pulling hypriot/rpi-whoami:latest... : downloaded
Creating traefik_traefik_1

ERROR: for traefik  Unable to find a node that satisfies the following conditions 
[port 8080 (Bridge mode) port 80 (Bridge mode)]
[available container slots]
[hypriot.hierarchy==leader]
Traceback (most recent call last):
  File "<string>", line 3, in <module>
  File "compose/cli/main.py", line 63, in main
AttributeError: 'ProjectError' object has no attribute 'msg'
docker-compose returned -1

Here's what I have:

$ docker network ls
NETWORK ID          NAME                          DRIVER
e3e27937cdfc        nsttraefik_default            overlay             
f27f5e3dd111        pico-master/bridge            bridge              
add0f5da0fee        pico-master/docker_gwbridge   bridge              
2382555a1b28        pico-master/host              host                
aa5581fbf732        pico-master/none              null                
d034015d481c        pico-worker1/bridge           bridge              
008ea37e47f4        pico-worker1/host             host                
85c4bc920313        pico-worker1/none             null                
9e508a58f584        pico-worker2/bridge           bridge              
5dfa11eee949        pico-worker2/host             host                
db78c38a9881        pico-worker2/none             null                
ef094109865d        pico-worker3/bridge           bridge              
a06c065e67d6        pico-worker3/host             host                
8190a4a0f3b9        pico-worker3/none             null                
9345cae36199        traefik_default               overlay             

and:

$ echo $DOCKER_HOST
192.168.200.1:2378

and:

$ sudo cluster-lab health 

Internet Connection
  [PASS]   eth0 exists
  [PASS]   eth0 has an ip address
  [PASS]   Internet is reachable
  [PASS]   DNS works

Networking
  [PASS]   eth0.200 exists
  [PASS]   eth0.200 has correct IP from vlan network
  [PASS]   Cluster leader is reachable
  [PASS]   eth0.200 has exactly one IP
  [PASS]   eth0.200 has no local link address
  [PASS]   Avahi process exists
  [PASS]   Avahi is using eth0.200
  [PASS]   Avahi cluster-leader.service file exists

DNSmasq
  [PASS]   dnsmasq process exists
  [PASS]   /etc/dnsmasq.conf backup file exists

Docker
  [PASS]   Docker is running
  [PASS]   Docker is configured to use Consul as key-value store
  [PASS]   Docker is configured to listen via tcp at port 2375
  [PASS]   Docker listens on 192.168.200.1 via tcp at port 2375 (Docker-Engine)

Consul
  [PASS]   Consul Docker image exists
  [PASS]   Consul Docker container is running
  [PASS]   Consul is listening on port 8300
  [PASS]   Consul is listening on port 8301
  [PASS]   Consul is listening on port 8302
  [PASS]   Consul is listening on port 8400
  [PASS]   Consul is listening on port 8500
  [PASS]   Consul is listening on port 8600
  [PASS]   Consul API works
  [PASS]   Cluster-Node is pingable with IP 192.168.200.1
  [PASS]   Cluster-Node is pingable with IP 192.168.200.27
  [PASS]   Cluster-Node is pingable with IP 192.168.200.26
  [PASS]   Cluster-Node is pingable with IP 192.168.200.36
  [FAIL]   Cluster-Node is pingable with IP 192.168.200.49
  [FAIL]   No Cluster-Node is in status 'failed'
  [PASS]   Consul is able to talk to Docker-Engine on port 7946 (Serf)

Swarm
  [PASS]   Swarm-Join Docker container is running
  [PASS]   Swarm-Manage Docker container is running
  [PASS]   Number of Swarm and Consul nodes is equal which means our cluster is healthy

If you need something else, let me know !

I'll also check why my 4th node is out.

Update docker-compose.yml with traefik 1.0RC2

Hi,

With traefik 1.0RC2, seems the line is now --docker.endpoint=tcp://192.168.200.1:2378:

command: --web --docker --docker.domain=picocluster --logLevel=DEBUG --docker.endpoint=tcp://192.168.200.1:2378 --docker.watch

instead of:

command: --web --docker --docker.domain=picocluster --logLevel=DEBUG --docker.endpoint tcp://192.168.200.1:2378 --docker.watch

Otherwise, it refuses to start and says:

traefik_1  | Error : flag needs an argument: --docker.endpoint

To update once new hypriot/rpi-traefik is pushed to docker-hub :-)

Rename repo to support Intel demos?

Should we rename this repo to support other CPU platforms as well?

How should be structure the demos

  • armhf or rpi folder + amd64 folder

Or each demo has a sub directory with amd64 / rpi?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.