Maison base de données tutoriel mysql 如何诊断节点重启问题

如何诊断节点重启问题

Jun 07, 2016 pm 04:01 PM
rac 如何 环境 节点 诊断 重启 问题

本文对如何诊断RAC环境中节点重启问题进行了介绍。适用于10gR2和11gR1. 首先我们对能够导致节点重启的CRS进程进行介绍。 1.ocssd : 它的主要功能是节点监控(Node Monitoring)和组管理(Group Management),它是CRS的核心进程之一。节点监控是指监控集群中节

本文对如何诊断RAC环境中节点重启问题进行了介绍。适用于10gR2和11gR1.

首先我们对能够导致节点重启的CRS进程进行介绍。

1.ocssd : 它的主要功能是节点监控(Node Monitoring)和组管理(Group Management),它是CRS的核心进程之一。节点监控是指监控集群中节点的健康,监控的方法是通过网络心跳(network heartbeat)和磁盘心跳(disk heartbeat)实现的,如果集群中的节点连续丢失磁盘心跳或网络心跳,该节点就会被从集群中驱逐,也就是节点重启。组管理导致的节点重启,我们称之为node kill escalation(只有在11gR1以及以上版本适用),我们会在后面的文章进行详细介绍。重启需要在指定的时间(reboot time,一般为3秒)内完成。

网络心跳:ocssd.bin进程每秒钟向集群中的各个节点通过私网发送网络心跳信息,以确认各个节点是否正常。如果某个节点连续丢失网络心跳达到阀值,misscount(默认为30秒,如果存在其他集群管理软件则为600秒),集群会通过表决盘进行投票,使丢失网络心跳的节点被主节点驱逐出集群,即节点重启。如果集群只包含2个节点,则会出现脑裂,结果是节点号小的节点存活下来,即使是节点号小的节点存在网络问题。

磁盘心跳:ocssd.bin进程每秒钟都会向所有表决盘(Voting File)注册本节点的状态信息,这个过程叫做磁盘心跳。如果某个节点连续丢失磁盘心跳达到阀值,disk timeou(一般为200秒),则该节点会自动重启以保证集群的一致性。另外,CRS只要求[N/2]+1个表决盘可用即可,其中N为表决盘数量,一般为奇数。

2.oclsomon:这个进程负责监控ocssd是否挂起,如果发现ocssd.bin存在性能问题,则重启该节点。

3.oprocd:这个进程只在Linux和Unix系统,并且第三方集群管理软件未安装的情况下才会出现。如果它发现节点挂起,则重启该节点。

注意:以上的所有进程都是由脚本init.cssd产生的。

接下来是诊断节点重启问题是经常搜集的信息。

1.操作系统日志

2./log//cssd/ocssd.log

3.oprocd.log(/etc/oracle/oprocd/*.log.* 或 /var/opt/oracle/oprocd/*.log.*)

4./log//cssd/oclsomon/oclsomon.log

5. Oracle OSWatcher 报告

接下来我们讨论如何诊断节点重启问题。

1.由ocssd导致的节点重启。

如果在ocssd.log中出现以下错误,则表示节点重启是由于丢失网络心跳。接下来需要查看和网络相关的信息,如操作系统日志,OSW报表(traceroute的输出),以确定网络层面(cluster interconnect)是否存在问题,并确定最终的原因。

[ CSSD]2012-03-02 23:56:18.749 [3086] >WARNING: clssnmPollingThread: node <node_name> at 50% heartbeat fatal, eviction in 14.494 seconds
[ CSSD]2012-03-02 23:56:25.749 [3086] >WARNING: clssnmPollingThread: node <node_name> at 75% heartbeat fatal, eviction in 7.494 seconds
[ CSSD]2012-03-02 23:56:32.749 [3086] >WARNING: clssnmPollingThread: node <node_name>at 90% heartbeat fatal, eviction in 0.494 seconds
[CSSD]2012-03-02 23:56:33.243 [3086] >TRACE: clssnmPollingThread: Eviction started for node <node_name>, flags 0x040d, state 3, wt4c 0
[CSSD]2012-03-02 23:56:33.243 [3086] >TRACE: clssnmDiscHelper: <node_name>, node(4) connection failed, con (1128a5530), probe(0)
[CSSD]2012-03-02 23:56:33.243 [3086] >TRACE: clssnmDiscHelper: node 4 clean up, con (1128a5530), init state 5, cur state 5
[CSSD]2012-03-02 23:56:33.243 [3600] >TRACE: clssnmDoSyncUpdate: Initiating sync 196446491
[CSSD]2012-03-02 23:56:33.243 [3600] >TRACE: clssnmDoSyncUpdate: diskTimeout set to (27000)ms</node_name></node_name></node_name></node_name></node_name>
Copier après la connexion

注意:如果在主节点的ocssd.log中出现以上信息的时间点要晚于节点的重启时间,则说明节点重启的原因不是丢失网络心跳。

如果ocssd.log中出现以下错误,则表示节点重启是由于丢失磁盘心跳。接下来需要查看操作系统日志,OSWatcher报告(iostat的输出),以确定i/o层面是否存在问题,并确定最终的原因。

2010-08-13 18:34:37.423: [ CSSD][150477728]clssnmvDiskOpen: Opening /dev/sdb8
2010-08-13 18:34:37.423: [ CLSF][150477728]Opened hdl:0xf4336530 for dev:/dev/sdb8:
2010-08-13 18:34:37.429: [ SKGFD][150477728]ERROR: -9(Error 27072, OS Error (Linux Error: 5: Input/output error
Additional information: 4
Additional information: 720913
Additional information: -1)
)
2010-08-13 18:34:37.429: [ CSSD][150477728](:CSSNM00060: )clssnmvReadBlocks: read failed at offset 17 of /dev/sdb8
2010-08-13 18:34:38.205: [ CSSD][4110736288](:CSSNM00058: )clssnmvDiskCheck: No I/O completions for 200880 ms for voting file /dev/sdb8)
2010-08-13 18:34:38.206: [ CSSD][4110736288](:CSSNM00018: )clssnmvDiskCheck: Aborting, 0 of 1 configured voting disks available, need 1
2010-08-13 18:34:38.206: [ CSSD][4110736288]###################################
2010-08-13 18:34:38.206: [ CSSD][4110736288]clssscExit: CSSD aborting from thread clssnmvDiskPingMonitorThread
2010-08-13 18:34:38.206: [ CSSD][4110736288]###################################
Copier après la connexion

2. 由oclsomon导致的节点重启。

如果在oclsomon.log 中出现错误,则表示节点重启是由于ocssd进程挂起,由于ocssd进程拥有实时(RT)优先级,很可能此时操作系统存在资源(如cpu)竞争,接下来需要察看操作系统日志,OSW报表(vmstat,top的输出),以确定最终的原因。

3.由oprocd导致的节点重启。

如果在oprocd日志中出现以下信息,则表明节点重启是由oprocd进程导致。

Dec 21 16:15:30.369857 | LASTGASP | AlarmHandler: timeout(2312 msec) exceeds interval(1000 msec)+margin(500 msec). Rebooting NOW.
Copier après la connexion

由于oprocd进程通过查看系统时间以确定操作系统是否挂起,正确的配置ntp(或其他时间同步软件),调整diagwait=13 可以避免节点重启,另外,如果需要大幅度修改系时间,建议首先停止CRS,在修改完成之后再重新启动。当然,我们也不排除操作系统挂起导致oprocd重启节点,所以,也需要查看OSWatcher报告(vmstat,top的输出),以确定最终的原因。

本文只是对诊断节点重启问题的思路进行了介绍,在具体实际问题当中还需要灵活运用。

关于更多的信息,请阅读以下的MOS 文章。

Note 265769.1 :Troubleshooting 10g and 11.1 Clusterware Reboots

Note 1050693.1 :Troubleshooting 11.2 Clusterware Node Evictions (Reboots)

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment redémarrer le téléphone Samsung s24Ultra ? Comment redémarrer le téléphone Samsung s24Ultra ? Feb 09, 2024 pm 09:54 PM

Lorsque vous utilisez le téléphone mobile Samsung S24 Ultra, vous pouvez occasionnellement rencontrer des problèmes ou devoir réinitialiser l'appareil. Dans ce cas, le redémarrage du téléphone est une solution courante. Cependant, cela peut prêter à confusion si vous ne connaissez pas grand-chose des étapes. Cependant, ne vous inquiétez pas, je vais vous montrer comment redémarrer correctement votre téléphone Samsung S24 Ultra. Comment redémarrer le téléphone Samsung s24Ultra 1. Affichez le menu de contrôle pour arrêter : faites glisser votre doigt depuis le haut de l'écran Samsung pour afficher le menu des outils de raccourci, cliquez sur l'icône d'alimentation (une combinaison d'arcs et de lignes verticales) pour afficher Dans l'interface de sélection d'arrêt et de redémarrage, cliquez sur Redémarrer simplement ; 2. Utilisez la combinaison de touches pour arrêter : appuyez longuement sur la touche de volume et sur la touche d'alimentation pour afficher le menu de sélection d'arrêt et de redémarrage, cliquez pour sélectionner l'arrêt. En appuyant et en maintenant

Impossible de démarrer dans l'environnement de récupération Windows Impossible de démarrer dans l'environnement de récupération Windows Feb 19, 2024 pm 11:12 PM

L'environnement de récupération Windows (WinRE) est un environnement utilisé pour réparer les erreurs du système d'exploitation Windows. Après avoir entré WinRE, vous pouvez effectuer une restauration du système, une réinitialisation d'usine, désinstaller les mises à jour, etc. Si vous ne parvenez pas à démarrer WinRE, cet article vous guidera à travers les correctifs pour résoudre le problème. Impossible de démarrer dans l'environnement de récupération Windows Si vous ne pouvez pas démarrer dans l'environnement de récupération Windows, utilisez les correctifs fournis ci-dessous : Vérifiez l'état de l'environnement de récupération Windows Utilisez d'autres méthodes pour accéder à l'environnement de récupération Windows Avez-vous accidentellement supprimé la partition de récupération Windows ? Effectuez une mise à niveau sur place ou une nouvelle installation de Windows ci-dessous, nous avons expliqué tous ces correctifs en détail. 1] Vérifiez le Wi-Fi

Comment résoudre l'invite de l'ordinateur « redémarrer et sélectionner le périphérique de démarrage approprié » Comment résoudre l'invite de l'ordinateur « redémarrer et sélectionner le périphérique de démarrage approprié » Jan 15, 2024 pm 02:00 PM

La réinstallation du système n'est peut-être pas une solution infaillible, mais après la réinstallation, j'ai constaté que lorsque l'ordinateur est allumé, il affiche du texte blanc sur fond noir, puis affiche une invite : redémarrez et sélectionnez le périphérique de démarrage approprié, que se passe-t-il ? Une telle invite est généralement provoquée par une erreur de démarrage. Afin d'aider tout le monde, l'éditeur vous a apporté une solution. L'utilisation d'un ordinateur est de plus en plus populaire et les pannes informatiques sont de plus en plus courantes. Non, récemment, certains utilisateurs ont rencontré un écran noir lors de la mise sous tension de l'ordinateur et ont été invités à redémarrer et à sélectionner le périphérique de démarrage approprié, et le système informatique n'a pas pu démarrer. normalement. Que se passe-t-il? Comment le résoudre? L'utilisateur est confus. Ensuite, l'éditeur suivra.

Mar 22, 2024 pm 12:45 PM

Un guide complet des erreurs PHP500 : causes, diagnostics et correctifs Au cours du développement PHP, nous rencontrons souvent des erreurs avec le code d'état HTTP 500. Cette erreur est généralement appelée « 500InternalServerError », ce qui signifie que des erreurs inconnues se sont produites lors du traitement de la requête côté serveur. Dans cet article, nous explorerons les causes courantes des erreurs PHP500, comment les diagnostiquer et comment les corriger, et fournirons des exemples de code spécifiques pour référence. Causes courantes des erreurs 1.500 1.

Quelle est la bonne façon de redémarrer un service sous Linux ? Quelle est la bonne façon de redémarrer un service sous Linux ? Mar 15, 2024 am 09:09 AM

Quelle est la bonne façon de redémarrer un service sous Linux ? Lors de l'utilisation d'un système Linux, nous rencontrons souvent des situations dans lesquelles nous devons redémarrer un certain service, mais nous pouvons parfois rencontrer des problèmes lors du redémarrage du service, comme le fait que le service ne s'arrête ou ne démarre pas réellement. Par conséquent, il est très important de maîtriser la bonne manière de redémarrer les services. Sous Linux, vous pouvez généralement utiliser la commande systemctl pour gérer les services système. La commande systemctl fait partie du gestionnaire système systemd

Comment éteindre et redémarrer Meizu 21pro ? Comment éteindre et redémarrer Meizu 21pro ? Mar 18, 2024 pm 02:28 PM

Meizu 21Pro est un smartphone populaire doté d'excellentes performances et de fonctionnalités riches. Mais parfois, nous devrons effectuer des opérations telles que l’arrêt ou le redémarrage. Si vous avez besoin de savoir comment arrêter ou redémarrer le Meizu 21Pro, les étapes suivantes seront présentées en détail. Comment éteindre et redémarrer Meizu 21pro ? Méthode 1 : lors de l'arrêt, il vous suffit de maintenir le bouton d'alimentation enfoncé pendant un moment et l'option d'arrêt apparaîtra. Cliquez sur [Éteindre l'alimentation], attendez l'arrêt, puis appuyez et maintenez le bouton d'alimentation pour redémarrer. Méthode 2 : lorsque votre téléphone se bloque, maintenez enfoncé le [bouton d'alimentation] pendant environ 15 secondes jusqu'à ce que l'écran devienne noir. Vous pouvez forcer son arrêt et son redémarrage. Troisième méthode : S'il y a une situation de crash plus grave et que la méthode ci-dessus ne fonctionne pas, nous ne pouvons qu'attendre que notre téléphone Meizu soit à court de batterie.

Comment résoudre le problème selon lequel jQuery ne peut pas obtenir la valeur de l'élément de formulaire Comment résoudre le problème selon lequel jQuery ne peut pas obtenir la valeur de l'élément de formulaire Feb 19, 2024 pm 02:01 PM

Pour résoudre le problème selon lequel jQuery.val() ne peut pas être utilisé, des exemples de code spécifiques sont requis. Pour les développeurs front-end, l'utilisation de jQuery est l'une des opérations courantes. Parmi eux, utiliser la méthode .val() pour obtenir ou définir la valeur d'un élément de formulaire est une opération très courante. Cependant, dans certains cas précis, le problème de ne pas pouvoir utiliser la méthode .val() peut se poser. Cet article présentera quelques situations et solutions courantes, et fournira des exemples de code spécifiques. Description du problème Lorsque vous utilisez jQuery pour développer des pages frontales, vous rencontrerez parfois

Introduction et concepts de base d'Oracle RAC Introduction et concepts de base d'Oracle RAC Mar 07, 2024 am 11:39 AM

Introduction et concepts de base d'OracleRAC (RealApplicationClusters) À mesure que la quantité de données d'entreprise continue de croître et que la demande de haute disponibilité et de hautes performances devient de plus en plus importante, la technologie des clusters de bases de données devient de plus en plus importante. OracleRAC (RealApplicationClusters) est conçu pour résoudre ce problème. OracleRAC est une solution de base de données cluster haute disponibilité et hautes performances lancée par Oracle.

See all articles