dockeryoctomender

Self-hosted mender fails to update artifact


I have a mender server running, created with these instructions: https://docs.mender.io/1.6/administration/production-installation

I have two raspberry pis successfully connecting to the server, but when I try to push updates to them, I get the following log (highlights only)

2018-11-06 08:56:42 +0000 UTC error: Can not fetch update image: Get https://s3.foo.co:9000/mender-artifact-storage/0c0f2858-26a6-4f7e-9bd6-b1cb96ee0508

I have the dns set up in route53, and I think it should be working (as the mender server runs on the same machine, under a different domain name, and the pis have no trouble connecting).

All docker volumes have been created, as described by the instructions, and this is the result of ./run ps:

                 Name                                Command               State           Ports
---------------------------------------------------------------------------------------------------------
menderproduction_mender-api-gateway_1     /entrypoint.sh                   Up      0.0.0.0:443->443/tcp
menderproduction_mender-conductor_1       /srv/start_conductor.sh          Up      8080/tcp
menderproduction_mender-deployments_1     /entrypoint.sh --config /e ...   Up      8080/tcp
menderproduction_mender-device-adm_1      /usr/bin/deviceadm --confi ...   Up      8080/tcp
menderproduction_mender-device-auth_1     /usr/bin/deviceauth --conf ...   Up      8080/tcp
menderproduction_mender-elasticsearch_1   /docker-entrypoint.sh elas ...   Up      9200/tcp, 9300/tcp
menderproduction_mender-gui_1             /entrypoint.sh                   Up      80/tcp
menderproduction_mender-inventory_1       /usr/bin/inventory --confi ...   Up      8080/tcp
menderproduction_mender-mongo_1           docker-entrypoint.sh mongod      Up      27017/tcp
menderproduction_mender-redis_1           /redis/entrypoint.sh             Up      6379/tcp
menderproduction_mender-useradm_1         /usr/bin/useradm --config  ...   Up      8080/tcp
menderproduction_minio_1                  minio server /export             Up      9000/tcp
menderproduction_storage-proxy_1          /usr/local/openresty/bin/o ...   Up      0.0.0.0:9000->9000/tcp

Solution

  • Would have preferred if you posted the full device log, but will give it a go anyway :).

    Note that fetching updates is done from the "minio" service which is on port 9000. All other communications occur on port 443 (HTTPS), and this seems to be working for you. Please make sure that port 9000 is accessible on your domain.

    Also note that if you check the device logs, the "fetch" URL that is printed is something that you can copy/past in to your browser (or wget) and it should start downloading. It is a pre-signed URL that is valid for a short period of time