{"action":"created","issue":{"url":"https://api.github.com/repos/containous/traefik/issues/1325","repository_url":"https://api.github.com/repos/containous/traefik","labels_url":"https://api.github.com/repos/containous/traefik/issues/1325/labels{/name}","comments_url":"https://api.github.com/repos/containous/traefik/issues/1325/comments","events_url":"https://api.github.com/repos/containous/traefik/issues/1325/events","html_url":"https://github.com/containous/traefik/issues/1325","id":215993471,"number":1325,"title":"kv value too large when using consul backend and acme","user":{"login":"Paxxi","id":874927,"avatar_url":"https://avatars3.githubusercontent.com/u/874927?v=3","gravatar_id":"","url":"https://api.github.com/users/Paxxi","html_url":"https://github.com/Paxxi","followers_url":"https://api.github.com/users/Paxxi/followers","following_url":"https://api.github.com/users/Paxxi/following{/other_user}","gists_url":"https://api.github.com/users/Paxxi/gists{/gist_id}","starred_url":"https://api.github.com/users/Paxxi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Paxxi/subscriptions","organizations_url":"https://api.github.com/users/Paxxi/orgs","repos_url":"https://api.github.com/users/Paxxi/repos","events_url":"https://api.github.com/users/Paxxi/events{/privacy}","received_events_url":"https://api.github.com/users/Paxxi/received_events","type":"User","site_admin":false},"labels":[{"id":259872486,"url":"https://api.github.com/repos/containous/traefik/labels/bug","name":"bug","color":"fc2929","default":true}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2017-03-22T09:00:58Z","updated_at":"2017-03-23T08:46:12Z","closed_at":null,"body":"### What version of Traefik are you using (`traefik version`)?\r\nv.1.1.2\r\n\r\n### What is your environment & configuration (arguments, toml...)?\r\ndocker swarm 1.13\r\n```\r\nContainers: 5                                                   \r\n Running: 2                                                     \r\n Paused: 0                                                      \r\n Stopped: 3                                                     \r\nImages: 33                                                      \r\nServer Version: 1.13.0                                          \r\nStorage Driver: overlay                                         \r\n Backing Filesystem: extfs                                      \r\n Supports d_type: true                                          \r\nLogging Driver: json-file                                       \r\nCgroup Driver: cgroupfs                                         \r\nPlugins:                                                        \r\n Volume: glusterfs local                                        \r\n Network: bridge host macvlan null overlay                      \r\nSwarm: active                                                   \r\n NodeID: c8rqvh23p2kqqpbyj9ydf5xxy                              \r\n Is Manager: true                                               \r\n ClusterID: n1td1rbeiwcokhp7gglg6z4gy                           \r\n Managers: 3                                                    \r\n Nodes: 3                                                       \r\n Orchestration:                                                 \r\n  Task History Retention Limit: 5                               \r\n Raft:                                                          \r\n  Snapshot Interval: 10000                                      \r\n  Number of Old Snapshots to Retain: 0                          \r\n  Heartbeat Tick: 1                                             \r\n  Election Tick: 3                                              \r\n Dispatcher:                                                    \r\n  Heartbeat Period: 5 seconds                                   \r\n CA Configuration:                                              \r\n  Expiry Duration: 3 months                                     \r\n Node Address: 10.135.25.157                                    \r\n Manager Addresses:                                             \r\n  10.135.25.157:2377                                            \r\n  10.135.36.196:2377                                            \r\n  10.135.8.136:2377                                             \r\nRuntimes: runc                                                  \r\nDefault Runtime: runc                                           \r\nInit Binary: docker-init                                        \r\ncontainerd version: 03e5862ec0d8d3b3f750e19fca3ee367e13c090e    \r\nrunc version: 2f7393a47307a16f8cee44a37b262e8b81021e3e          \r\ninit version: 949e6fa                                           \r\nSecurity Options:                                               \r\n apparmor                                                       \r\n seccomp                                                        \r\n  Profile: default                                              \r\nKernel Version: 4.4.0-59-generic                                \r\nOperating System: Ubuntu 16.04.1 LTS                            \r\nOSType: linux                                                   \r\nArchitecture: x86_64                                            \r\nCPUs: 2                                                         \r\nTotal Memory: 3.859 GiB                                         \r\nName: ohmy-rancher1                                             \r\nID: ZC23:CHZC:AT2V:KFGG:AD7T:NPUZ:H5SY:BA6N:3KIT:ORRK:X6HW:O7PZ \r\nDocker Root Dir: /var/lib/docker                                \r\nDebug Mode (client): false                                      \r\nDebug Mode (server): false                                      \r\nRegistry: https://index.docker.io/v1/                           \r\nWARNING: No swap limit support                                  \r\nExperimental: false                                             \r\nInsecure Registries:                                            \r\n 127.0.0.0/8                                                    \r\n```\r\n\r\ntraefik is running on all three nodes as load balancer, output below is not perfectly valid json as I cut out the PreviousSpec and UpdateStatus bits.\r\n\r\n```\r\ndocker service inspect traefik                                                         \r\n[                                                                                                                     \r\n    {                                                                                                                 \r\n        \"ID\": \"r2i408yp9lj1t319voglwd4ay\",                                                                            \r\n        \"Version\": {                                                                                                  \r\n            \"Index\": 146                                                                                              \r\n        },                                                                                                            \r\n        \"CreatedAt\": \"2017-01-27T09:38:04.005237112Z\",                                                                \r\n        \"UpdatedAt\": \"2017-01-27T09:53:47.215408631Z\",                                                                \r\n        \"Spec\": {                                                                                                     \r\n            \"Name\": \"traefik\",                                                                                        \r\n            \"TaskTemplate\": {                                                                                         \r\n                \"ContainerSpec\": {                                                                                    \r\n                    \"Image\": \"traefik:latest@sha256:c81e1a321ec90a41987b1c8cb887606e3e632acadb3b29f5b97f0ad03c59ffd9\",\r\n                    \"Args\": [                                                                                         \r\n                        \"--web\",                                                                                      \r\n                        \"--consul\",                                                                                   \r\n                        \"--consul.endpoint=consul.service.consul:8500\",                                               \r\n                        \"--docker\",                                                                                   \r\n                        \"--docker.swarmmode\",                                                                         \r\n                        \"--docker.watch\"                                                                              \r\n                    ],                                                                                                \r\n                    \"Mounts\": [                                                                                       \r\n                        {                                                                                             \r\n                            \"Type\": \"bind\",                                                                           \r\n                            \"Source\": \"/var/run/docker.sock\",                                                         \r\n                            \"Target\": \"/var/run/docker.sock\"                                                          \r\n                        }                                                                                             \r\n                    ],                                                                                                \r\n                    \"DNSConfig\": {}                                                                                   \r\n                },                                                                                                    \r\n                \"Resources\": {                                                                                        \r\n                    \"Limits\": {},                                                                                     \r\n                    \"Reservations\": {}                                                                                \r\n                },                                                                                                    \r\n                \"RestartPolicy\": {                                                                                    \r\n                    \"Condition\": \"any\",                                                                               \r\n                    \"MaxAttempts\": 0                                                                                  \r\n                },                                                                                                    \r\n                \"Placement\": {                                                                                        \r\n                    \"Constraints\": [                                                                                  \r\n                        \"node.role==manager\"                                                                          \r\n                    ]                                                                                                 \r\n                },                                                                                                    \r\n                \"Networks\": [                                                                                         \r\n                    {                                                                                                 \r\n                        \"Target\": \"s7xhhuwbexlefkq87eu1jyvvb\"                                                         \r\n                    },                                                                                                \r\n                    {                                                                                                 \r\n                        \"Target\": \"me7eoua9vuvrg1ywy3p3sm1ik\"                                                         \r\n                    }                                                                                                 \r\n                ],                                                                                                    \r\n                \"ForceUpdate\": 0     \r\n            },                                     \t\t\t\t\r\n            \"Mode\": {                              \r\n                \"Global\": {}                       \r\n            },                                     \r\n            \"UpdateConfig\": {                      \r\n                \"Parallelism\": 1,                  \r\n                \"FailureAction\": \"pause\",          \r\n                \"MaxFailureRatio\": 0               \r\n            },                                     \r\n            \"Networks\": [                          \r\n                {                                  \r\n                    \"Target\": \"traefik\"            \r\n                },                                 \r\n                {                                  \r\n                    \"Target\": \"ingress\"            \r\n                }                                  \r\n            ],                                     \r\n            \"EndpointSpec\": {                      \r\n                \"Mode\": \"vip\",                     \r\n                \"Ports\": [                         \r\n                    {                              \r\n                        \"Protocol\": \"tcp\",         \r\n                        \"TargetPort\": 80,          \r\n                        \"PublishedPort\": 80,       \r\n                        \"PublishMode\": \"ingress\"   \r\n                    },                             \r\n                    {                              \r\n                        \"Protocol\": \"tcp\",         \r\n                        \"TargetPort\": 8080,        \r\n                        \"PublishedPort\": 8080,     \r\n                        \"PublishMode\": \"ingress\"   \r\n                    },                             \r\n                    {                              \r\n                        \"Protocol\": \"tcp\",         \r\n                        \"TargetPort\": 443,         \r\n                        \"PublishedPort\": 443,      \r\n                        \"PublishMode\": \"ingress\"   \r\n                    }                              \r\n                ]                                  \r\n            }                                      \r\n        },    \r\n\t\"Endpoint\": {                                         \t\t\r\n     \"Spec\": {                                         \r\n         \"Mode\": \"vip\",                                \r\n         \"Ports\": [                                    \r\n             {                                         \r\n                 \"Protocol\": \"tcp\",                    \r\n                 \"TargetPort\": 80,                     \r\n                 \"PublishedPort\": 80,                  \r\n                 \"PublishMode\": \"ingress\"              \r\n             },                                        \r\n             {                                         \r\n                 \"Protocol\": \"tcp\",                    \r\n                 \"TargetPort\": 8080,                   \r\n                 \"PublishedPort\": 8080,                \r\n                 \"PublishMode\": \"ingress\"              \r\n             },                                        \r\n             {                                         \r\n                 \"Protocol\": \"tcp\",                    \r\n                 \"TargetPort\": 443,                    \r\n                 \"PublishedPort\": 443,                 \r\n                 \"PublishMode\": \"ingress\"              \r\n             }                                         \r\n         ]                                             \r\n     },                                                \r\n     \"Ports\": [                                        \r\n         {                                             \r\n             \"Protocol\": \"tcp\",                        \r\n             \"TargetPort\": 80,                         \r\n             \"PublishedPort\": 80,                      \r\n             \"PublishMode\": \"ingress\"                  \r\n         },                                            \r\n         {                                             \r\n             \"Protocol\": \"tcp\",                        \r\n             \"TargetPort\": 8080,                       \r\n             \"PublishedPort\": 8080,                    \r\n             \"PublishMode\": \"ingress\"                  \r\n         },                                            \r\n         {                                             \r\n             \"Protocol\": \"tcp\",                        \r\n             \"TargetPort\": 443,                        \r\n             \"PublishedPort\": 443,                     \r\n             \"PublishMode\": \"ingress\"                  \r\n         }                                             \r\n     ],                                                \r\n     \"VirtualIPs\": [                                   \r\n         {                                             \r\n             \"NetworkID\": \"me7eoua9vuvrg1ywy3p3sm1ik\", \r\n             \"Addr\": \"10.255.0.6/16\"                   \r\n         },                                            \r\n         {                                             \r\n             \"NetworkID\": \"s7xhhuwbexlefkq87eu1jyvvb\", \r\n             \"Addr\": \"172.20.0.2/16\"                   \r\n         }                                             \r\n     ]                                                 \r\n }                                                    \r\n```\r\n```\r\nper@host:~$ consul kv get --recurse traefik\r\ntraefik/accesslogsfile:\r\ntraefik/acme/:\r\ntraefik/acme/account/lock:\r\ntraefik/acme/account/object:REMOVED\r\ntraefik/acme/caserver:\r\ntraefik/acme/email:REMOVED\r\ntraefik/acme/entrypoint:https\r\ntraefik/acme/ondemand:true\r\ntraefik/acme/onhostrule:true\r\ntraefik/acme/storage:traefik/acme/account\r\ntraefik/checknewversion:true\r\ntraefik/consul/:\r\ntraefik/consul/endpoint:consul.service.consul:8500\r\ntraefik/consul/filename:\r\ntraefik/consul/prefix:traefik\r\ntraefik/consul/watch:true\r\ntraefik/debug:false\r\ntraefik/defaultentrypoints/0:http\r\ntraefik/defaultentrypoints/1:https\r\ntraefik/docker/:\r\ntraefik/docker/domain:docker.localhost\r\ntraefik/docker/endpoint:unix:///var/run/docker.sock\r\ntraefik/docker/exposedbydefault:true\r\ntraefik/docker/filename:\r\ntraefik/docker/swarmmode:true\r\ntraefik/docker/usebindportip:false\r\ntraefik/docker/watch:true\r\ntraefik/entrypoints/http/:\r\ntraefik/entrypoints/http/address::80\r\ntraefik/entrypoints/http/compress:false\r\ntraefik/entrypoints/http/network:\r\ntraefik/entrypoints/https/:\r\ntraefik/entrypoints/https/address::443\r\ntraefik/entrypoints/https/compress:false\r\ntraefik/entrypoints/https/network:\r\ntraefik/entrypoints/https/tls/:\r\ntraefik/entrypoints/https/tls/ciphersuites/0:TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256\r\ntraefik/entrypoints/https/tls/ciphersuites/1:TLS_RSA_WITH_AES_256_GCM_SHA384\r\ntraefik/entrypoints/https/tls/minversion:VersionTLS12\r\ntraefik/gracetimeout:10\r\ntraefik/insecureskipverify:false\r\ntraefik/leader:b5850a68-1b48-45e3-94c0-edc3d6eb03ae\r\ntraefik/loglevel:DEBUG\r\ntraefik/maxidleconnsperhost:200\r\ntraefik/providersthrottleduration:2000000000\r\ntraefik/web/:\r\ntraefik/web/address::8080\r\ntraefik/web/certfile:\r\ntraefik/web/keyfile:\r\ntraefik/web/readonly:false\r\n```\r\n\r\n### What did you do?\r\nautomatically generated a new certificate through acme\r\n\r\n### What did you expect to see?\r\ncertificate generated correctly\r\n\r\n### What did you see instead?\r\n`error presenting token: StoreConfig error: Unexpected response code: 413 (Value exceeds 524288 byte limit)]`\r\n\r\nSearching for this I came across this commit https://github.com/hashicorp/consul/commit/8f37f967e0fc677fa54c9beea988dc331e35718f which mentiones the 512kb limit.\r\n\r\nMy thoughts about a solution is along the lines of serializing the acme account data into keys and values instead of json so they use the kv store \"properly\"."},"comment":{"url":"https://api.github.com/repos/containous/traefik/issues/comments/288652938","html_url":"https://github.com/containous/traefik/issues/1325#issuecomment-288652938","issue_url":"https://api.github.com/repos/containous/traefik/issues/1325","id":288652938,"user":{"login":"timoreimann","id":694826,"avatar_url":"https://avatars2.githubusercontent.com/u/694826?v=3","gravatar_id":"","url":"https://api.github.com/users/timoreimann","html_url":"https://github.com/timoreimann","followers_url":"https://api.github.com/users/timoreimann/followers","following_url":"https://api.github.com/users/timoreimann/following{/other_user}","gists_url":"https://api.github.com/users/timoreimann/gists{/gist_id}","starred_url":"https://api.github.com/users/timoreimann/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timoreimann/subscriptions","organizations_url":"https://api.github.com/users/timoreimann/orgs","repos_url":"https://api.github.com/users/timoreimann/repos","events_url":"https://api.github.com/users/timoreimann/events{/privacy}","received_events_url":"https://api.github.com/users/timoreimann/received_events","type":"User","site_admin":false},"created_at":"2017-03-23T08:46:12Z","updated_at":"2017-03-23T08:46:12Z","body":"@emilevauge \r\n\r\n>It seems difficult to serialize certificate structs and deserialize them after.\r\n\r\nWhat kind of problem(s) did you run into?"}}
{"actor":{"display_login":"timoreimann"}}