Running Mender in a subnet

153 views
Skip to first unread message

Alan Martinovic

unread,
Jul 9, 2018, 6:57:46 PM7/9/18
to men...@lists.mender.io
Hi,
I was trying to set up mender in a local subnet to test a few things 
and speed thing up for the image downloads.

There is a server with a static ip of 192.168.1.10.
It will only be accessed by machines in the same subnet.
These are the copy-pastable commands to run on Lubuntu 18.04



    #Docker and docker compose installation
    sudo apt-get install \
        apt-transport-https \
        ca-certificates \
        curl \
        software-properties-common

    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
    sudo apt-key fingerprint 0EBFCD88

    sudo add-apt-repository \
       "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
       $(lsb_release -cs) \
       edge"

    sudo apt-get update
    sudo apt-get install docker-ce
    sudo curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
    sudo chmod +x /usr/local/bin/docker-compose
    sudo gpasswd -a $USER docker
    newgrp docker

    #Mender installation and config
    git clone -b 1.4.2 https://github.com/mendersoftware/integration mender-server
    cd mender-server
    cp -a template production
    cd production
    sed -i -e 's#/template/#/production/#g' prod.yml
    ./run pull
    CERT_API_CN=192.168.1.10 CERT_STORAGE_CN=192.168.1.10 ../keygen

    docker volume create --name=mender-artifacts
    docker volume create --name=mender-deployments-db
    docker volume create --name=mender-useradm-db
    docker volume create --name=mender-inventory-db
    docker volume create --name=mender-deviceadm-db
    docker volume create --name=mender-deviceauth-db
    docker volume create --name=mender-elasticsearch-db
    docker volume create --name=mender-redis-db

    sed -i "s|set-my-alias-here.com|192.168.1.10|" prod.yml
    sed -i "s|MINIO_ACCESS_KEY:|MINIO_ACCESS_KEY: mender-deployments|" prod.yml
    sed -i "s|MINIO_SECRET_KEY:|MINIO_SECRET_KEY: minio-password|" prod.yml
    sed -i "s|DEPLOYMENTS_AWS_AUTH_KEY:|DEPLOYMENTS_AWS_AUTH_KEY: mender-deployments|" prod.yml
    sed -i "s|DEPLOYMENTS_AWS_AUTH_SECRET:|DEPLOYMENTS_AWS_AUTH_SECRET: minio-password|" prod.yml

    ./run up -d
    sudo ./run exec mender-useradm /usr/bin/useradm create-user --username=us...@email.com --password=pass-extra
    ./run ps
    # Everything is up and running
    # Access https://192.168.1.10 from another machine
    # Log in throught the UI
    # The interface is there but the loading bars never stop and the error is printed:
    # Couldn't load deployments. Error: Unsuccessful HTTP response Retrying in 7 seconds


Another check shows a service restarting all the time:
    $ docker ps
    ...
    85b2d96e0ce1  mendersoftware/deployments:1.4.0  "/entrypoint.sh --co…" 15 minutes ago   Restarting (4) 26 seconds ago   menderproduction_mender-deployments_1

A deeper dive into the logs points to the following error:

    $ docker logs 85b2d96e0ce1
    WARNING: ca-certificates.crt does not contain exactly one certificate or CRL: skipping
    time="2018-07-09T22:39:28Z" level=info msg="Deployments Service, version unknown starting up" file=main.go func=main.cmdServer line=103 
    time="2018-07-09T22:39:28Z" level=info msg="automigrate is ON, will apply migrations" file=migrations.go func=migrations.Migrate line=48 
    time="2018-07-09T22:39:28Z" level=info msg="migrating deployment_service" file=migrations.go func=migrations.MigrateSingle line=70 
    time="2018-07-09T22:39:28Z" level=info msg="migration to version 1.2.1 skipped" db="deployment_service" file="migrator_simple.go" func="migrate.(*SimpleMigrator).Apply" line=125 
    time="2018-07-09T22:39:28Z" level=info msg="DB migrated to version 1.2.1" db="deployment_service" file="migrator_simple.go" func="migrate.(*SimpleMigrator).Apply" line=140 
    time="2018-07-09T22:39:28Z" level=info msg="Deployments Service, version unknown starting up" file=main.go func=main.cmdServer line=123 
    RequestError: send request failed
    caused by: Put https://192.168.1.10/mender-artifact-storage: x509: cannot validate certificate for 192.168.1.10 because it doesn't contain any IP SANs


Anyone knows what does this error point to and how to approach it?

Be Well,
Alan

Kristian Amlie

unread,
Jul 10, 2018, 2:42:44 AM7/10/18
to men...@lists.mender.io, Alan Martinovic
> <http://set-my-alias-here.com>|192.168.1.10|" prod.yml
>     sed -i "s|MINIO_ACCESS_KEY:|MINIO_ACCESS_KEY: mender-deployments|"
> prod.yml
>     sed -i "s|MINIO_SECRET_KEY:|MINIO_SECRET_KEY: minio-password|" prod.yml
>     sed -i "s|DEPLOYMENTS_AWS_AUTH_KEY:|DEPLOYMENTS_AWS_AUTH_KEY:
> mender-deployments|" prod.yml
>     sed -i "s|DEPLOYMENTS_AWS_AUTH_SECRET:|DEPLOYMENTS_AWS_AUTH_SECRET:
> minio-password|" prod.yml
>
>     ./run up -d
>     sudo ./run exec mender-useradm /usr/bin/useradm create-user
> --username=us...@email.com <mailto:us...@email.com> --password=pass-extra
I'm not an expert on the server, but I think you cannot use IPs as
endpoints, you must use hostnames. This is because TLS / HTTPS requires it.

--
Kristian

signature.asc

Alan Martinovic

unread,
Jul 10, 2018, 4:07:55 AM7/10/18
to Kristian Amlie, men...@lists.mender.io
Thanks for noticing,
I've changed all the IPs with a .local address.

"mender" is the servers hostname so it's pingable with mender.local
from the local network.

New error with mendersoftware/deployments:1.4.0


WARNING: ca-certificates.crt does not contain exactly one certificate or CRL: skipping
time="2018-07-10T07:57:17Z" level=info msg="Deployments Service, version unknown starting up" file=main.go func=main.cmdServer line=103 
time="2018-07-10T07:57:17Z" level=info msg="automigrate is ON, will apply migrations" file=migrations.go func=migrations.Migrate line=48 
time="2018-07-10T07:57:17Z" level=info msg="migrating deployment_service" file=migrations.go func=migrations.MigrateSingle line=70 
time="2018-07-10T07:57:17Z" level=info msg="migration to version 1.2.1 skipped" db="deployment_service" file="migrator_simple.go" func="migrate.(*SimpleMigrator).Apply" line=125 
time="2018-07-10T07:57:17Z" level=info msg="DB migrated to version 1.2.1" db="deployment_service" file="migrator_simple.go" func="migrate.(*SimpleMigrator).Apply" line=140 
time="2018-07-10T07:57:17Z" level=info msg="Deployments Service, version unknown starting up" file=main.go func=main.cmdServer line=123 
RequestError: send request failed
caused by: Put https://mender.local/mender-artifact-storage: dial tcp 172.18.0.11:443: connect: connection refused


Grepped the mender repo for "dial tcp 172.18.0.11:443" without success.

Don't know where this IP is coming from.
mender.local resolves to 192.168.1.10

Oleksandr Miliukov

unread,
Jul 10, 2018, 5:17:00 AM7/10/18
to men...@lists.mender.io, Alan Martinovic
I guess the issue can be caused by the following configuration changes:
>     sed -i "s|MINIO_ACCESS_KEY:|MINIO_ACCESS_KEY: mender-deployments|"
> prod.yml
>     sed -i "s|MINIO_SECRET_KEY:|MINIO_SECRET_KEY: minio-password|" prod.yml

I can advice to leave MINIO_ACCESS_KEY and MINIO_SECRET_KEY empty to start playing with Mender itself and then continue with improving security as a separate step.

P.S.: also recommend to take a look on upcoming 1.6 release where important improvements and bug fixes for Mender server will be released.

// Alex

--
You received this message because you are subscribed to the Google Groups "Mender List mender.io" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mender+un...@lists.mender.io.
To post to this group, send email to men...@lists.mender.io.
Visit this group at https://groups.google.com/a/lists.mender.io/group/mender/.

signature.asc

Alan Martinovic

unread,
Jul 10, 2018, 7:52:54 AM7/10/18
to Oleksandr Miliukov, men...@lists.mender.io
Thanks Oleksandr,
did what you suggested and also fixed some errors with the hostname.

I'm not setting niter MINIO_ACCESS_KEY and MINIO_SECRET_KEY 
nor DEPLOYMENTS_AWS_AUTH_KEY and DEPLOYMENTS_AWS_AUTH_SECRET.
Since they were dependent on minio keys.

Currently these are the commands to run on a clean Lubuntu 18.04 
with a static ip set.


    # Setup the hostname
    sudo sed -i "s|\s$HOSTNAME| mender|" /etc/hosts
    sudo sh -c "echo mender > /etc/hostname"
    reboot
    CERT_API_CN=mender.local CERT_STORAGE_CN=mender.local ../keygen

    docker volume create --name=mender-artifacts
    docker volume create --name=mender-deployments-db
    docker volume create --name=mender-useradm-db
    docker volume create --name=mender-inventory-db
    docker volume create --name=mender-deviceadm-db
    docker volume create --name=mender-deviceauth-db
    docker volume create --name=mender-elasticsearch-db
    docker volume create --name=mender-redis-db

    sed -i "s|set-my-alias-here.com|mender.local|" prod.yml

    ./run up -d
    sudo ./run exec mender-useradm /usr/bin/useradm create-user --username=us...@email.com --password=pass-extra
    ./run ps


Everything is up and running
Access https://mender.local from another machine
Log in throught the UI:
   * devices are listed now succesfully
   * Artifacts load endlessly without an error
   * Deployments load endlessly without an error 

Artifacts couldn't be loaded. Error: Unsuccessful HTTP response Retrying in 56 seconds
mendersoftware/deployments:1.4.0 restarts ending with this error log:

WARNING: ca-certificates.crt does not contain exactly one certificate or CRL: skipping
time="2018-07-10T11:46:05Z" level=info msg="Deployments Service, version unknown starting up" file=main.go func=main.cmdServer line=103 
time="2018-07-10T11:46:05Z" level=info msg="automigrate is ON, will apply migrations" file=migrations.go func=migrations.Migrate line=48 
time="2018-07-10T11:46:05Z" level=info msg="migrating deployment_service" file=migrations.go func=migrations.MigrateSingle line=70 
time="2018-07-10T11:46:05Z" level=info msg="migration to version 1.2.1 skipped" db="deployment_service" file="migrator_simple.go" func="migrate.(*SimpleMigrator).Apply" line=125 
time="2018-07-10T11:46:05Z" level=info msg="DB migrated to version 1.2.1" db="deployment_service" file="migrator_simple.go" func="migrate.(*SimpleMigrator).Apply" line=140 
time="2018-07-10T11:46:05Z" level=info msg="Deployments Service, version unknown starting up" file=main.go func=main.cmdServer line=123 
NoCredentialProviders: no valid providers in chain. Deprecated.
For verbose messaging see aws.Config.CredentialsChainVerboseErrors

To unsubscribe from this group and stop receiving emails from it, send an email to mender+unsubscribe@lists.mender.io.

Oleksandr Miliukov

unread,
Jul 10, 2018, 8:40:00 AM7/10/18
to Alan Martinovic, men...@lists.mender.io
As the next step I would probably try to configure DEPLOYMENTS_AWS_URI, DEPLOYMENTS_AWS_AUTH_SECRET and DEPLOYMENTS_AWS_AUTH_KEY. My bad, leaving MINIO_ACCESS_KEY and MINIO_SECRET_KEY empty is not the best idea...
When I was following by the documentation https://docs.mender.io/1.5/administration/production-installation I got the following working commands list (for version 1.5.0), maybe you find it useful.

# clone git repo
echo -e "\n>> Clonning git repo...\n"
git clone -b 1.5.0 https://github.com/mendersoftware/integration mender-server
cd mender-server
cp -a template production
cd production

# generate keys and passwords
echo -e "\n>> Generating keys and passwords...\n”
export CERT_API_CN=server.mender.local
export CERT_STORAGE_CN=s3.mender.local
../keygen
PASSWORD=$(pwgen 16 1)

# make required changes in configuration
echo -e "\n>> Modifying configuration file...\n"
sed -i -e 's#/template/#/production/#g' prod.yml
sed -i "s/- set-my-alias-here.com/- ${CERT_STORAGE_CN}/g" ./prod.yml
sed -i "s/MINIO_ACCESS_KEY:/MINIO_ACCESS_KEY: mender-deployments/g" ./prod.yml
sed -i "s/MINIO_SECRET_KEY:/MINIO_SECRET_KEY: ${PASSWORD}/g" ./prod.yml
sed -i "s/DEPLOYMENTS_AWS_AUTH_KEY:/DEPLOYMENTS_AWS_AUTH_KEY: mender-deployments/g" ./prod.yml
sed -i "s/DEPLOYMENTS_AWS_AUTH_SECRET:/DEPLOYMENTS_AWS_AUTH_SECRET: ${PASSWORD}/g" ./prod.yml
sed -i "s/DEPLOYMENTS_AWS_URI: https:\/\/set-my-alias-here.com/DEPLOYMENTS_AWS_URI: https:\/\/${CERT_STORAGE_CN}:9000/g" ./prod.yml
sed -i "s/ALLOWED_HOSTS: my-gateway-dns-name/ALLOWED_HOSTS: ${CERT_API_CN}/g" ./prod.yml

# create persistent volumes
echo -e "\n>> Creating persistent volumes...\n"
sudo docker volume create --name=mender-artifacts
sudo docker volume create --name=mender-deployments-db
sudo docker volume create --name=mender-useradm-db
sudo docker volume create --name=mender-inventory-db
sudo docker volume create --name=mender-deviceadm-db
sudo docker volume create --name=mender-deviceauth-db
sudo docker volume create --name=mender-elasticsearch-db
sudo docker volume create --name=mender-redis-db

# start all services
echo -e "\n>> Starting services...\n"
sudo ./run up -d


// Alex
signature.asc

Alan Martinovic

unread,
Jul 10, 2018, 10:45:09 AM7/10/18
to Oleksandr Miliukov, men...@lists.mender.io
Cool thanks.
Your solution results in a UI that shows no errors nor endless loadings.

Need to check out how do the devices behave and set up the signing key,
but so far so good.
Here are all the full steps to get it running on a fresh Lubuntu 18.04


#### Setup the hostname
sudo sed -i "s|\s$HOSTNAME| mender|" /etc/hosts
sudo sh -c "echo mender > /etc/hostname"
reboot


#### Docker and docker compose installation
sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    software-properties-common

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo apt-key fingerprint 0EBFCD88

sudo add-apt-repository \
   $(lsb_release -cs) \
   edge"

sudo apt-get update
sudo apt-get install docker-ce
sudo curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo gpasswd -a $USER docker
newgrp docker


##### Mender installation and config

sudo apt-get install pwgen
git clone -b 1.5.0 https://github.com/mendersoftware/integration mender-server
cd mender-server
cp -a template production
cd production
export CERT_API_CN=server.mender.local
export CERT_STORAGE_CN=s3.mender.local
../keygen
PASSWORD=$(pwgen 16 1)
sed -i -e 's#/template/#/production/#g' prod.yml
sed -i "s/- set-my-alias-here.com/- ${CERT_STORAGE_CN}/g" ./prod.yml
sed -i "s/MINIO_ACCESS_KEY:/MINIO_ACCESS_KEY: mender-deployments/g" ./prod.yml
sed -i "s/MINIO_SECRET_KEY:/MINIO_SECRET_KEY: ${PASSWORD}/g" ./prod.yml
sed -i "s/DEPLOYMENTS_AWS_AUTH_KEY:/DEPLOYMENTS_AWS_AUTH_KEY: mender-deployments/g" ./prod.yml
sed -i "s/DEPLOYMENTS_AWS_AUTH_SECRET:/DEPLOYMENTS_AWS_AUTH_SECRET: ${PASSWORD}/g" ./prod.yml
sed -i "s/DEPLOYMENTS_AWS_URI: https:\/\/set-my-alias-here.com/DEPLOYMENTS_AWS_URI: https:\/\/${CERT_STORAGE_CN}:9000/g" ./prod.yml
sed -i "s/ALLOWED_HOSTS: my-gateway-dns-name/ALLOWED_HOSTS: ${CERT_API_CN}/g" ./prod.yml
docker volume create --name=mender-artifacts
docker volume create --name=mender-deployments-db
docker volume create --name=mender-useradm-db
docker volume create --name=mender-inventory-db
docker volume create --name=mender-deviceadm-db
docker volume create --name=mender-deviceauth-db
docker volume create --name=mender-elasticsearch-db
docker volume create --name=mender-redis-db
./run up -d
./run exec mender-useradm /usr/bin/useradm create-user --username=us...@email.com --password=pass-extra


The UI is accessed on https://mender.local
The credentials are:
    us...@email.com  
    pass-extra



To unsubscribe from this group and stop receiving emails from it, send an email to mender+un...@lists.mender.io.

Ari-Pekka Sihvonen

unread,
Jul 11, 2018, 8:02:06 AM7/11/18
to men...@lists.mender.io
After update the system booted from partition 3, the update was made at partition 2
Here is syslog of the boot after update 
Jul 11 11:55:42 raspberrypi3 mender[442]: level=info msg="Commiting update" module=device 
Jul 11 11:55:50 raspberrypi3 mender[548]: level=info msg="API Gateway certificate (in PEM format): \n-----BEGIN CERTIFICATE-----...
Jul 11 11:55:50 raspberrypi3 mender[548]: level=info msg="Issuer: [], Valid from: 2018-05-14 07:31:33 +0000 UTC, Valid to: 2028-05-11 07:31:33 +0000 UTC" module=client 
Jul 11 11:55:50 raspberrypi3 mender[548]: level=warning msg="certificate verification skipped.." module=client 
Jul 11 11:55:50 raspberrypi3 mender[548]: level=info msg="State transition: init [none] -> init [none]" module=mender 
Jul 11 11:55:50 raspberrypi3 mender[548]: level=info msg="handling loaded state: reboot" module=state 
Jul 11 11:55:50 raspberrypi3 mender[548]: level=error msg="got invalid entrypoint into the state machine: state: reboot" module=state 
Jul 11 11:55:50 raspberrypi3 mender[548]: level=info msg="State transition: init [none] -> update-error [ArtifactFailure]" module=mender 
Jul 11 11:55:50 raspberrypi3 mender[548]: level=info msg="State transition: update-error [ArtifactFailure] -> update-status-report [none]" module=mender 
Jul 11 11:55:50 raspberrypi3 mender[548]: level=info msg="State transition: update-status-report [ArtifactFailure] -> idle [Idle]" module=mender 
Jul 11 11:55:50 raspberrypi3 mender[548]: level=info msg="authorization data present and valid" module=mender 
Jul 11 11:55:50 raspberrypi3 mender[548]: level=info msg="State transition: idle [Idle] -> check-wait [Idle]" module=mender 
Jul 11 11:55:50 raspberrypi3 mender[548]: level=info msg="State transition: check-wait [Idle] -> inventory-update [Sync]" module=mender 
Jul 11 11:55:50 raspberrypi3 mender[548]: level=info msg="State transition: inventory-update [Sync] -> check-wait [Idle]" module=mender 
Jul 11 11:55:50 raspberrypi3 mender[548]: level=info msg="State transition: check-wait [Idle] -> update-check [Sync]" module=mender 
Jul 11 11:55:50 raspberrypi3 mender[548]: level=info msg="State transition: update-check [Sync] -> check-wait [Idle]" module=mender 

Web UI announces that update was failure

2018-07-11 11:46:02 +0000 UTC debug: handle update fetch state 2018-07-11 11:46:03 +0000 UTC debug: status reported, response &{204 No Content %!s(int=204) HTTP/2.0 %!s(int=2) %!s(int=0) map[X-Deployments-Version:[unknown] Strict-Transport-Security:[max-age=63072000; includeSubdomains; preload] X-Content-Type-Options:[nosniff] Pragma:[no-cache] Server:[openresty/1.13.6.1] Content-Encoding:[gzip] X-Men-Requestid:[7700d073-b74e-450b-8567-920fc28da57c] X-Frame-Options:[DENY] X-Xss-Protection:[1; mode=block] Cache-Control:[no-cache, no-store] Date:[Wed, 11 Jul 2018 11:46:03 GMT] Vary:[Accept-Encoding]] %!s(*http.cancelTimerBody=&{0x1d687c {0x11210220} 0x1ddfc4}) %!s(int64=0) [] %!s(bool=false) %!s(bool=false) map[] %!s(*http.Request=&{PUT 0x1126ea80 HTTP/1.1 1 1 map[Content-Type:[application/json] Authorization:[Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1MzE4OTEzOTEsImp0aSI6IjU3OTdhYTUxLTIwZDgtNDQ0My1hMTQ5LWM3MmVlMzc2YzYyMiIsImlzcyI6Ik1lbmRlciIsInN1YiI6IjViNDU5NDFlN2Q4ZDY3MDAwMWQ5YzQ3NCIsIm1lbmRlci5kZXZpY2UiOnRydWV9.x-QxrlTZpGyqLxcrCHsxYqCJBDkqvjEY1H7MGuAZUOUb9w__DMCT-E7V5qKbh3dU0gsYISNefhSexEVgtc8mivOhmKBjvRDQ6KS4xYqnLfGzInECCCG2hwp2635_aHR-UNbnvpQLjKFAtE8ecxX-RWXax_no2oUt8y5yJX0ybxFm7VhWk4u_0Mnt3Hx-p_Gxnt2sKmZuSeqlvbeahyqJ7l0mNRUP7OXqwzu5UgTSYqwaykGNs7Uw2fyYu-D6k_5R9mkY8xKVjr0TLgbnjHe2BWcewgdSLmcCCwS7iFI7PaZzRbj6t4OH6mADomyM_sHiQEGnAxyKLPINI5jPOIrYPRxZ5ZEq-oLawcnBTgEotkNoO2gpWDzvIY_pWYhE_BvvtRnB2rvihGIHXrT-ljPfTW3i2thXN9LmiOezwPQn9xDoNcXKRP5ZBJVRujcsvWN1TqLX5TZNGfuZ2dTsepr4NBZuD6EasiNTbPkoUQE0jA3VuXqQKKSYE4vfzfrvpPQF]] {0x11297080} 0x1d8020 25 [] false update.bluefors.com map[] map[] <nil> map[] <nil> 0x114d11c0 <nil> <nil>}) %!s(*tls.ConnectionState=&{771 true false 49196 h2 true [0x114f3900] [] [] [] [218 240 151 124 132 208 201 245 32 253 122 71]})} 2018-07-11 11:46:03 +0000 UTC debug: Received fetch update response &{200 OK 200 HTTP/1.1 1 1 map[X-Frame-Options:[DENY] Last-Modified:[Wed, 11 Jul 2018 04:44:40 GMT] Strict-Transport-Security:[max-age=63072000; includeSubdomains; preload] X-Content-Type-Options:[nosniff] Content-Type:[application/vnd.mender-artifact] Content-Length:[209055744] Connection:[keep-alive] Accept-Ranges:[bytes] Etag:["3c133637c8c027e285026661a6a6a0d9"] Vary:[Origin] X-Amz-Request-Id:[VHONC9J8J0ZNIJUT] Server:[openresty/1.11.2.2] Date:[Wed, 11 Jul 2018 11:46:03 GMT]] 0x1143aa90 209055744 [] false false map[] 0x1132a480 0x1162a060}+ 2018-07-11 11:46:03 +0000 UTC info: State transition: update-fetch [Download] -> update-store [Download] 2018-07-11 11:46:03 +0000 UTC debug: handle update install state 2018-07-11 11:46:03 +0000 UTC debug: status reported, response &{204 No Content %!s(int=204) HTTP/2.0 %!s(int=2) %!s(int=0) map[Date:[Wed, 11 Jul 2018 11:46:03 GMT] Content-Encoding:[gzip] Vary:[Accept-Encoding] X-Frame-Options:[DENY] X-Content-Type-Options:[nosniff] Server:[openresty/1.13.6.1] X-Deployments-Version:[unknown] X-Men-Requestid:[b41b0250-bfc3-49e6-985d-09a7635175fd] Strict-Transport-Security:[max-age=63072000; includeSubdomains; preload] X-Xss-Protection:[1; mode=block] Cache-Control:[no-cache, no-store] Pragma:[no-cache]] %!s(*http.cancelTimerBody=&{0x1d687c {0x11210220} 0x1ddfc4}) %!s(int64=0) [] %!s(bool=false) %!s(bool=false) map[] %!s(*http.Request=&{PUT 0x1126ecc0 HTTP/1.1 1 1 map[Authorization:[Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1MzE4OTEzOTEsImp0aSI6IjU3OTdhYTUxLTIwZDgtNDQ0My1hMTQ5LWM3MmVlMzc2YzYyMiIsImlzcyI6Ik1lbmRlciIsInN1YiI6IjViNDU5NDFlN2Q4ZDY3MDAwMWQ5YzQ3NCIsIm1lbmRlci5kZXZpY2UiOnRydWV9.x-QxrlTZpGyqLxcrCHsxYqCJBDkqvjEY1H7MGuAZUOUb9w__DMCT-E7V5qKbh3dU0gsYISNefhSexEVgtc8mivOhmKBjvRDQ6KS4xYqnLfGzInECCCG2hwp2635_aHR-UNbnvpQLjKFAtE8ecxX-RWXax_no2oUt8y5yJX0ybxFm7VhWk4u_0Mnt3Hx-p_Gxnt2sKmZuSeqlvbeahyqJ7l0mNRUP7OXqwzu5UgTSYqwaykGNs7Uw2fyYu-D6k_5R9mkY8xKVjr0TLgbnjHe2BWcewgdSLmcCCwS7iFI7PaZzRbj6t4OH6mADomyM_sHiQEGnAxyKLPINI5jPOIrYPRxZ5ZEq-oLawcnBTgEotkNoO2gpWDzvIY_pWYhE_BvvtRnB2rvihGIHXrT-ljPfTW3i2thXN9LmiOezwPQn9xDoNcXKRP5ZBJVRujcsvWN1TqLX5TZNGfuZ2dTsepr4NBZuD6EasiNTbPkoUQE0jA3VuXqQKKSYE4vfzfrvpPQF] Content-Type:[application/json]] {0x112972c0} 0x1d8020 25 [] false update.bluefors.com map[] map[] <nil> map[] <nil> 0x114d1440 <nil> <nil>}) %!s(*tls.ConnectionState=&{771 true false 49196 h2 true [0x114f3900] [] [] [] [218 240 151 124 132 208 201 245 32 253 122 71]})} 2018-07-11 11:46:03 +0000 UTC debug: Read data from device manifest file: device_type=raspberrypi3 2018-07-11 11:46:04 +0000 UTC debug: Found needed line: device_type=raspberrypi3 2018-07-11 11:46:04 +0000 UTC debug: Current manifest data: raspberrypi3 2018-07-11 11:46:04 +0000 UTC debug: checking if device [raspberrypi3] is on compatibile device list: [raspberrypi3] 2018-07-11 11:46:04 +0000 UTC debug: installing update bf-bridge_0.3.9-proto3.rootfs.ext4 of size 973078528 2018-07-11 11:46:04 +0000 UTC debug: Trying to install update of size: 973078528 2018-07-11 11:46:04 +0000 UTC debug: Have U-Boot variable: mender_boot_part=2 2018-07-11 11:46:04 +0000 UTC debug: List of U-Boot variables:map[mender_boot_part:2] 2018-07-11 11:46:04 +0000 UTC debug: Setting active partition from mount candidate: /dev/mmcblk0p2 2018-07-11 11:46:04 +0000 UTC debug: Detected inactive partition /dev/mmcblk0p3, based on active partition /dev/mmcblk0p2 2018-07-11 11:46:04 +0000 UTC info: opening device /dev/mmcblk0p3 for writing 2018-07-11 11:46:04 +0000 UTC info: partition /dev/mmcblk0p3 size: 973078528 2018-07-11 11:55:10 +0000 UTC info: wrote 973078528/973078528 bytes of update to device /dev/mmcblk0p3 2018-07-11 11:55:14 +0000 UTC debug: installer: successfully read artifact [name: bf-bridge_0.3.9-proto3; version: 2; compatible devices: [raspberrypi3]] 2018-07-11 11:55:14 +0000 UTC debug: status reported, response &{204 No Content %!s(int=204) HTTP/2.0 %!s(int=2) %!s(int=0) map[Strict-Transport-Security:[max-age=63072000; includeSubdomains; preload] X-Frame-Options:[DENY] X-Content-Type-Options:[nosniff] X-Xss-Protection:[1; mode=block] Date:[Wed, 11 Jul 2018 11:55:14 GMT] X-Deployments-Version:[unknown] Vary:[Accept-Encoding] X-Men-Requestid:[61335da3-24b0-43a9-8e91-f787bb13b43f] Cache-Control:[no-cache, no-store] Pragma:[no-cache] Server:[openresty/1.13.6.1] Content-Encoding:[gzip]] %!s(*http.cancelTimerBody=&{0x1d687c {0x11210220} 0x1ddfc4}) %!s(int64=0) [] %!s(bool=false) %!s(bool=false) map[] %!s(*http.Request=&{PUT 0x11560040 HTTP/1.1 1 1 map[Content-Type:[application/json] Authorization:[Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1MzE4OTEzOTEsImp0aSI6IjU3OTdhYTUxLTIwZDgtNDQ0My1hMTQ5LWM3MmVlMzc2YzYyMiIsImlzcyI6Ik1lbmRlciIsInN1YiI6IjViNDU5NDFlN2Q4ZDY3MDAwMWQ5YzQ3NCIsIm1lbmRlci5kZXZpY2UiOnRydWV9.x-QxrlTZpGyqLxcrCHsxYqCJBDkqvjEY1H7MGuAZUOUb9w__DMCT-E7V5qKbh3dU0gsYISNefhSexEVgtc8mivOhmKBjvRDQ6KS4xYqnLfGzInECCCG2hwp2635_aHR-UNbnvpQLjKFAtE8ecxX-RWXax_no2oUt8y5yJX0ybxFm7VhWk4u_0Mnt3Hx-p_Gxnt2sKmZuSeqlvbeahyqJ7l0mNRUP7OXqwzu5UgTSYqwaykGNs7Uw2fyYu-D6k_5R9mkY8xKVjr0TLgbnjHe2BWcewgdSLmcCCwS7iFI7PaZzRbj6t4OH6mADomyM_sHiQEGnAxyKLPINI5jPOIrYPRxZ5ZEq-oLawcnBTgEotkNoO2gpWDzvIY_pWYhE_BvvtRnB2rvihGIHXrT-ljPfTW3i2thXN9LmiOezwPQn9xDoNcXKRP5ZBJVRujcsvWN1TqLX5TZNGfuZ2dTsepr4NBZuD6EasiNTbPkoUQE0jA3VuXqQKKSYE4vfzfrvpPQF]] {0x1162a0c0} 0x1d8020 25 [] false update.bluefors.com map[] map[] <nil> map[] <nil> 0x1151e040 <nil> <nil>}) %!s(*tls.ConnectionState=&{771 true false 49196 h2 true [0x1162c280] [] [] [] [121 41 93 171 201 177 65 239 179 231 134 2]})} 2018-07-11 11:55:14 +0000 UTC info: State transition: update-store [Download] -> update-install [ArtifactInstall] 2018-07-11 11:55:14 +0000 UTC debug: statescript: timeout for executing scripts is not defined; using default of 60 seconds 2018-07-11 11:55:14 +0000 UTC debug: statescript: timeout for executing scripts is not defined; using default of 60 seconds 2018-07-11 11:55:14 +0000 UTC debug: status reported, response &{204 No Content %!s(int=204) HTTP/2.0 %!s(int=2) %!s(int=0) map[Date:[Wed, 11 Jul 2018 11:55:14 GMT] Content-Encoding:[gzip] X-Men-Requestid:[1fd88c86-7d44-4665-a82a-a6834a9daa47] Strict-Transport-Security:[max-age=63072000; includeSubdomains; preload] X-Frame-Options:[DENY] X-Content-Type-Options:[nosniff] X-Xss-Protection:[1; mode=block] Cache-Control:[no-cache, no-store] Server:[openresty/1.13.6.1] Vary:[Accept-Encoding] X-Deployments-Version:[unknown] Pragma:[no-cache]] %!s(*http.cancelTimerBody=&{0x1d687c {0x11210220} 0x1ddfc4}) %!s(int64=0) [] %!s(bool=false) %!s(bool=false) map[] %!s(*http.Request=&{PUT 0x11212480 HTTP/1.1 1 1 map[Content-Type:[application/json] Authorization:[Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1MzE4OTEzOTEsImp0aSI6IjU3OTdhYTUxLTIwZDgtNDQ0My1hMTQ5LWM3MmVlMzc2YzYyMiIsImlzcyI6Ik1lbmRlciIsInN1YiI6IjViNDU5NDFlN2Q4ZDY3MDAwMWQ5YzQ3NCIsIm1lbmRlci5kZXZpY2UiOnRydWV9.x-QxrlTZpGyqLxcrCHsxYqCJBDkqvjEY1H7MGuAZUOUb9w__DMCT-E7V5qKbh3dU0gsYISNefhSexEVgtc8mivOhmKBjvRDQ6KS4xYqnLfGzInECCCG2hwp2635_aHR-UNbnvpQLjKFAtE8ecxX-RWXax_no2oUt8y5yJX0ybxFm7VhWk4u_0Mnt3Hx-p_Gxnt2sKmZuSeqlvbeahyqJ7l0mNRUP7OXqwzu5UgTSYqwaykGNs7Uw2fyYu-D6k_5R9mkY8xKVjr0TLgbnjHe2BWcewgdSLmcCCwS7iFI7PaZzRbj6t4OH6mADomyM_sHiQEGnAxyKLPINI5jPOIrYPRxZ5ZEq-oLawcnBTgEotkNoO2gpWDzvIY_pWYhE_BvvtRnB2rvihGIHXrT-ljPfTW3i2thXN9LmiOezwPQn9xDoNcXKRP5ZBJVRujcsvWN1TqLX5TZNGfuZ2dTsepr4NBZuD6EasiNTbPkoUQE0jA3VuXqQKKSYE4vfzfrvpPQF]] {0x11296600} 0x1d8020 24 [] false update.bluefors.com map[] map[] <nil> map[] <nil> 0x114d07c0 <nil> <nil>}) %!s(*tls.ConnectionState=&{771 true false 49196 h2 true [0x1162c280] [] [] [] [121 41 93 171 201 177 65 239 179 231 134 2]})} 2018-07-11 11:55:14 +0000 UTC debug: Inactive partition: /dev/mmcblk0p3 2018-07-11 11:55:14 +0000 UTC debug: Marking inactive partition (/dev/mmcblk0p3) as the new boot candidate. 2018-07-11 11:55:14 +0000 UTC info: Enabling partition with new image installed to be a boot candidate: 3 2018-07-11 11:55:14 +0000 UTC debug: Marking inactive partition as a boot candidate successful. 2018-07-11 11:55:14 +0000 UTC info: State transition: update-install [ArtifactInstall] -> reboot [ArtifactReboot_Enter] 2018-07-11 11:55:14 +0000 UTC debug: statescript: timeout for executing scripts is not defined; using default of 60 seconds 2018-07-11 11:55:14 +0000 UTC debug: statescript: timeout for executing scripts is not defined; using default of 60 seconds 2018-07-11 11:55:14 +0000 UTC debug: handling reboot state 2018-07-11 11:55:14 +0000 UTC debug: status reported, response &{204 No Content %!s(int=204) HTTP/2.0 %!s(int=2) %!s(int=0) map[Strict-Transport-Security:[max-age=63072000; includeSubdomains; preload] X-Frame-Options:[DENY] X-Content-Type-Options:[nosniff] X-Men-Requestid:[312dda90-3dd8-409c-b06c-3aa8b65aad64] Date:[Wed, 11 Jul 2018 11:55:14 GMT] Content-Encoding:[gzip] Vary:[Accept-Encoding] X-Deployments-Version:[unknown] X-Xss-Protection:[1; mode=block] Cache-Control:[no-cache, no-store] Pragma:[no-cache] Server:[openresty/1.13.6.1]] %!s(*http.cancelTimerBody=&{0x1d687c {0x11210220} 0x1ddfc4}) %!s(int64=0) [] %!s(bool=false) %!s(bool=false) map[] %!s(*http.Request=&{PUT 0x11546380 HTTP/1.1 1 1 map[Content-Type:[application/json] Authorization:[Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1MzE4OTEzOTEsImp0aSI6IjU3OTdhYTUxLTIwZDgtNDQ0My1hMTQ5LWM3MmVlMzc2YzYyMiIsImlzcyI6Ik1lbmRlciIsInN1YiI6IjViNDU5NDFlN2Q4ZDY3MDAwMWQ5YzQ3NCIsIm1lbmRlci5kZXZpY2UiOnRydWV9.x-QxrlTZpGyqLxcrCHsxYqCJBDkqvjEY1H7MGuAZUOUb9w__DMCT-E7V5qKbh3dU0gsYISNefhSexEVgtc8mivOhmKBjvRDQ6KS4xYqnLfGzInECCCG2hwp2635_aHR-UNbnvpQLjKFAtE8ecxX-RWXax_no2oUt8y5yJX0ybxFm7VhWk4u_0Mnt3Hx-p_Gxnt2sKmZuSeqlvbeahyqJ7l0mNRUP7OXqwzu5UgTSYqwaykGNs7Uw2fyYu-D6k_5R9mkY8xKVjr0TLgbnjHe2BWcewgdSLmcCCwS7iFI7PaZzRbj6t4OH6mADomyM_sHiQEGnAxyKLPINI5jPOIrYPRxZ5ZEq-oLawcnBTgEotkNoO2gpWDzvIY_pWYhE_BvvtRnB2rvihGIHXrT-ljPfTW3i2thXN9LmiOezwPQn9xDoNcXKRP5ZBJVRujcsvWN1TqLX5TZNGfuZ2dTsepr4NBZuD6EasiNTbPkoUQE0jA3VuXqQKKSYE4vfzfrvpPQF]] {0x11300a20} 0x1d8020 23 [] false update.bluefors.com map[] map[] <nil> map[] <nil> 0x1126a280 <nil> <nil>}) %!s(*tls.ConnectionState=&{771 true false 49196 h2 true [0x1162c280] [] [] [] [121 41 93 171 201 177 65 239 179 231 134 2]})} 2018-07-11 11:55:14 +0000 UTC info: rebooting device 2018-07-11 11:55:50 +0000 UTC error: got invalid entrypoint into the state machine: state: reboot 2018-07-11 11:55:50 +0000 UTC info: State transition: init [none] -> update-error [ArtifactFailure] 2018-07-11 11:55:50 +0000 UTC debug: transitioning to error state 2018-07-11 11:55:50 +0000 UTC debug: statescript: timeout for executing scripts is not defined; using default of 60 seconds 2018-07-11 11:55:50 +0000 UTC debug: handle update error state 2018-07-11 11:55:50 +0000 UTC info: State transition: update-error [ArtifactFailure] -> update-status-report [none] 2018-07-11 11:55:50 +0000 UTC debug: handle update status report state 2018-07-11 11:55:50 +0000 UTC debug: status reported, response &{204 No Content %!s(int=204) HTTP/2.0 %!s(int=2) %!s(int=0) map[X-Men-Requestid:[22b49f16-a5f8-4fc5-9ac8-235ec9e4b883] Cache-Control:[no-cache, no-store] Server:[openresty/1.13.6.1] Date:[Wed, 11 Jul 2018 11:55:50 GMT] Vary:[Accept-Encoding] X-Frame-Options:[DENY] X-Content-Type-Options:[nosniff] X-Xss-Protection:[1; mode=block] Pragma:[no-cache] Content-Encoding:[gzip] X-Deployments-Version:[unknown] Strict-Transport-Security:[max-age=63072000; includeSubdomains; preload]] %!s(*http.cancelTimerBody=&{0x1d687c {0x11c6eb40} 0x1ddfc4}) %!s(int64=0) [] %!s(bool=false) %!s(bool=false) map[] %!s(*http.Request=&{PUT 0x11f73d00 HTTP/1.1 1 1 map[Content-Type:[application/json] Authorization:[Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1MzE4OTEzOTEsImp0aSI6IjU3OTdhYTUxLTIwZDgtNDQ0My1hMTQ5LWM3MmVlMzc2YzYyMiIsImlzcyI6Ik1lbmRlciIsInN1YiI6IjViNDU5NDFlN2Q4ZDY3MDAwMWQ5YzQ3NCIsIm1lbmRlci5kZXZpY2UiOnRydWV9.x-QxrlTZpGyqLxcrCHsxYqCJBDkqvjEY1H7MGuAZUOUb9w__DMCT-E7V5qKbh3dU0gsYISNefhSexEVgtc8mivOhmKBjvRDQ6KS4xYqnLfGzInECCCG2hwp2635_aHR-UNbnvpQLjKFAtE8ecxX-RWXax_no2oUt8y5yJX0ybxFm7VhWk4u_0Mnt3Hx-p_Gxnt2sKmZuSeqlvbeahyqJ7l0mNRUP7OXqwzu5UgTSYqwaykGNs7Uw2fyYu-D6k_5R9mkY8xKVjr0TLgbnjHe2BWcewgdSLmcCCwS7iFI7PaZzRbj6t4OH6mADomyM_sHiQEGnAxyKLPINI5jPOIrYPRxZ5ZEq-oLawcnBTgEotkNoO2gpWDzvIY_pWYhE_BvvtRnB2rvihGIHXrT-ljPfTW3i2thXN9LmiOezwPQn9xDoNcXKRP5ZBJVRujcsvWN1TqLX5TZNGfuZ2dTsepr4NBZuD6EasiNTbPkoUQE0jA3VuXqQKKSYE4vfzfrvpPQF]] {0x11f9bc80} 0x1d8020 21 [] false update.bluefors.com map[] map[] <nil> map[] <nil> 0x11ee66c0 <nil> <nil>}) %!s(*tls.ConnectionState=&{771 true false 49196 h2 true [0x11dc5680] [] [] [] [71 12 67 86 160 164 177 158 100 36 195 51]})} 2018-07-11 11:55:50 +0000 UTC debug: attempting to upload deployment logs for failed update 

 lsblk

NAME        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
mmcblk0     179:0    0  7.3G  0 disk
|-mmcblk0p1 179:1    0   40M  0 part /uboot
|-mmcblk0p2 179:2    0  928M  0 part
|-mmcblk0p3 179:3    0  928M  0 part /
`-mmcblk0p4 179:4    0  128M  0 part /data

So the update failed but the system started from updated partition

regards
AP

Alan Martinovic

unread,
Jul 11, 2018, 8:22:51 AM7/11/18
to men...@lists.mender.io, asi...@iki.fi
Not sure how that relates to anything.
Is it a follow up on the mender in subnet thread?

If so can you write the steps you did on the device to have the errors you're getting?

To unsubscribe from this group and stop receiving emails from it, send an email to mender+unsubscribe@lists.mender.io.

To post to this group, send email to men...@lists.mender.io.
Visit this group at https://groups.google.com/a/lists.mender.io/group/mender/.

--
You received this message because you are subscribed to the Google Groups "Mender List mender.io" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mender+unsubscribe@lists.mender.io.

To post to this group, send email to men...@lists.mender.io.
Visit this group at https://groups.google.com/a/lists.mender.io/group/mender/.

--
You received this message because you are subscribed to the Google Groups "Mender List mender.io" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mender+unsubscribe@lists.mender.io.

Kristian Amlie

unread,
Jul 11, 2018, 8:25:16 AM7/11/18
to men...@lists.mender.io, Alan Martinovic, asi...@iki.fi
On 11/07/18 14:22, Alan Martinovic wrote:
> Not sure how that relates to anything.
> Is it a follow up on the mender in subnet thread?
>
> If so can you write the steps you did on the device to have the errors
> you're getting?

It's not related, it was the wrong thread. Reply has been posted in the
original thread.

--
Kristian

signature.asc
Reply all
Reply to author
Forward
0 new messages