-
Notifications
You must be signed in to change notification settings - Fork 481
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
tuning & monitoring #32
Comments
I use (among other tools) munin to monitor a few servers. Luckily
To inspect what currently is being worked on, there is output of the renderd process that is collected by docker and can be watched with it:
BTW: docker does save but not rotate these logs by default, so it (slowly) grows and grows and grows over time until the harddisk (of services:
tileserver:
# ...
logging:
driver: "json-file"
options:
max-size: "50m"
max-file: "10" As for the |
ok seems my renderd remains very busy all the time:
In this post it seems that tiles are re-renderd every 3 days by default? That is not necessary for my application so I need to make sure the rerendering does not take place. My 4 core server seems now very bussy keeping up rerendering all tiles untill zoom level 15. It seems it cannot keep up ... does that make sense to you? |
ok so we have " To allow re-rendering but not have the client wait for such tiles, set your ModTileRequestTimeout to 0 instead of 3". In the default acpache.conf we have ModTileRequestTimeout = 0 right? |
3 days is default for declaring tiles old if not configured otherwise. (btw you could have read about this solution in the help thread you linked to yourself). |
seems I am doing something wrong while trying to create the log rotation
? my complete docker-compose:
any suggestions? |
My bad, it's |
Hi @Istador thx for your help. I am still strugling with a proper setup, especially now we keep adding countries to the tileserver as new customers come in . I now have Netherlands, 7 African countries en recently added India Portugal Spain and Italy. Now I upgraded my machine to be 8 cores 32 GB 200GB disk so still rather small (but sponsored so not 100% in my control). We are serving Natureparks in these countries, sometimes also interested in corridors between Narute parks. Last night I bumped into this:
So apparently 16 THREADS is to much for the default max_connections of 250 if I understand correctly? In your reply to issue 5 you specked out some details on your setup, did you already get consent from your employer to share your setup detail ;-) ? I would be most interested in a postgresql conf file and docker file that work smoothly on a machine more or less my size... I think I would like to create my own image using postgresql 11 but overwhelmed by all the options and settings in the conf files to make it work smoothly. |
Well, the default value for I don't know out of my head which value I used in my setup, that was in July 2018 (when Google Maps drastically changed their pricing model). According to osm2pgsql-dev/osm2pgsql#885 the amount of connections depends on the amount of threads running and tables in the database (7 or more). Because you faced this error with osm2pgsql, please note that if you're serving tiles with (Please verify if you're running the latest version of this docker image or not. Working with an existing system that is/was running the old version, requires an
Nope, nothing new on that. I asked my boss two or three times about it (last time in March), but only got the reply that the request will be forwarded to our CEO. The setup details that I shared already aren't that much of a problem, because I don't disclose anywhere who my employer is and even then this information wouldn't be that sensitive, but I have to operate based on my memory in my free time and can not dedicate paid working time on it. The only problem I have is, that I can't contribute any commits/changes that I did for the setup (e.g. new environment variables for memory and flatnodes, changes to run.sh to update/extend the database and expire/re-render tiles) to this project or an public fork without approval (because my work contract grants my employer all usage rights on the work products I develop for him). |
hi there, I have set up a tileserver for our wildlife protection organisation Sensing Clues (see here ).
I have set up a docker host on a 4 core 16 GB RAM server.
The tileserver is setup and I imported 7 countries ( NL, Tanzanie, Kenia, South Africa, Namibia, Zambia, Zimbabwe) I expect to load more countries soon.
My question/issue is how do monitor what is going on on the tile server?
I have pre-renderd tiles like so:
And tested with some zoom levels from 0 to x but if I look at the volumes in docker with
I see 57 GB of postgresql data but only see 350 MB of renderd tiles?
VOLUME NAME LINKS SIZE
9bb722d5661210d1cc218bfa29f951453f01b6344f2999fdd92661bb890bb919 1 424B
openstreetmap-data 1 57.25GB
openstreetmap-rendered-tiles 1 334.9MB
No matter what I do with render_list seems it does not pre-render any more tiles?
Memory usage:
If i look at htop postgresql seems busy, also with some jobs over more then 3 hours ????
I in a previous post i played around with THREADS and shm_size the docker-compose yml
Assumptions / Questions:
For completeness my current docker-compose file:
The text was updated successfully, but these errors were encountered: