<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Blog de Florian Bogey &#187; Noyau</title>
	<atom:link href="https://www.blog.florian-bogey.fr/tag/noyau/feed" rel="self" type="application/rss+xml" />
	<link>https://www.blog.florian-bogey.fr</link>
	<description>// Développeur Web - Administrateur système</description>
	<lastBuildDate>Mon, 03 Mar 2014 18:12:00 +0000</lastBuildDate>
	<language>fr-FR</language>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	
	<item>
		<title>Empêcher les dépassements de mémoire sur un serveur Linux</title>
		<link>https://www.blog.florian-bogey.fr/empecher-les-depassements-de-memoire-sur-un-serveur-linux.html</link>
		<comments>https://www.blog.florian-bogey.fr/empecher-les-depassements-de-memoire-sur-un-serveur-linux.html#comments</comments>
		<pubDate>Sat, 20 Apr 2013 11:58:32 +0000</pubDate>
		<dc:creator><![CDATA[Florian]]></dc:creator>
				<category><![CDATA[Administration Linux]]></category>
		<category><![CDATA[Systèmes et réseaux]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[killer]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[mémoire]]></category>
		<category><![CDATA[memory]]></category>
		<category><![CDATA[Noyau]]></category>
		<category><![CDATA[oom]]></category>
		<category><![CDATA[oom-killer]]></category>
		<category><![CDATA[overcommit_memory]]></category>
		<category><![CDATA[overcommit_ratio]]></category>
		<category><![CDATA[ram]]></category>
		<category><![CDATA[serveur]]></category>
		<category><![CDATA[swap]]></category>
		<category><![CDATA[Unix]]></category>

		<guid isPermaLink="false">http://www.blog.florian-bogey.fr/?p=491</guid>
		<description><![CDATA[Par défaut Linux possède un mécanisme complexe nommé OOM-Killer (pour Out-Of-Memory Killer), ce dernier est incorporé au noyau Linux et permettra en cas de dépassement de mémoire de tuer des processus inutiles afin d&#8217;éviter un plantage complet du serveur. OOM-Killer va donc être appelé lorsque le RAM et le SWAP sont entièrement utilisés et que [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Par défaut Linux possède un mécanisme complexe nommé OOM-Killer (pour Out-Of-Memory Killer), ce dernier est incorporé au noyau Linux et permettra en cas de dépassement de mémoire de tuer des processus inutiles afin d&rsquo;éviter un plantage complet du serveur.</p>
<p><span id="more-491"></span></p>
<p><strong>OOM-Killer</strong> va donc être appelé lorsque le <strong>RAM</strong> et le <strong>SWAP</strong> sont entièrement utilisés et que le système n&rsquo;a plus assez de mémoire à allouer aux processus. Ensuite <strong>OOM-Killer</strong> déterminera quel processus tuer suivant des heuristiques et ne terminera donc pas des processus système vitaux.</p>
<p>Les appels à <strong>OOM-Killer</strong> sont enregistrés dans les journaux systèmes (/var/log/messages) :</p>
<pre class="brush: bash; gutter: false; title: ; notranslate">httpd invoked oom-killer: gfp_mask=[...], order=[...], oomkilladj=[...]

[suivis de quelques ligne de debug &quot;Call Tace&quot;]</pre>
<p>Pour trouver tous les processus tués par <strong>OOM-Killer</strong> nous pourrons utiliser la commande suivante :</p>
<pre class="brush: bash; gutter: false; title: ; notranslate">grep oom-killer /var/log/messages</pre>
<p>Ici nous voyons qu&rsquo;<strong>OOM-Killer</strong> a terminé le processus httpd (soit Apache). Dans certains cas, par exemple lors de l&rsquo;utilisation d&rsquo;un moteur de base de données contenant beaucoup d&rsquo;enregistrements, ou si <strong>OOM-Killer</strong> à tendance à terminer les processus SSH, base de données, serveur web (ou autre), il sera utile de modifier le comportement de Linux avec la mémoire disponible.</p>
<p>Pour cela nous allons modifier le paramètre noyau <strong>overcommit_memory</strong>, ce paramètre peut prendre trois valeurs différentes :</p>
<ul>
<li>0 : Il s&rsquo;agit du comportement par défaut, les réservations de mémoire seront acceptées ou refusées selon un heuristique</li>
<li>1 : Toujours accepter</li>
<li>2 : Accepter les demandes, si elle ne dépasse pas la quantité de ressource déterminée dans le paramètre <strong>overcommit_ratio</strong></li>
</ul>
<p>Le paramètre <strong>overcommit_ratio</strong> (par défaut 50) détermine le pourcentage de mémoire physique que l&rsquo;on autorise à allouer en plus du swap. Pour connaitre la quantité de mémoire que l&rsquo;on autorise à allouer, le calcul est le suivant :  SWAP + ((RAM*<strong>overcommit_ratio</strong>)/100)</p>
<p>Pour éviter les dépassements de mémoire nous allons donc modifier les deux paramètres noyaux en mettant <strong>overcommit_memory</strong> à 2 et <strong>overcommit_ratio</strong> à 95 (Certains préconisent des valeurs plus basses telles que 75 ou 85, voir plus hautes). Les manipulations sont à effectuer en tant que root.</p>
<p>Pour modifier de façon temporaire (annulée au prochain redémarrage) :</p>
<pre class="brush: bash; gutter: false; title: ; notranslate">
echo 2 &gt; /proc/sys/vm/overcommit_memory
echo 95 &gt; /proc/sys/vm/overcommit_ratio
</pre>
<p>Pour une modification définitive, il faut éditer le fichier /etc/sysctl.conf</p>
<pre class="brush: bash; gutter: false; title: ; notranslate">
vi /etc/sysctl.conf
</pre>
<p>Et ajouter/modifier les lignes suivantes :</p>
<pre class="brush: bash; gutter: false; title: ; notranslate">
vm.overcommit_memory = 2
vm.overcommit_ratio = 95
</pre>
<p><a title="Photo" href="http://wallbase.cc/wallpaper/377152" target="_blank">Photo</a> et <a title="Référence" href="https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Performance_Tuning_Guide/s-memory-captun.html" target="_blank">Référence</a></p>
]]></content:encoded>
			<wfw:commentRss>https://www.blog.florian-bogey.fr/empecher-les-depassements-de-memoire-sur-un-serveur-linux.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Comment est &#171;&#160;construit&#160;&#187; Linux ?</title>
		<link>https://www.blog.florian-bogey.fr/comment-est-construit-linux.html</link>
		<comments>https://www.blog.florian-bogey.fr/comment-est-construit-linux.html#comments</comments>
		<pubDate>Sat, 06 Apr 2013 19:44:14 +0000</pubDate>
		<dc:creator><![CDATA[Florian]]></dc:creator>
				<category><![CDATA[Administration Linux]]></category>
		<category><![CDATA[News diverses]]></category>
		<category><![CDATA[Non classé]]></category>
		<category><![CDATA[Systèmes et réseaux]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Noyau]]></category>
		<category><![CDATA[OS]]></category>
		<category><![CDATA[Unix]]></category>
		<category><![CDATA[Vidéo]]></category>

		<guid isPermaLink="false">http://www.blog.florian-bogey.fr/?p=482</guid>
		<description><![CDATA[La fondation Linux a publié une vidéo très bien faite qui explique le processus de création du noyau Linux. La vidéo donne aussi quelques chiffres intéressants sur le système d&#8217;exploitation en lui-même (d&#8217;où les confusions volontaires entre système d&#8217;exploitation et noyau). Parmi les chiffres intéressants, on apprend par exemple que chaque jour, plus de 850 [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>La<strong> fondation Linux</strong> a publié une vidéo très bien faite qui explique le processus de<strong> création du noyau Linux</strong>. La vidéo donne aussi quelques chiffres intéressants sur le système d&rsquo;exploitation en lui-même (d&rsquo;où les confusions volontaires entre système d&rsquo;exploitation et noyau).</p>
<p><span id="more-482"></span></p>
<p>Parmi les chiffres intéressants, on apprend par exemple que chaque jour, plus de <strong>850 000 téléphones</strong> sous Linux sont activés, que <strong>9 super-ordinateurs</strong> sur 10 tournent sur Linux, ou encore que <strong>Google</strong>, <strong>Twitter</strong>, <strong>Facebook</strong> et <strong>Amazon</strong> utilisent Linux.</p>
<p><iframe frameborder="0" height="309" src="http://www.youtube.com/embed/yVpbFMhOAwE" width="550"></iframe></p>
]]></content:encoded>
			<wfw:commentRss>https://www.blog.florian-bogey.fr/comment-est-construit-linux.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
