EDIT: оказывается, что это не единственный случай возникновения ошибки. Это так часто случается на моем компьютере. Иногда он задействовал другой, казалось бы, случайный процесс, такой как: chromium-browser
, teamviewer
и mongod
. Я начал это замечать, потому что несколько дней назад произошел сбой базы данных MongoDB. На сегодняшний день это произошло как минимум трижды. Раньше у меня не было проблем, когда я использую Ubuntu 14.04 LTS, моя система ( DELL INSPIRON 3650 ). Это стандартный процессор, без разгона.
У меня Ubuntu 16.04 с установленной mongodb (3.4). Несколько часов назад он резко активизировался, потребляя 100% ресурсов процессора.
Вот результат top
top - 21:40:05 up 2 days, 8:30, 1 user, load average: 17,08, 17,03, 17,01
Tasks: 174 total, 15 running, 153 sleeping, 0 stopped, 6 zombie
%Cpu(s): 0,0 us, 66,8 sy, 0,0 ni, 33,2 id, 0,0 wa, 0,0 hi, 0,0 si, 0,0 st
KiB Mem : 8117148 total, 5307248 free, 981712 used, 1828188 buff/cache
KiB Swap: 520188 total, 520188 free, 0 used. 6427752 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1160 mongodb 20 0 0 0 0 Z 99,7 0,0 627:44.03 mongod
14214 root 20 0 26176 1356 1168 R 99,7 0,0 147:03.56 systemctl
3636 root 20 0 232068 37388 28740 S 0,3 0,5 1:04.03 Xorg
Я пытаюсь убить процесс, но безуспешно, никакие kill -9
не могут его убить. Я тоже не могу перезагрузить систему. Он просто не отвечает. Ниже приведен результат выполнения команды sudo service mongod stop
Failed to retrieve unit: Connection timed out
Failed to stop mongod.service: Connection timed out
See system logs and 'systemctl status mongod.service' for details.
Failed to get load state of mongod.service: Connection timed out
Я все еще могу ssh
подключиться к серверу, но ничего не могу сделать, чтобы остановить процесс mongod. Может кто-нибудь помочь мне?
ДОПОЛНИТЕЛЬНОЕ ПРИМЕЧАНИЕ
команда pstree -p -s 1160
дает мне
systemd(1)───mongod(1160)─┬─{ftdc}(1247)
├─{mongod}(1239)
└─{signalP.gThread}(1214)
согласно tailf -100 / var / log / syslog
команда дает мне более интересный результат . Он отображает повторяющееся сообщение, одно из них ниже:
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505244] NMI watchdog: BUG: soft lockup - CPU#1 stuck for 22s! [ftdc:1247]
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505245] Modules linked in: rfcomm xt_multiport iptable_filter ip_tables x_tables rtsx_usb_ms bnep memstick binfmt_misc snd_hda_codec_hdmi intel_rapl x86_pkg_temp_thermal intel_powerclamp coretemp kvm_intel arc4 dcdbas dell_smm_hwmon kvm snd_hda_codec_realtek irqbypass snd_hda_codec_generic crct10dif_pclmul rtl8723be crc32_pclmul ghash_clmulni_intel snd_hda_intel aesni_intel snd_hda_codec btcoexist rtl8723_common aes_x86_64 snd_hda_core lrw joydev snd_hwdep glue_helper rtl_pci input_leds rtlwifi snd_pcm ablk_helper snd_seq_midi cryptd mac80211 snd_seq_midi_event snd_rawmidi intel_cstate btusb intel_rapl_perf btrtl snd_seq cfg80211 snd_seq_device snd_timer snd serio_raw soundcore mei_me mei shpchp hci_uart btbcm btqca btintel bluetooth mac_hid intel_lpss_acpi intel_lpss acpi_als kfifo_buf industrialio acpi_pad parport_pc ppdev lp parport autofs4 btrfs xor raid6_pq dm_mirror dm_region_hash dm_log rtsx_usb_sdmmc rtsx_usb hid_generic usbhid nouveau mxm_wmi i2c_algo_bit ttm drm_kms_helper syscopyarea sysfillrect sysimgblt r8169 psmouse fb_sys_fops mii drm ahci libahci wmi pinctrl_sunrisepoint video pinctrl_intel i2c_hid hid fjes
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505277] CPU: 1 PID: 1247 Comm: ftdc Tainted: G W L 4.8.0-53-generic #56~16.04.1-Ubuntu
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505277] Hardware name: Dell Inc. Inspiron 3650/0C2XKD, BIOS 2.0.1 09/03/2015
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505278] task: ffffa024db476ac0 task.stack: ffffa024d83a4000
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505278] RIP: 0010:[<ffffffff8b50b336>] [<ffffffff8b50b336>] smp_call_function_many+0x1f6/0x250
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505281] RSP: 0018:ffffa024d83a7b38 EFLAGS: 00000202
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505281] RAX: 0000000000000003 RBX: 0000000000000200 RCX: 0000000000000003
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505282] RDX: ffffa024e659d380 RSI: 0000000000000200 RDI: ffffa024e649a288
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505282] RBP: ffffa024d83a7b70 R08: 0000000000000000 R09: 000000000000000d
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505282] R10: 0000000000000008 R11: ffffa024e649a288 R12: ffffa024e649a288
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505283] R13: ffffa024e649a280 R14: ffffffff8b472400 R15: ffffa024d83a7b80
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505284] FS: 00007f871ddd2700(0000) GS:ffffa024e6480000(0000) knlGS:0000000000000000
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505284] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505284] CR2: 00007f95bc40323f CR3: 0000000258e11000 CR4: 00000000003406e0
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505285] Stack:
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505285] 000000000001a240 0100000000000001 ffffa024d3ebf800 ffffffffffffffff
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505287] ffffa024d3ebfad8 0000000000000000 ffffffffffffffff ffffa024d83a7bb8
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505288] ffffffff8b472865 ffffa024d3ebf800 0000000000000000 ffffffffffffffff
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505289] Call Trace:
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505291] [<ffffffff8b472865>] native_flush_tlb_others+0x65/0x130
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505292] [<ffffffff8b472a43>] flush_tlb_mm_range+0x63/0x150
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505294] [<ffffffff8b5d62b4>] tlb_flush_mmu_tlbonly+0x64/0xd0
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505295] [<ffffffff8b5d75b2>] tlb_flush_mmu+0x12/0x20
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505297] [<ffffffff8b61595d>] zap_huge_pmd+0x20d/0x3b0
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505298] [<ffffffff8b5d9168>] unmap_page_range+0x928/0x940
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505299] [<ffffffff8b47fc92>] ? mmput+0x12/0x130
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505301] [<ffffffff8b5d91fd>] unmap_single_vma+0x7d/0xe0
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505302] [<ffffffff8b5d9668>] zap_page_range+0xc8/0x140
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505304] [<ffffffff8b5ef47e>] SyS_madvise+0x43e/0x930
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505305] [<ffffffff8bc9a876>] entry_SYSCALL_64_fastpath+0x1e/0xa8
Jan 28 22:11:48 leony-Inspiron-3650 kernel: [205318.505306] Code: d2 e8 3f 94 33 00 3b 05 ed 3a e5 00 89 c1 0f 8d 99 fe ff ff 48 98 49 8b 55 00 48 03 14 c5 60 c4 35 8c 8b 42 18 a8 01 74 09 f3 90 <8b> 42 18 a8 01 75 f7 eb bf 0f b6 4d d0 4c 89 fa 4c 89 f6 44 89
Вот результат echo l>
Машина работает под управлением Ubuntu
и обслуживает желаемый контент с помощью nginx
.
lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.2 LTS
Release: 16.04
Codename: xenial
nginx -v
nginx version: nginx/1.10.3 (Ubuntu)
Я установил свои SSL-сертификаты с помощью Let's Encrypt
, используя certbot
. Я сделал это, введя команду sudo certbot --nginx
Сертификат был сгенерирован, и все прошло очень хорошо в течение трех месяцев. Мой сайт правильно обслуживался через https
с действующим сертификатом.
Срок действия моего сертификата недавно истек, поэтому я попытался его продлить. Сначала я ввел эту команду.
sudo certbot renew
Ошибка была примерно такой:
Detail: Incorrect validation certificate for tls-sni-01 challenge. Requested 243e624c366db6a6f6aca6ac57f6f3cc.16fe65202571c102848dfa2b97afa875.acme.invalid from 1.2.3.4:443. Received 2 certificate(s), first certificate had names "domain.com"
WARNING:certbot.renewal:Attempting to renew cert (domain.com) from /etc/letsencrypt/renewal/domain.com.conf produced an unexpected error: Failed authorization procedure. domain.com (tls-sni-01): urn:acme:error:unauthorized :: The client lacks sufficient authorization :: Incorrect validation certificate for tls-sni-01 challenge. Requested 243e624c366db6a6f6aca6ac57f6f3cc.16fe65202571c102848dfa2b97afa875.acme.invalid from 1.2.3.4:443. Received 2 certificate(s), first certificate had names "domain.com". Skipping.
Когда я ввел эту команду, сервер nginx
все еще работал. Я остановил сервер и попробовал еще раз, а также попробовал другие варианты команды. Я снова попробовал запустить sudo certbot Renew
, sudo certbot --nginx
снова, я попробовал sudo certbot Renew --agree-tos
и др.
Я не знал об ограничении скорости Let's Encrypt
навязывает. При последней попытке я получил сообщение об ошибке:
Attempting to renew cert (domain.com) from /etc/letsencrypt/renewal/domain.com.conf produced an unexpected error: urn:acme:error:rateLimited :: There were too many requests of a given type :: Error creating new authz :: too many failed authorizations recently: see https://letsencrypt.org/docs/rate-limits/. Skipping.
После того, как я снова получу доступ к Let's Encrypt
, как мне решить эту проблему?
Как мне обновить свой Let's Encrypt
] для сервера nginx
, работающего на машине Ubuntu
?
Почему я получаю неверный сертификат проверки для задачи tls-sni-01
?
] Следует ли мне полностью удалить certbot
и все сертификаты и переустановить?
Какие подходы вы предлагаете для решения этой проблемы?
Спасибо!
Изменить 2: Конфигурация сервера
server {
listen 80;
server_name domain.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
server_name domain.com;
location / {
root /home/deploy/frontend/build;
try_files $uri /index.html;
}
ssl_certificate /etc/letsencrypt/live/domain.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/domain.com/privkey.pem; # managed by Certbot
}
Изменить 3:
Это полная ошибка для certbot --nginx
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator nginx, Installer nginx
Which names would you like to activate HTTPS for?
-------------------------------------------------------------------------------
1: domain.com
-------------------------------------------------------------------------------
Select the appropriate numbers separated by commas and/or spaces, or leave input
blank to select all options shown (Enter 'c' to cancel): 1
Cert is due for renewal, auto-renewing...
Renewing an existing certificate
Performing the following challenges:
tls-sni-01 challenge for domain.com
Waiting for verification...
Cleaning up challenges
Failed authorization procedure. domain.com (tls-sni-01): urn:acme:error:unauthorized :: The client lacks sufficient authorization :: Incorrect validation certificate for tls-sni-01 challenge. Requested 8e2860a15c352af70bba07e265c4e05d.01f665a017c20bd5d2c25f1ec2110b6b.acme.invalid from 1.2.3.4:443. Received 2 certificate(s), first certificate had names "domain.com"
IMPORTANT NOTES:
- The following errors were reported by the server:
Domain: domain.com
Type: unauthorized
Detail: Incorrect validation certificate for tls-sni-01 challenge.
Requested
8e2860a15c352af70bba07e265c4e05d.01f665a017c20bd5d2c25f1ec2110b6b.acme.invalid
from 1.2.3.4:443. Received 2 certificate(s), first certificate
had names "domain.com"
To fix these errors, please make sure that your domain name was
entered correctly and the DNS A/AAAA record(s) for that domain
contain(s) the right IP address.
Решение, которое я нашел, заключалось в использовании этой команды:
sudo certbot --authenticator webroot --installer nginx
По сути, это означает перевыпуск сертификата. Однако в моем случае этого оказалось недостаточно. Проверка, выполняемая для этого подхода, включает в себя обращение по этому URL-адресу:
Failed authorization procedure. example.com (http-01): urn:acme:error:unauthorized :: The client lacks sufficient authorization :: Invalid response from http://example.com/.well-known/acme-challenge/6OmVoBFxfKtjdAO1bgM9ylZw0d7U7MVC8KqyS6A2LfU: "<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1,shr"
Примечание. Я использовал domain.com
в качестве примера в своем вопросе, но в ответе я вынужден использовать example.com
] Как был настроен мой сервер nginx
, http://example.com/
был недоступен, потому что я возвращал 301 https: // $ server_name $ request_uri;
Мне пришлось разрешить http
доступ к моему корневому веб-каталогу, / home / deploy / frontend / build
получить сертификат и восстановить настройки.
Надеюсь это помогает.
Let's Encrypt навсегда отключил TLS-SNI-01 challenge303 из-за отчета о безопасности от 09.01.2018.
вы можете использовать команду:
sudo certbot --authenticator standalone --installer nginx -d example.com --pre-hook “service nginx stop” --post-hook “service nginx start”