Vesta Control Panel - Forum

Community Forum

Skip to content

Advanced search
  • Quick links
    • Main site
    • Github repo
    • Google Search
  • FAQ
  • Login
  • Register
  • Board index Language specific forums Russian (Русский) Общие вопросы
  • Search

Cron задачи каждые несколько часов

Общие вопросы о панели управления Vesta
Post Reply
  • Print view
Advanced search
26 posts
  • 1
  • 2
  • 3
  • Next
Bez
Posts: 78
Joined: Mon Feb 10, 2014 9:43 pm

Cron задачи каждые несколько часов
  • Quote

Post by Bez » Tue Dec 02, 2014 2:17 pm

Добрый день!
Скажите, все ли правильно сделал в кроне?
Можно ли так писать по выполнению задачи через каждые 3-4 часа?
Правильно ли написана команда перезапуска всего сервера? (centos 6.0)
Image
Top

imperio
VestaCP Team
Posts: 7000
Joined: Sat Dec 01, 2012 12:37 pm
Contact:
Contact imperio
Website

Re: Cron задачи каждые несколько часов
  • Quote

Post by imperio » Tue Dec 02, 2014 8:23 pm

Добрый
Первые 2 задачи правильные
Каждые 6 часов и каждые 2
Третья дублирует первую, 4я скорее всего не сработает
Top

Bez
Posts: 78
Joined: Mon Feb 10, 2014 9:43 pm

Re: Cron задачи каждые несколько часов
  • Quote

Post by Bez » Wed Dec 03, 2014 7:38 am

imperio wrote:Третья дублирует первую, 4я скорее всего не сработает
Спасибо!
Третью задачу удалил. Отчет по четвертой: reboot: Need to be root
Подскажите, как задать cron на reboot сервера?
По аналогии с кнопкой перезагрузки сервера (<input name="delete_url" value="/restart/system/?hostname=vestacp.com" type="hidden">
Top

demian
Posts: 543
Joined: Thu May 16, 2013 5:19 am

Re: Cron задачи каждые несколько часов
  • Quote

Post by demian » Wed Dec 03, 2014 8:57 am

глупый вопрос: к чему такие меры? зачем в кроне такие операции, тем более если я правильно я понимаю на продакшен сервере
Top

Bez
Posts: 78
Joined: Mon Feb 10, 2014 9:43 pm

Re: Cron задачи каждые несколько часов
  • Quote

Post by Bez » Wed Dec 03, 2014 9:35 am

demian wrote:глупый вопрос: к чему такие меры? зачем в кроне такие операции, тем более если я правильно я понимаю на продакшен сервере
Понимаете, я в отпуск хочу, в горы. На неделю. Без интернета и коммуникаций. Забить на сервер вообще.
Но, у меня периодически падает сервер, часто от падения мускула, и его (сервер) можно пнуть только ребутом.
Поэтому и ищу выход через ребут.

Кстати, по скрину выше прошу никогда (!) не ориентироваться. Выкладываю лог.
Весь день 500-е ошибки ловлю, пока лог не открыл.

Code: Select all

Dec  3 08:55:01 VPS CROND[7662]: (admin) CMD (export VESTA=/usr/local/vesta/;sudo /usr/local/vesta/bin/v-restart-service httpd)
Dec  3 08:55:01 VPS CROND[7661]: (admin) CMD (export VESTA=/usr/local/vesta/;sudo /usr/local/vesta/bin/v-restart-service mysqld)
Dec  3 08:56:01 VPS CROND[8547]: (admin) CMD (export VESTA=/usr/local/vesta/;sudo /usr/local/vesta/bin/v-restart-service mysqld)
Dec  3 08:56:01 VPS CROND[8548]: (admin) CMD (export VESTA=/usr/local/vesta/;sudo /usr/local/vesta/bin/v-restart-service httpd)
Dec  3 08:57:01 VPS CROND[9159]: (admin) CMD (export VESTA=/usr/local/vesta/;sudo /usr/local/vesta/bin/v-restart-service mysqld)
Dec  3 08:57:01 VPS CROND[9160]: (admin) CMD (export VESTA=/usr/local/vesta/;sudo /usr/local/vesta/bin/v-restart-service httpd)
Dec  3 08:58:01 VPS CROND[9769]: (admin) CMD (export VESTA=/usr/local/vesta/;sudo /usr/local/vesta/bin/v-restart-service httpd)
Dec  3 08:58:01 VPS CROND[9771]: (admin) CMD (export VESTA=/usr/local/vesta/;sudo /usr/local/vesta/bin/v-restart-service mysqld)
Нельзя в кроне в задаче ставить *, если задачу надо выполнять раз в несколько часов. Надо минуты указывать, а иначе каждую минуту будут выполняться задачи (OMG!)
Top

demian
Posts: 543
Joined: Thu May 16, 2013 5:19 am

Re: Cron задачи каждые несколько часов
  • Quote

Post by demian » Wed Dec 03, 2014 11:00 am

если сервер падает два варианта
1. либо ему нехватает ресурсов
2. либо не оптимизирован достаточным образом

я предполагаю у Вас vds 512k или 1G и настройки my,conf Вы не правили, соответственно они могут быть завышены отсюда и падение mysqld

перезагружать сервер целиком нет смысла, посмотрите в сторону monit на форуме был мануал по настройке с готовыми конфигами.

ЗЫ: лучше один раз разобраться в чем дело и поправить, чем иметь постоянный гемор.
ЗЫЫ: постоянная перезагрузка сервера или недоступность сайта может повлиять на позиции сайта(ов) в поисковых системах (гугл и яндекс раньше полностью исключали сайт из поисковой выдачи за частую недоступность сайта)
Top

Bez
Posts: 78
Joined: Mon Feb 10, 2014 9:43 pm

Re: Cron задачи каждые несколько часов
  • Quote

Post by Bez » Wed Dec 03, 2014 11:48 am

Спасибо большое за советы! В моем случае - лучше 1 раз в день ребут, чем пару дней оффлайн.

Я правил и настройки сервера и базы данных.
У меня CentOS 6.4 x64 / 4 x 2.13 Ghz Core / 1024 MB DDR3 RAM / 1500 GB Bandwidth

my.cnf
*********************************************************************************************
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
symbolic-links=0
max_connections=250
max_user_connections=200
wait_timeout=10
interactive_timeout=50
long_query_time=5
#log-queries-not-using-indexes
#log-slow-queries=/var/log/mysql/log-slow-queries.log

key_buffer = 16M
myisam_sort_buffer_size = 32M
join_buffer_size=1M
read_buffer_size=1M
sort_buffer_size=2M
table_cache=1024
thread_cache_size=286
interactive_timeout=25
connect_timeout=5
max_allowed_packet=1M
max_connect_errors=1000
query_cache_limit=1M
query_cache_size=8M
query_cache_type=1
tmp_table_size=16M

#innodb_use_native_aio = 0
innodb_file_per_table

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
*********************************************************************************************

php.ini settings
*********************************************************************************************
[PHP]
engine = On
short_open_tag = On
asp_tags = Off
precision = 14
output_buffering = 4096
zlib.output_compression = Off
implicit_flush = Off
unserialize_callback_func =
serialize_precision = 17
disable_functions =
disable_classes =
zend.enable_gc = On
expose_php = On
max_execution_time = 60
max_input_time = 90
max_input_vars = 1000
memory_limit = 256M
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
display_errors = Off
display_startup_errors = Off
log_errors = On
log_errors_max_len = 1024
ignore_repeated_errors = Off
ignore_repeated_source = Off
report_memleaks = On
track_errors = Off
html_errors = On
variables_order = "GPCS"
request_order = "GP"
register_argc_argv = Off
auto_globals_jit = On
post_max_size = 80M
auto_prepend_file =
auto_append_file =
default_mimetype = "text/html"
doc_root =
user_dir =
enable_dl = Off
file_uploads = On
upload_max_filesize = 80M
max_file_uploads = 20
allow_url_fopen = On
allow_url_include = Off
default_socket_timeout = 60
[CLI Server]
cli_server.color = On
[Date]
date.timezone = Europe
[filter]
[iconv]
[intl]
[sqlite]
[sqlite3]
[Pcre]
[Pdo]
[Pdo_mysql]
pdo_mysql.cache_size = 20000
pdo_mysql.default_socket=
[Phar]
[mail function]
SMTP = localhost
smtp_port = 25
sendmail_path = /usr/sbin/sendmail -t -i
mail.add_x_header = On
[SQL]
sql.safe_mode = Off
[ODBC]
odbc.allow_persistent = On
odbc.check_persistent = On
odbc.max_persistent = -1
odbc.max_links = -1
odbc.defaultlrl = 4096
odbc.defaultbinmode = 1
[Interbase]
ibase.allow_persistent = 1
ibase.max_persistent = -1
ibase.max_links = -1
ibase.timestampformat = "%Y-%m-%d %H:%M:%S"
ibase.dateformat = "%Y-%m-%d"
ibase.timeformat = "%H:%M:%S"
[MySQL]
mysql.allow_local_infile = On
mysql.allow_persistent = On
mysql.cache_size = 200000
mysql.max_persistent = -1
mysql.max_links = -1
mysql.default_port =
mysql.default_socket =
mysql.default_host =
mysql.default_user =
mysql.default_password =
mysql.connect_timeout = 180
mysql.trace_mode = Off
[MySQLi]
mysqli.max_persistent = -1
mysqli.allow_persistent = On
mysqli.max_links = -1
mysqli.cache_size = 20000
mysqli.default_port = 3306
mysqli.default_socket =
mysqli.default_host =
mysqli.default_user =
mysqli.default_pw =
mysqli.reconnect = Off
[mysqlnd]
mysqlnd.collect_statistics = On
mysqlnd.collect_memory_statistics = Off
[OCI8]
[PostgreSQL]
pgsql.allow_persistent = On
pgsql.auto_reset_persistent = Off
pgsql.max_persistent = -1
pgsql.max_links = -1
pgsql.ignore_notice = 0
pgsql.log_notice = 0
[Sybase-CT]
sybct.allow_persistent = On
sybct.max_persistent = -1
sybct.max_links = -1
sybct.min_server_severity = 10
sybct.min_client_severity = 10
[bcmath]
bcmath.scale = 0
[browscap]
[Session]
session.save_handler = files
session.use_cookies = 1
session.use_only_cookies = 1
session.name = PHPSESSID
session.auto_start = 0
session.cookie_lifetime = 0
session.cookie_path = /
session.cookie_domain =
session.cookie_httponly =
session.serialize_handler = php
session.gc_probability = 1
session.gc_divisor = 1000
session.gc_maxlifetime = 1440
session.bug_compat_42 = Off
session.bug_compat_warn = Off
session.referer_check =
session.cache_limiter = nocache
session.cache_expire = 180
session.use_trans_sid = 0
session.hash_function = 0
session.hash_bits_per_character = 5
url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry"
[MSSQL]
mssql.allow_persistent = On
mssql.max_persistent = -1
mssql.max_links = -1
mssql.min_error_severity = 10
mssql.min_message_severity = 10
mssql.compatability_mode = Off
mssql.secure_connection = Off
[Assertion]
[mbstring]
[gd]
[exif]
[Tidy]
tidy.clean_output = Off
[soap]
soap.wsdl_cache_enabled=1
soap.wsdl_cache_dir="/tmp"
soap.wsdl_cache_ttl=86400
soap.wsdl_cache_limit = 5
[sysvshm]
[ldap]
ldap.max_links = -1
[mcrypt]
[dba]
[curl]
*********************************************************************************************
Top

demian
Posts: 543
Joined: Thu May 16, 2013 5:19 am

Re: Cron задачи каждые несколько часов
  • Quote

Post by demian » Wed Dec 03, 2014 12:18 pm

судя по параметрам my,cnf у вам мускул слишком ного оперативки сжирает... больше чем есть физически поэтому и падает.

размер вашей базы?
используются ли innodb таблицы?

по поводу оптимизации mysql я уже много раз писал вариант возьмите конфиг от сюда(если в базе не используются таблицы innodb) оставив один параметр max_connections, увеоличив до 150 большее не стоит, т.к. потребление памяти будет слишком много
да параметр myisam_sort_buffer_size можно уменьшить до 8M
viewtopic.php?f=32&t=3852&p=13109#p13109

если вам необходимо именно 250 одновременных конектов к базе лучше увеличить оперативки.
Top

Bez
Posts: 78
Joined: Mon Feb 10, 2014 9:43 pm

Re: Cron задачи каждые несколько часов
  • Quote

Post by Bez » Wed Dec 03, 2014 12:48 pm

demian wrote: размер вашей базы?
используются ли innodb таблицы?
Максимум сейчас - 30 Мб, но иногда приходится работать с ~500 Мб базами (загаженный логами magento).
innodb таблицы - да, используются.

Изменил три параметра:
max_connections=100
max_user_connections=50
myisam_sort_buffer_size = 16M

+ добавил параметр (у вас есть):
innodb_buffer_pool_size = 8M
Не уверен, что этого хватит, но вроде бы не все таблицы в базе имеют данный тип.

Про увеличить оперативку тоже буду думать, возможно стоит переехать на 2GBb

Спасибо вам большое ещё раз!
Top

demian
Posts: 543
Joined: Thu May 16, 2013 5:19 am

Re: Cron задачи каждые несколько часов
  • Quote

Post by demian » Wed Dec 03, 2014 1:13 pm

для проверки потребления памяти поставьте утилиту

mysqltuner

она покажет потребление памяти точный объем баз, индексных таблиц и самое главное корректность настроек: какой параметр стоит увеличить какой уменьшить.

главное: если будете увеличивать параметры сервера бд смотрите чтобы результирующее потребление памяти с учетом коннектов не превышало 50% от всего объема памяти. тогда мало вероятность падение сервиса будет очень мала.

да приведенные параметры в том конфиге вполне подойдут для баз в 500 метров, для 30 метров эти параметры также завышены, можно сократить еще. но надо смотреть, что выдаст mysqltuner
Top


Post Reply
  • Print view

26 posts
  • 1
  • 2
  • 3
  • Next

Return to “Общие вопросы”



  • Board index
  • All times are UTC
  • Delete all board cookies
  • The team
Powered by phpBB® Forum Software © phpBB Limited
*Original Author: Brad Veryard
*Updated to 3.2 by MannixMD
 

 

Login  •  Register

I forgot my password