<?xml
version="1.0" encoding="utf-8"?>
<rss version="2.0" 
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:atom="http://www.w3.org/2005/Atom"
>

<channel xml:lang="fr">
	<title>L'Imp'Rock Sc&#233;nette (by @_daffyduke_)</title>
	<link>https://www.coincoin.fr.eu.org/</link>
	<description>Les billets personnels d'Olivier Duquesne plus connu sur la toile &#233;lectronique sous le pseudonyme de DaffyDuke ...
Je pouet de temps en temps sur Mastodon</description>
	<language>fr</language>
	<generator>SPIP - www.spip.net</generator>
	<atom:link href="http://www.coincoin.fr.eu.org/spip.php?id_mot=18&amp;page=backend" rel="self" type="application/rss+xml" />

	<image>
		<title>L'Imp'Rock Sc&#233;nette (by @_daffyduke_)</title>
		<url>http://www.coincoin.fr.eu.org/local/cache-vignettes/L144xH97/siteon0-5c625.png?1719642190</url>
		<link>https://www.coincoin.fr.eu.org/</link>
		<height>97</height>
		<width>144</width>
	</image>



<item xml:lang="fr">
		<title>Notes Oracle Enterprise Manager</title>
		<link>http://www.coincoin.fr.eu.org/?Notes-Oracle-Enterprise-Manager</link>
		<guid isPermaLink="true">http://www.coincoin.fr.eu.org/?Notes-Oracle-Enterprise-Manager</guid>
		<dc:date>2015-10-29T11:35:00Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Olivier Duquesne aka DaffyDuke</dc:creator>


		<dc:subject>oracle</dc:subject>

		<description>
&lt;p&gt;cloud =&gt; M&#234;mes interrogations qu'au d&#233;but internet vision Oracle : * vente &#224; licence =&gt; abonnement (usage) * m&#234;mes infra pour r&#233;versibilit&#233; * plat de spaghettis aux cupcakes * une console unique pour public+private+hybrid (toute option d'infra) &lt;br class='autobr' /&gt;
Oracle Database Cloud Service =&gt; dashboards pour pilotage/monitor/... * Schema Service :juste un sch&#233;ma dans un cloud Oracle * Database as a Service : Oracle Linux 6.4, quelques &#233;ditions, ..., * Virtual Ed : vm pr&#233;packag&#233;es, conf &#224; faire * Cloud (&#8230;)&lt;/p&gt;


-
&lt;a href="http://www.coincoin.fr.eu.org/?-Au-boulot-" rel="directory"&gt;Au boulot&lt;/a&gt;

/ 
&lt;a href="http://www.coincoin.fr.eu.org/?+-oracle-+" rel="tag"&gt;oracle&lt;/a&gt;

		</description>


 <content:encoded>&lt;div class='rss_texte'&gt;&lt;textarea readonly='readonly' cols='40' rows='63' class='spip_cadre spip_cadre_block' dir='ltr'&gt;cloud =&gt; M&#234;mes interrogations qu'au d&#233;but internet vision Oracle: * vente &#224; licence =&gt; abonnement (usage) * m&#234;mes infra pour r&#233;versibilit&#233; * plat de spaghettis aux cupcakes * une console unique pour public+private+hybrid (toute option d'infra) Oracle Database Cloud Service =&gt; dashboards pour pilotage/monitor/... * Schema Service :juste un sch&#233;ma dans un cloud Oracle * Database as a Service : Oracle Linux 6.4, quelques &#233;ditions, ..., * Virtual Ed : vm pr&#233;packag&#233;es, conf &#224; faire * Cloud tooling : idem mais pr&#233;configur&#233; =&gt; Workshop &#224; venir (1j) Oracle Backup Cloud Service En ce moment : rman + media (le media devient un cloud dans cette solution) Pour des bases existantes ou sur du on-premise. Chiffr&#233;s, Compression (option advanced security/compression backup normalement) ici option(s) fournie(s) avec l'option Cloud : compatible HCC sur Hexadata exclusivement aux US chez Oracle (!Patriot Act!) Int&#233;gr&#233;e &#224; Enterprise Manager 33 $ / To / mois Int&#233;r&#234;t du partenariat &#224; revoir : attention aux usages direct depuis les clients Oracle Java Cloud Service SES Extension provi en cloud =&gt; VM Weblo / cluster (Server et ou Portal) =&gt; plus orient&#233; prod VirtualImage : Weblo complet pour DRP (Coherence inclus mais attention &#224; l'actif/actif si &gt;5ms) =&gt; plus orient&#233; dev Pas d'autoscalling, mais scal bien &#224; chaud Patching et rollback l'image (cool, g&#233;r&#233; en parall&#232;le de base par exemple via la m&#234;me console, avec la config du weblo par exemple) Inclus LB = celui d'HexaLogic = Traffic Director Coherence en option Oracle Integrtion Cloud Service Offre BPM Suite, Process Cloud Service pour mod&#233;liser les workflow : compatible Bonita (BPMn2.0) =&gt; liant avec services tiers comme SalesForce cloud.oracle.com : business intelligence dispo Oracle Document Cloud Service : Dropbox Social Network Service : Yammer DataGuard dans un cloud Oracle (&#224; venir) Big Data (&#224; venir) Note: bannir le dblink sur les offres clouds Concurrence : Azure + Amazon (o&#249; les licences ne sont pas incluses) Attention au pourcentage de comm' obligatoire si usage des produits SalesForce Programme des droits de reventes Cloud&lt;/textarea&gt;&lt;/div&gt;
		
		</content:encoded>


		

	</item>
<item xml:lang="fr">
		<title>FAN vs TAF</title>
		<link>http://www.coincoin.fr.eu.org/?FAN-vs-TAF</link>
		<guid isPermaLink="true">http://www.coincoin.fr.eu.org/?FAN-vs-TAF</guid>
		<dc:date>2010-12-01T16:37:00Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Olivier Duquesne aka DaffyDuke</dc:creator>


		<dc:subject>oracle</dc:subject>

		<description>
&lt;p&gt;Non ni TAF ni FAN(FCF) ne rejouent les transactions DML (insert/update/delete) il faut les reprogrammer, mais ce n'est pas une obligation. Seul TAF permet la reconnection automatique &lt;br class='autobr' /&gt;
du client et uniquement sur une Query si configur&#233; (pas DML) FAN ne le fait pas car FAN est un mecanisme programmatique &lt;br class='autobr' /&gt;
TAF permet le rejeu d'un select automatiquement si configur&#233;, mais en r&#233;alit&#233; ne sert qu'en DataWarehouse lors de select cons&#233;quents. Je le configure ici pour &#233;viter sa reprogrammation (&#8230;)&lt;/p&gt;


-
&lt;a href="http://www.coincoin.fr.eu.org/?-Au-boulot-" rel="directory"&gt;Au boulot&lt;/a&gt;

/ 
&lt;a href="http://www.coincoin.fr.eu.org/?+-oracle-+" rel="tag"&gt;oracle&lt;/a&gt;

		</description>


 <content:encoded>&lt;div class='rss_texte'&gt;&lt;p&gt;Non ni TAF ni FAN(FCF) ne rejouent les transactions DML (insert/update/delete) il faut les reprogrammer, mais ce n'est pas une obligation. Seul TAF permet la reconnection automatique&lt;/p&gt;
&lt;p&gt;du client et uniquement sur une Query si configur&#233; (pas DML) FAN ne le fait pas car FAN est un mecanisme programmatique&lt;/p&gt;
&lt;p&gt;TAF permet le rejeu d'un select automatiquement si configur&#233;, mais en r&#233;alit&#233; ne sert qu'en DataWarehouse lors de select cons&#233;quents. Je le configure ici pour &#233;viter sa reprogrammation&lt;/p&gt;
&lt;p&gt;donc il sera utile et utilis&#233; pour les transactions de type Query&lt;/p&gt;
&lt;p&gt;Une totale transparence transactionnelle est l'id&#233;al mais il faut bien voir que sa programmation n'est pas des plus simple dans les deux cas (FAN ou TAF) : il faudrait que les developpeurs&lt;/p&gt;
&lt;p&gt;par exemple puissent encapsuler une connexion database dans une classe sp&#233;ciale pour les transaction en failover et dans une autre classe pour une logique sans failover s'ils veulent&lt;/p&gt;
&lt;p&gt;categoriser les transactions &#224; rejouer par exemple.&lt;/p&gt;
&lt;p&gt;De plus la gestion des &#233;v&#233;nements doit &#234;tre ma&#238;tris&#233;e et elle ne pourra se faire qu'au prix de tests sur une plateforme &#034;crashable&#034;.&lt;/p&gt;
&lt;p&gt;Je ne pense pas que la d&#233;cision du rejeu d'une transaction d&#233;pende uniquement du d&#233;veloppement mais soit de plus haut niveau.&lt;/p&gt;
&lt;p&gt;Que cela soit TAF ou FAN la non prise en compte d'un code retour s'l 'est pas correctement trapp&#233;e par l'exception correspondante terminera le programme.&lt;/p&gt;
&lt;p&gt;La base commence toujours par d&#233;faire(rollback) les changements non commit&#233;s (l' instance restante) une erreur sera remont&#233;e au client qui devrait &#224; son tour faire son propre rollback.&lt;/p&gt;
&lt;p&gt;Une seconde erreur est remontee pour indiquer que la connexion est perdue. Cette erreur l&#224; devra &#234;tre trapp&#233;e si l'on souhaite rejouer la transaction.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;FAN&lt;/h2&gt;
&lt;p&gt;La difference entre TAF et FAN est not&#233;e ici :&lt;/p&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;strong&gt;Application-level connection retries&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Fast Connection Failover supports application-level connection retries. This gives the application control of responding to connection failovers. The application can choose whether to retry the connection or to rethrow the exception. TAF supports connection retries only at the OCI/Net layer. =&gt; Avec FCF c'est &#224; la charge du developpeur de se reconnecter. Avec TAF c'est automatique.&lt;/p&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;strong&gt;Integration with the implicit connection cache&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Fast Connection Failover is well-integrated with the implicit connection cache, which allows the connection cache manager to manage the cache for high availability. For example, failed connections are automatically invalidated in the cache. TAF works at the network level on a per-connection basis, which means that the connection cache cannot be notified of failures =&gt; ???&lt;/p&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;strong&gt;Event-based&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Fast Connection Failover is based on the Oracle RAC event mechanism. This means that Fast Connection Failover is efficient and detects failures quickly for both active and inactive connections.&lt;/p&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;strong&gt;Load-balancing support&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Fast Connection Failover supports UP event load balancing of connections and run-time work request distribution across active Oracle RAC instances.&lt;/p&gt;
&lt;p&gt;FAN repose sur ONS (oracle notification service) qui permet la notification des &#233;vnemenents remont&#233; par EVMD. ONS est deja configure sur les noeud du cluster et n&#233;cessite&lt;/p&gt;
&lt;p&gt;une configuration supplementaire sur le middle pour &#234;tre activ&#233;.&lt;/p&gt;
&lt;p&gt;Il faut noter une difference essentielle entre TAF et FAN &#224; savoir que FAN remonte les informations d'etat directement au niveau applicatif (push) alors&lt;/p&gt;
&lt;p&gt;que TAF se contente de faire du polling (client). FAN est donc beaucoup plus r&#233;actif. FAN peut neanmoins &#234;tre integre avec TAF&lt;/p&gt;
&lt;p&gt;Pour programmer FAN il est possible d'utiliser soit C soit Java. Ensuite on peut utiliser soit ONS API C soit ONS Java API soit&lt;/p&gt;
&lt;p&gt;implicit cache connection de JDBC et FCF et laisser la gestion des evenement FAN par la librairie JDBC (jdbc)(JDBC-OCI ou jdbc thin) ce qui evite d'avoir a gerer l'API ONS directement.&lt;/p&gt;
&lt;p&gt;Dans le dernier cas il y a toujours une gestion des evenements mais FAN mais est plus &#034;souple&#034; &#224; programmer.&lt;/p&gt;
&lt;p&gt;DBCP fonctionne avec Oracle Cache connection et FCF (Fast Connection Failover) dans sa version actuellement implant&#233;e sur nos serveurs. Il faut activer implict cache connection et FCF.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;TAF&lt;/h2&gt;
&lt;p&gt;On peut n&#233;anmoins s'&#233;viter la programmation FAN en utilisant les callback et l'interface OracleOCIFailover pour programmer le rejeu du DML.&lt;/p&gt;
&lt;p&gt;Il faut implementer la fonction callback fourni par la classe OracleOCIFailover&lt;/p&gt;
&lt;p&gt;Dans une transaction classique :&lt;/p&gt;
&lt;p&gt;Registrer la fonction callback : =&gt; registerTAFCallback()&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='51' class='spip_cadre spip_cadre_block' dir='ltr'&gt;// Fonction qui cr&#233;e une nouvelle connexion void handleDBConnections() { try { DriverManager.registerDriver(new oracle.jdbc.OracleDriver()); con = (OracleConnection) DriverManager.getConnection(&#034;jdbc:oracle:oci:@DBDATA&#034;,&#034;user&#034;,&#034;passwd&#034;); if (con != null) this.RegisterFailover(); } catch (SQLException e) { cat.debug(&#034;Error Occurred while registring failover.&#034;); e.printStackTrace(); } } // Fonction qui execute une query void runQuery() { ...... try { String query = &#034;insert into essai values (1)&#034;; rs = stmst.executeQuery(query); } catch (SQLException e) { if ((e.getErrorCode() == 1012) || (e.getErrorCode() == 1033) || // Ces codes d'erreur sont relatif &#224; une node failure ou connexion failure (e.getErrorCode() == 1034) || (e.getErrorCode() == 1089) || (e.getErrorCode() == 3113) || (e.getErrorCode() == 3114) || (e.getErrorCode() == 10203) || (e.getErrorCode() == 12500) || (e.getErrorCode() == 12571) || (e.getErrorCode() == 25408)) cat.debug(&#034;Node Failed pendant l'execution d'une instruction INSERT/DELETE/UPDATE&#034;); //rollback rollback(); // Obtenir une nouvelle connection handleDBConnections(); &lt;= on redemande une nouvelle connexion // R&#233;executer la transaction un certain nombre de retry a programmer soi meme runQuery(); } else // L'erreur n'est pas une node failure rollback(); } }&lt;/textarea&gt;
&lt;p&gt;Enfin la fonction callback (que j'ai remis dans un exemple complet mais dont la premiere partie n'est la que pour montrer le register de la callback)&lt;/p&gt;
&lt;p&gt;La seconde partie montre l'implantation de la callback.&lt;/p&gt;
&lt;p&gt;L'implementation de la callback n'est pas obligatoire si on ne veut pas rejouer du DML mais elle peut &#234;tre l&#224; pour logger le comportement du failover OU permettre&lt;/p&gt;
&lt;p&gt;de redemander une connexion en cas de probleme du failover ou bien d'aborter la demande. Dans ce cas precis FO_ERROR = 5 l'application peut redemander une reconnexion&lt;/p&gt;
&lt;p&gt;du nombre de fois sp&#233;cifi&#233; par le parametrage de tnsnames.ora (RETRIES) je pense et sleep pendant le temps indique dans le programme&lt;/p&gt;
&lt;p&gt;si specifi&#233; (ou parametre DELAY ?)&lt;/p&gt;
&lt;p&gt;La doc oracle n'etant pas tres precise et prolixe en la matiere cela est &#224; tester.&lt;/p&gt;
&lt;p&gt;Les points d'interrogation sont le comportement du programme en cas FO_ERROR = 5. Le comportement de TAF est de recreer une connexion automatiquement en cas de failover sur une query pas sur DML . Dans le cas ou l'on impl&#233;mente une Query c'est TAF via tnsnames qui automatiquement recr&#233;e une connexion mais rien&lt;/p&gt;
&lt;p&gt;n'interdit d'aborter le retry dans le cas FO_ERROR = 5, il suffit de ne pas envoyer un FO_RETRY.&lt;/p&gt;
&lt;p&gt;L'exemple que je fournis est sur du DML et c'est &#224; la charge du programme de redemander une connexion via la fonction handleDBConnections()) si souhait&#233;&lt;/p&gt;
&lt;p&gt;Dans ce cas je pense aussurement que le parametre RETRIES et DELAY ne sont plus geres par tnsnames mais par l'application qui doit elle meme gerer ses compteurs de retry et de sleep&lt;/p&gt;
&lt;p&gt;Encore une fois on peut aborter le nombre de retries dans le cas du FO_ERROR si souhait&#233;.&lt;/p&gt;
&lt;p&gt;Enfin la doc n'est pas tres claire s'il faut fournir un rollback au niveau applicatif ou pas (comme je l'ai indiqu&#233; dans la fonction runQuery())&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='244' class='spip_cadre spip_cadre_block' dir='ltr'&gt;- * This sample demonstrates the registration and operation of - * JDBC OCI application failover callbacks - * Note: Before you run this sample, set up the following - * service in tnsnames.ora: - * inst_primary=(DESCRIPTION= - * (ADDRESS=(PROTOCOL=tcp)(Host=hostname)(Port=1521)) - * (CONNECT_DATA=(SERVICE_NAME=ORCL) - * (FAILOVER_MODE=(TYPE=SELECT)(METHOD=BASIC)) - * ) - * ) - * Please see Net8 Administrator's Guide for more detail about - * failover_mode - * - * To demonstrate the the functionality, first compile and start up the sample, - * then log into sqlplus and connect /as sysdba. While the sample is still - * running, shutdown the database with &#034;shutdown abort;&#034;. At this moment, - * the failover callback functions should be invoked. Now, the database can - * be restarted, and the interrupted query will be continued. - * - */ - // You need to import java.sql and oracle.jdbc packages to use - // JDBC OCI failover callback - import java.sql.*; - import java.net.*; - import java.io.*; - import java.util.*; - import oracle.jdbc.OracleConnection; - import oracle.jdbc.OracleOCIFailover; - import oracle.jdbc.pool.OracleDataSource; - public class OCIFailOver { - static final String user = &#034;hr&#034;; - static final String password = &#034;hr&#034;; - static final String URL = &#034;jdbc:oracle:oci8:@inst_primary&#034;; - public static void main (String[] args) throws Exception { - Connection conn = null; - CallBack fcbk= new CallBack(); - String msg = null; - Statement stmt = null; - ResultSet rset = null; - // Create a OracleDataSource instance and set properties - OracleDataSource ods = new OracleDataSource(); - ods.setUser(user); - ods.setPassword(password); - ods.setURL(URL); - // Connect to the database - conn = ods.getConnection(); - // register TAF callback function - ((OracleConnection) conn).registerTAFCallback(fcbk, msg); - // Create a Statement - stmt = conn.createStatement (); - for (int i=0; i&lt;30; i++) { - // Select the NAMEs column from the EMPLOYEES table - rset = stmt.executeQuery (&#034;select FIRST_NAME, LAST_NAME from EMPLOYEES&#034;); - // Iterate through the result and print the employee names - while (rset.next ()) - System.out.println (rset.getString (1) + &#034; &#034; + - rset.getString (2)); - // Sleep one second to make it possible to shutdown the DB. - Thread.sleep(1000); - } // End for - // Close the RseultSet - rset.close(); - // Close the Statement - stmt.close(); - // Close the connection - conn.close(); - } // End Main() - } // End class jdemofo - /* - * Define class CallBack - */ - class CallBack implements OracleOCIFailover { - // TAF callback function - public int callbackFn (Connection conn, Object ctxt, int type, int event) { - /********************************************************************* - * There are 7 possible failover event - * FO_BEGIN = 1 indicates that failover has detected a - * lost connection and faiover is starting. - * FO_END = 2 indicates successful completion of failover. - * FO_ABORt = 3 indicates that failover was unsuccessful, - * and there is no option of retrying. - * FO_REAUTH = 4 indicates that a user handle has been re- - * authenticated. - * FO_ERROR = 5 indicates that failover was temporarily un- - * successful, but it gives the apps the opportunity - * to handle the error and retry failover. - * The usual method of error handling is to issue - * sleep() and retry by returning the value FO_RETRY - * FO_RETRY = 6 - * FO_EVENT_UNKNOWN = 7 It is a bad failover event - *********************************************************************/ - String failover_type = null; - switch (type) { - case FO_SESSION: - failover_type = &#034;SESSION&#034;; - break; - case FO_SELECT: - failover_type = &#034;SELECT&#034;; - break; - default: - failover_type = &#034;NONE&#034;; - } - switch (event) { - case FO_BEGIN: - System.out.println(ctxt + &#034;: &#034;+ failover_type + &#034; failing over...&#034;); - break; - case FO_END: - System.out.println(ctxt + &#034;: failover ended&#034;); - break; - case FO_ABORT: - System.out.println(ctxt + &#034;: failover aborted.&#034;); - break; - case FO_REAUTH: - System.out.println(ctxt + &#034;: failover needs reauthorization&#034;); - break; - case FO_ERROR: - System.out.println(ctxt + &#034;: failover error gotten. Sleeping...&#034;); - // Sleep for a while of 2s - try { - Thread.sleep(2000); - } - catch (InterruptedException e) { - System.out.println(&#034;Thread.sleep has problem: &#034; + e.toString()); - } - return FO_RETRY; - default: - System.out.println(ctxt + &#034;: bad failover event.&#034;); - break; - } - return 0; - } - } - Sample code to test FCF - The code sample below shows the way how FCF works, it may not necessarily be the best way to do, but it should give you a general idea of what is needed. Make sure to change the following strings in the program, &lt;hostname1&gt;, &lt;hostname2&gt; and &lt;service_name&gt;. import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.Properties; import oracle.jdbc.pool.OracleDataSource; public class FCFDemo { public staticvoid main(String[] args) throws InterruptedException { try { OracleDataSource ods = new OracleDataSource(); ods.setUser(&#034;scott&#034;); ods.setPassword(&#034;tiger&#034;); String dbURL=&#034;jdbc:oracle:thin:@&#034; +&#034;(DESCRIPTION=&#034; + &#034;(ADDRESS=(PROTOCOL =TCP)&#034; + &#034;(HOST=&lt;hostname1&gt;)(PORT=1521))&#034; + &#034;(ADDRESS=(PROTOCOL =TCP)&#034; + &#034;(HOST=&lt;hostname2&gt;)(PORT=1521))&#034; + &#034;(LOAD_BALANCE=ON)(CONNECT_DATA=(SERVICE_NAME=&lt;service_name&gt;)))&#034;; ods.setURL(dbURL); ods.setConnectionCachingEnabled(true); ods.setConnectionCacheName(&#034;cache&#034;); Properties prop = new Properties(); prop.setProperty(&#034;MinLimit&#034;, &#034;5&#034;); prop.setProperty(&#034;MaxLimit&#034;, &#034;40&#034;); prop.setProperty(&#034;InitialLimit&#034;, &#034;10&#034;); ods.setConnectionCacheProperties(prop); ods.setFastConnectionFailoverEnabled(true); Connection conn = ods.getConnection(); System.out.println(conn); Statement stmt=null; ResultSetrs = null; try { while (true) { rs =stmt.executeQuery(&#034;select instance_name from v$instance&#034;); while(rs.next()) { System.out.println(&#034;Instance name: &#034; + rs.getString(1)); } Thread.sleep(1000); } } catch (SQLException sqle) { conn =ods.getConnection(); //Re-get the conn stmt =conn.createStatement(); } } catch(Exception e) { e.printStackTrace(); } } }&lt;/textarea&gt;
&lt;textarea readonly='readonly' cols='40' rows='24' class='spip_cadre spip_cadre_block' dir='ltr'&gt;#!/bin/sh count=0 while [ $count -lt 5 ] # Set up a loop control do # Begin the loop count=&lt;code class='spip_code spip_code_inline' dir='ltr'&gt;expr $count + 1&lt;/code&gt; # Increment the counter sqlplus -s scott/tiger@R2d1C@test.sql done col &#034;Instance&#034; format a20 col &#034;Host&#034; format a20 col &#034;Service Name&#034; format a20 select sys_context('userenv', 'instance_name') &#034;Instance&#034;, sys_context('userenv', 'server_host') &#034;Host&#034;, sys_context('userenv', 'service_name') &#034;Service Name&#034; from dual / exit;&lt;/textarea&gt;
&lt;p&gt;Note :&lt;/p&gt;
&lt;p&gt;Driver-type dependency : TAF is in fact a OCI failover mechanism exposed to Java through JDBC-OCI. FCF is driver-type independent (i.e., works for both JDBC-Thin and JDBC-OCI).&lt;/p&gt;&lt;/div&gt;
		
		</content:encoded>


		

	</item>
<item xml:lang="fr">
		<title>Solutions Linux 2007</title>
		<link>http://www.coincoin.fr.eu.org/?Solutions-Linux-2007-141</link>
		<guid isPermaLink="true">http://www.coincoin.fr.eu.org/?Solutions-Linux-2007-141</guid>
		<dc:date>2007-02-08T18:30:00Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Olivier Duquesne aka DaffyDuke</dc:creator>


		<dc:subject>php</dc:subject>
		<dc:subject>shell</dc:subject>
		<dc:subject>kernel</dc:subject>
		<dc:subject>nfs</dc:subject>
		<dc:subject>oracle</dc:subject>
		<dc:subject>linux</dc:subject>
		<dc:subject>perl</dc:subject>
		<dc:subject>mysql</dc:subject>
		<dc:subject>postgresql</dc:subject>
		<dc:subject>virtualisation</dc:subject>
		<dc:subject>xen</dc:subject>

		<description>&lt;p&gt;Cette ann&#233;e, mon entreprise m'a offert un pass pour assister aux conf&#233;rences professionnelles. Je tiens ici &#224; faire partager la communaut&#233; de mes quelques notes.&lt;/p&gt;

-
&lt;a href="http://www.coincoin.fr.eu.org/?-Au-boulot-" rel="directory"&gt;Au boulot&lt;/a&gt;

/ 
&lt;a href="http://www.coincoin.fr.eu.org/?+-php-+" rel="tag"&gt;php&lt;/a&gt;, 
&lt;a href="http://www.coincoin.fr.eu.org/?+-shell-+" rel="tag"&gt;shell&lt;/a&gt;, 
&lt;a href="http://www.coincoin.fr.eu.org/?+-kernel-+" rel="tag"&gt;kernel&lt;/a&gt;, 
&lt;a href="http://www.coincoin.fr.eu.org/?+-nfs-+" rel="tag"&gt;nfs&lt;/a&gt;, 
&lt;a href="http://www.coincoin.fr.eu.org/?+-oracle-+" rel="tag"&gt;oracle&lt;/a&gt;, 
&lt;a href="http://www.coincoin.fr.eu.org/?+-linux-+" rel="tag"&gt;linux&lt;/a&gt;, 
&lt;a href="http://www.coincoin.fr.eu.org/?+-perl-+" rel="tag"&gt;perl&lt;/a&gt;, 
&lt;a href="http://www.coincoin.fr.eu.org/?+-mysql-+" rel="tag"&gt;mysql&lt;/a&gt;, 
&lt;a href="http://www.coincoin.fr.eu.org/?+-postgresql-+" rel="tag"&gt;postgresql&lt;/a&gt;, 
&lt;a href="http://www.coincoin.fr.eu.org/?+-virtualisation-+" rel="tag"&gt;virtualisation&lt;/a&gt;, 
&lt;a href="http://www.coincoin.fr.eu.org/?+-xen-+" rel="tag"&gt;xen&lt;/a&gt;

		</description>


 <content:encoded>&lt;div class='rss_texte'&gt;&lt;div class='spip_document_5281 spip_document spip_documents spip_document_image spip_documents_right spip_document_right'&gt;
&lt;figure class=&#034;spip_doc_inner&#034;&gt;
&lt;a href=&#034;http://www.solutionslinux.fr/&#034; class=&#034;spip_out spip_doc_lien&#034;&gt; &lt;img src='http://www.coincoin.fr.eu.org/local/cache-vignettes/L188xH103/Logo_solutionsLinux_LR-1658b.jpg?1719647902' width='188' height='103' alt='' /&gt;&lt;/a&gt;
&lt;/figure&gt;
&lt;/div&gt;&lt;h2 class=&#034;spip&#034;&gt;D&#233;ploiement&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;D&#233;ploiement &#224; grande &#233;chelle d'une solution libre d'inventaire et de gestion de parc&lt;/strong&gt; &lt;i&gt;par Walid NOUH / Atos Origin&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;a href=&#034;http://www.solutionslinux.fr/document_conferencier/45cb423eef38c.pdf&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Les slides de la conf&#233;rence&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;L'exploitation de Linux &#224; large &#233;chelle&lt;/strong&gt; &lt;i&gt;par Patrice LALLEMENT / RIFT &lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; solution &#224; base de &lt;strong&gt;master de CD Rom&lt;/strong&gt; : fragile, un master par site, assez statique. N&#233;cessite des master par mat&#233;riel. Long pour un d&#233;ploiement &#224; grande &#233;chelle.
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; solution en &lt;strong&gt;client l&#233;ger&lt;/strong&gt; : il suffit de maintenir le server. Probl&#232;me, sur la plupart des d&#233;ploiements r&#233;cents, il s'agit de postes lourds qui font tourner des applications d&#233;port&#233;es, ce qui revient &#224; maintenir les deux solutions.
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;strong&gt;virtualisation&lt;/strong&gt; : chaque machine tourne dans une image virtuelle facilement d&#233;plyable et modifiable : &lt;i&gt;xen&lt;/i&gt;/&lt;i&gt;vmware&lt;/i&gt;/&lt;i&gt;qemu&lt;/i&gt; .&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Utilisation de &lt;a href=&#034;http://www.mondorescue.org/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Mondorescue&lt;/a&gt;&lt;/strong&gt; (Disaster Recovery) par &lt;i&gt;&lt;a href=&#034;#bruno.cornec#mc#hp.com#&#034; title=&#034;bruno.cornec..&#229;t..hp.com&#034; onclick=&#034;location.href=mc_lancerlien('bruno.cornec','hp.com'); return false;&#034; class=&#034;spip_mail&#034;&gt;Bruno Cornec&lt;/a&gt; / HP&lt;/i&gt;&lt;/p&gt;
&lt;div class='spip_document_5269 spip_document spip_documents spip_document_image spip_documents_center spip_document_center'&gt;
&lt;figure class=&#034;spip_doc_inner&#034;&gt; &lt;img src='http://www.coincoin.fr.eu.org/local/cache-vignettes/L550xH350/mondorescue-62e33.png?1719647902' width='550' height='350' alt='' /&gt;
&lt;/figure&gt;
&lt;/div&gt;&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; g&#233;n&#233;ration de CD/DVD/ISO , archivage au format lzo / gzip / afio (afio car l'archivage se fait fichier par fichier, alors que cpio s'apparente plus &#224; tar) tout en prenant en compte la g&#233;om&#233;trie des disques (bient&#244;t la configuration RAID gr&#226;ce &#224; l'int&#233;gration d'outils HP tels que hpacucli, hponcfg, conrep, TBC). Les images sont bootables dans un qemu.&lt;/li&gt;&lt;li&gt; bas&#233; sur mindi (mini-distribution Linux bootable)&lt;/li&gt;&lt;li&gt; interfaces en GUI ou ligne de commande&lt;/li&gt;&lt;li&gt; ABSOLUMENT PAS PREVU pour effectuer des sauvegardes.&lt;/li&gt;&lt;li&gt; restauration possible via CD/PXE/iLo&lt;/li&gt;&lt;li&gt; permet le changement de filesystem&lt;/li&gt;&lt;li&gt; possibilit&#233; de faire de la comparaison syst&#232;me courant / syst&#232;me archiv&#233;&lt;/li&gt;&lt;li&gt; possibilit&#233; de d&#233;ploiement par cl&#244;nage (attention au mat&#233;riel)&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;http://www.mondorescue.org/docs/mondo-presentation-v2.pdf&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Slide pr&#233;sent&#233; &#224; Solutions Linux&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;h2 class=&#034;spip&#034;&gt;Supervision avec des logiciels libres&lt;/h2&gt;
&lt;p&gt;&lt;i&gt;Par Bruno Paul Martin / Bull&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Avant de pouvoir superviser un ensemble de machines, il convient d'identifier plusieurs &#233;l&#233;ments : &lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &#233;tablir un inventaire des &#233;l&#233;ments &#224; superviser et des configurations :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; &lt;a href=&#034;http://www.glpi-project.org/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;GLPI&lt;/a&gt;/&lt;a href=&#034;http://ocsinventory.sourceforge.net/index.php?page=French&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;OCS Inventory NG&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;http://openqrm.org/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;OpenQRM&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;http://netdisco.org/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Netdisco&lt;/a&gt; (layer 2 et 3, Cisco Discovery Protocol)&lt;/li&gt;&lt;li&gt; Faith (qui utilise les Windows Management Instrumentation)&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;http://www.cfengine.org/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;cfengine&lt;/a&gt; / &lt;a href=&#034;http://www.informatik.uni-koeln.de/fai/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;fai (Fully Automatic Installation)&lt;/a&gt; / &lt;a href=&#034;http://www.netdirector.org/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;netdirector&lt;/a&gt; / &lt;a href=&#034;http://www.shrubbery.net/rancid/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;RANCID&lt;/a&gt; (Really Awesome New Cisco confIg Differ)&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; observer les journaux d'&#233;v&#232;nement&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; &lt;a href=&#034;http://www.balabit.com/products/syslog-ng/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;syslog-ng&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;http://opensims.sourceforge.net/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;OpenSIMS&lt;/a&gt; (Security Infrastructure Management System / gestion d'&#233;v&#232;nement de s&#233;curit&#233;)&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; d&#233;finir des &#233;tats de disponibilit&#233; et&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; des &#233;quipements&lt;/li&gt;&lt;li&gt; des services&lt;/li&gt;&lt;li&gt; Interfaces de monitoring :
&lt;div class='spip_document_5265 spip_document spip_documents spip_document_image spip_documents_left spip_document_left'&gt;
&lt;figure class=&#034;spip_doc_inner&#034;&gt;
&lt;a href=&#034;http://daffyduke.lautre.net/spip/IMG/png/cacti_promo_main.png&#034; class=&#034;spip_out spip_doc_lien&#034;&gt; &lt;img src='http://www.coincoin.fr.eu.org/local/cache-vignettes/L300xH223/cacti_promo_main-short-1db9d.png?1719647902' width='300' height='223' alt='' /&gt;&lt;/a&gt;
&lt;/figure&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a href=&#034;https://mirrors.edge.kernel.org/pub/software/admin/mon/html/man/mon.html&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;mon&lt;/a&gt; / &lt;a href=&#034;http://oss.oetiker.ch/mrtg/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;MRTG&lt;/a&gt;&lt;span class=&#034;spip_note_ref&#034;&gt; [&lt;a href=&#034;#nb1&#034; class=&#034;spip_note&#034; rel=&#034;appendix&#034; id=&#034;nh1&#034;&gt;1&lt;/a&gt;]&lt;/span&gt; / &lt;a href=&#034;http://www.oreon-project.org/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Oreon&lt;/a&gt;&lt;/p&gt;
&lt;div class='spip_document_5262 spip_document spip_documents spip_document_image spip_documents_right spip_document_right'&gt;
&lt;figure class=&#034;spip_doc_inner&#034;&gt;
&lt;a href=&#034;http://daffyduke.lautre.net/spip/IMG/png/oreon.png&#034; class=&#034;spip_out spip_doc_lien&#034;&gt; &lt;img src='http://www.coincoin.fr.eu.org/local/cache-vignettes/L300xH243/oreon-short-85a37.png?1719647902' width='300' height='243' alt='' /&gt;&lt;/a&gt;
&lt;/figure&gt;
&lt;/div&gt; &lt;p&gt;(frontend Nagios, notion de SLAs) / &lt;a href=&#034;http://cacti.net/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;cacti&lt;/a&gt; / &lt;a href=&#034;http://zenoss.com/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;ZenOSS&lt;/a&gt; (successeur de Crickett)&lt;/p&gt;
&lt;div class='spip_document_5267 spip_document spip_documents spip_document_image spip_documents_left spip_document_left'&gt;
&lt;figure class=&#034;spip_doc_inner&#034;&gt;
&lt;a href=&#034;http://daffyduke.lautre.net/spip/IMG/jpg/zenoss.jpg&#034; class=&#034;spip_out spip_doc_lien&#034;&gt; &lt;img src='http://www.coincoin.fr.eu.org/local/cache-vignettes/L150xH115/zenoss-short-61eb8.jpg?1719647902' width='150' height='115' alt='' /&gt;&lt;/a&gt;
&lt;/figure&gt;
&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; effectuer des mesures de performance.&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; performance r&#233;elle : je roule &#224; 52 km/h&lt;/li&gt;&lt;li&gt; performance sous condition : je roule 43 km en respectant les limitations de vitesse&lt;/li&gt;&lt;li&gt; performance limite : je peux rouler jusqu'&#224; 210 km/h&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Il faut ensuite consolider ces diff&#233;rents indicateurs et &#233;tablir des seuils de quantit&#233;/qualit&#233;/d&#233;faut/criticit&#233;.&lt;/p&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; A la suite de quoi on peut ouvrir un syst&#232;me de gestion d'incident&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; &lt;a href=&#034;http://bestpractical.com/rt/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Request Tracker&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;http://www.mantisbt.org/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Mantis&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;http://trac.edgewall.org/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Trac&lt;/a&gt;
&lt;div class='spip_document_5270 spip_document spip_documents spip_document_image spip_documents_right spip_document_right'&gt;
&lt;figure class=&#034;spip_doc_inner&#034;&gt; &lt;img src='http://www.coincoin.fr.eu.org/local/cache-vignettes/L188xH165/weathermap-893db.gif?1719647902' width='188' height='165' alt='' /&gt;
&lt;/figure&gt;
&lt;/div&gt; &lt;p&gt;&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Reporting :&lt;/p&gt;
&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;http://netmon.grnet.gr/weathermap/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;weathermap4rrd&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;http://www.oreon-project.org/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Oreon&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;http://www.rap.prd.fr/services/metrologieActive.php&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;COSMON&lt;/a&gt; et iPerf&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Pr&#233;sentation succinte de &lt;a href=&#034;http://zenoss.com/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;ZenOSS&lt;/a&gt; :&lt;/p&gt;
&lt;div class='spip_document_5275 spip_document spip_documents spip_document_image spip_documents_center spip_document_center'&gt;
&lt;figure class=&#034;spip_doc_inner&#034;&gt;
&lt;a href=&#034;http://daffyduke.lautre.net/spip/IMG/png/Zenoss.png&#034; class=&#034;spip_out spip_doc_lien&#034;&gt; &lt;img src='http://www.coincoin.fr.eu.org/local/cache-vignettes/L200xH122/Zenoss-small-dd6eb.png?1719647902' width='200' height='122' alt='' /&gt;&lt;/a&gt;
&lt;/figure&gt;
&lt;/div&gt;&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; GUI pour la gestion, le reporting&lt;/li&gt;&lt;li&gt; Compos&#233; de modules : Zenmodel (conf), Zenrrd (collecte), Zenevents (monitoring)&lt;/li&gt;&lt;/ul&gt;&lt;h2 class=&#034;spip&#034;&gt;Messagerie et Anti-Spam&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;G&#233;n&#233;ralit&#233; et pr&#233;cisions sur le spam sous forme d'image, par&lt;/strong&gt; &lt;i&gt;Louis Nyffenegger / HSC&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; D'apr&#232;s secuser 2006 : 95 % des mails sont des spams dont 30 % envoy&#233;s depuis des machines zombie.
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; La plupart des m&#233;thodes antispam se basent sur des filtres baysiens. Ceux-ci se montrent particuli&#232;rement inefficace pour des images. Et que dire des spams via GPRS et voix sur IP. A l'heure actuelle, il s'agit essentiellement de texte sur fond color&#233;. Mais la difficult&#233; &#224; venir, c'est le texte sur fond de paysage, les gifs anim&#233;s, les sons etc ...
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Un peu de m&#233;triques : sur 5000 spams ayant un score de 8 &#224; 14, 2200 contenaient une image dont 70 images une seule fois, 1 image 10 fois, 1 image 1000 fois.
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Mis &#224; part les filtres baysiens, on peut se baser sur des hash/md5 et faire apprendre manuellement les spams et les hams. Probl&#232;me cette m&#233;thode est longue, et un md5 change si un pixel change. Le probl&#232;me est similaire sur des comparaisons de signature.
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; La parade efficace &#224; ce jour est &lt;a href=&#034;http://fuzzyocr.own-hero.net/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;FuzzyOCR&lt;/a&gt; (plugin spamassassin)&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; il se base sur un datamining d'image (calcul moyen par couleur, g&#233;olocalisation de point, d&#233;coupe et calcul)&lt;/li&gt;&lt;li&gt; Etude humaine avec kppv (recherche d'images proche)&lt;/li&gt;&lt;li&gt; Etude des kmeans : classification automatique en groupes de spams/hams, apprentissage par proximit&#233; : la qualit&#233; s'am&#233;liorant avec le nombre de groupes&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;a href=&#034;http://www.hsc.fr/ressources/presentations/sl2007-spam-image/index.html.fr&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Les slides de la pr&#233;sentation&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;M&#233;thode de filtrage par listes grises : milter-greylist&lt;/strong&gt;, par &lt;i&gt;Emmanuel Dreyfus / ESPCI, contributeur ipsec-tools&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Li&#233; &#224; une analyse comportementale d'un humain lors d'un envoi de mail avec mise en cache du triplet ip/adresse exp&#233;diteur/adresse destinataire et utilisation d'un d&#233;lai maximal de r&#233;exp&#233;dition. Le courrier arrive donc en retard sauf s'il est d&#233;pos&#233; en liste blanche.
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;a href=&#034;http://hcpnet.free.fr/milter-greylist/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;milter-greylist&lt;/a&gt; est int&#233;grable &#224; postfix bien qu'initialement pr&#233;vu pour sendmail.
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; cons&#233;quence : croissance non n&#233;gligeable de la file d'attente, des ressources qui ne sont bien entendu pas infinies.
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; sont venues se greffer des r&#232;gles de DNSRBL, de blacklistage/whithelistage, filtrage suivant le contenu
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; on peut &#224; terme imaginer le m&#234;me genre de r&#233;glage mais par utilisateur dans une interface web par exemple, int&#233;grer un syst&#232;me de statistiques, etc ...&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;QPMSTPD par&lt;/strong&gt; &lt;i&gt;Arnaud Assad / Cap Gemini&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; qmail est un MTA pas compl&#232;tement libre qui n&#233;cessite &#233;norm&#233;ment de d&#233;pendances puisque son auteur a tout r&#233;&#233;crit : syslog, mailq, bind etc ...
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;a href=&#034;http://smtpd.develooper.com/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;qpsmtpd&lt;/a&gt; est un frontend perl qui permet de g&#233;rer en amont les spams, virus, hoax, chain mails et scams&lt;/p&gt;
&lt;div class='spip_document_5259 spip_document spip_documents spip_document_image spip_documents_left spip_document_left'&gt;
&lt;figure class=&#034;spip_doc_inner&#034;&gt; &lt;img src='http://www.coincoin.fr.eu.org/local/cache-vignettes/L300xH300/spamstats-5d255.png?1719647902' width='300' height='300' alt='' /&gt;
&lt;/figure&gt;
&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Exemple de plugins :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; spam_ehlo : si ehlo yahoo mise en quarantaine, Yahoo ne s'identifiant jamais en tant que Yahoo.&lt;/li&gt;&lt;li&gt; ident_pof : identification de l'OS&lt;/li&gt;&lt;li&gt; geo_ip : &lt;a href=&#034;http://www.almqvist.net/johan/blog/2006/06/more-spam-stopping-statistics/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Exemple de statistique&lt;/a&gt;&lt;/li&gt;&lt;li&gt; apache:qpsmtpd : permet d'utiliser apache en proxy smtp (fork un LISTEN en :25), il faut cependant cr&#233;er un pseurdo qmaildir avant&lt;/li&gt;&lt;li&gt; check_earlytalker : v&#233;rifie les retour de code 2XX pour logguer/rejeter/etc ...&lt;/li&gt;&lt;li&gt; tarpits : garde une socket active si le MTA enrant est consid&#233;r&#233; comme spam&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;a href=&#034;http://www.almqvist.net/johan/blog/2006/06/more-spam-stopping-statistics/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Nettographie&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Le projet &lt;a href=&#034;http://www.signal-spam.fr/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;SIGNAL-SPAM&lt;/a&gt;&lt;/strong&gt; : &lt;i&gt;&lt;a href=&#034;#francis.bouvier#mc#signal-spam.fr#&#034; title=&#034;francis.bouvier..&#229;t..signal-spam.fr&#034; onclick=&#034;location.href=mc_lancerlien('francis.bouvier','signal-spam.fr'); return false;&#034; class=&#034;spip_mail&#034;&gt;Francis Bouvier&lt;/a&gt; / Direction du D&#233;veloppement des M&#233;dias&lt;/i&gt;&lt;/p&gt;
&lt;div class='spip_document_5260 spip_document spip_documents spip_document_image spip_documents_left spip_document_left'&gt;
&lt;figure class=&#034;spip_doc_inner&#034;&gt; &lt;img src='http://www.coincoin.fr.eu.org/local/cache-vignettes/L200xH182/signalspam-short-e3086.png?1719647902' width='200' height='182' alt='' /&gt;
&lt;/figure&gt;
&lt;/div&gt;
&lt;p&gt;C'est une association cr&#233;e en 2005 apr&#232;s une r&#233;flexion d&#232;s 2003 qui regroupe 7 autorit&#233;s :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; les institutions : la direction du d&#233;veloppement des m&#233;dias, la CNIL, le mninist&#232;re de la justice, l'office de lutte contre la cybercriminalit&#233;&lt;/li&gt;&lt;li&gt; des associations : l'AFA, l'AFOM (op&#233;rateurs mobiles), la BSA, la FEVAD (Vente &#224; Distance)&lt;/li&gt;&lt;li&gt; des entreprises : SNCF, La Poste, Microsoft&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Il s'agit d'un outil de reporting de pishing, vol d'identit&#233;, arnaques sociales, r&#233;seaux criminels organis&#233;s.
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Contrairement &#224; la boiteaspam&lt;span class='mcrypt'&gt; chez &lt;/span&gt;cnil.fr qui n'&#233;tait qu'un document Excell, il s'agira ici d'une architecture web combl&#232;te avec un formulaire en ligne de d&#233;nonciation.
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Il permettra les recoupements avec d'autres services comme SpotSpam (Europe), CNSA, LAP.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Bases de Donn&#233;es&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Exemple de migration Oracle vers PostgreSQL,&lt;/strong&gt; &lt;i&gt;par &lt;a href=&#034;#ugo.brunel#mc#bull.net#&#034; title=&#034;ugo.brunel..&#229;t..bull.net&#034; onclick=&#034;location.href=mc_lancerlien('ugo.brunel','bull.net'); return false;&#034; class=&#034;spip_mail&#034;&gt;Ugo Brunel&lt;/a&gt; / BULL&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Utilisation d'un outil &lt;a href=&#034;http://freshmeat.net/projects/ora2pg/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;ora2pg&lt;/a&gt;
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Dur&#233;e d'intervention : transfert d'environ 11 Go en une journ&#233;e (prise en compte de tous les &#233;l&#233;ments m&#234;me les archivelogs) , 19 j pour la r&#233;&#233;criture du code (shell/php)
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; retour d'exp&#233;rience :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; doublons de vues dans les sch&#233;mas tol&#233;r&#233;s en oracle&lt;/li&gt;&lt;li&gt; s&#233;paration obligatoire des donn&#233;es des contraintes, index, et cl&#233;s &#233;trang&#232;res. Ces derni&#232;res sont &#224; recr&#233;er &#224; la main.&lt;/li&gt;&lt;li&gt; attention la configuration par d&#233;faut de PostgreSQL est pr&#233;vue pour une machine &#224; 64 Mo de RAM&lt;/li&gt;&lt;li&gt; en php5 est arriv&#233; &lt;a href=&#034;http://fr2.php.net/manual/fr/ref.pdo.php&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;pdo&lt;/a&gt;, un connecteur base de donn&#233;es qui permet de faire abstraction de la couche de base de donn&#233;e fa&#231;on jdbc.&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;a href=&#034;http://www.solutionslinux.fr/document_conferencier/45cb0fa1beb7e.pdf&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Les slides de la conf&#233;rence&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Retour d'exp&#233;rience d'une migration Oracle vers PostgreSQL&lt;/strong&gt; &lt;i&gt;par Fran&#231;ois Debray / Socopa&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;a href=&#034;http://www.socopa.fr/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Socopa&lt;/a&gt; c'est quoi :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; une entreprise agroalimentaire qui fourni les cantines, boucheries, grandes surfaces et fabricants de produits d&#233;riv&#233;s.&lt;/li&gt;&lt;li&gt; 23 sites, 8500 postes clients et 250 serveurs (AIX/Linux/Windows), administr&#233;s par 70 personnes&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Pourquoi ?&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; co&#251;t des licences&lt;/li&gt;&lt;li&gt; homog&#233;n&#233;isation du parc&lt;/li&gt;&lt;li&gt; soucis de centralisation, portabilit&#233; et tra&#231;abilit&#233;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Comment ?&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; d&#233;ploiement de SAP sous Linux avec un connecteur EAI/Websphere&lt;/li&gt;&lt;li&gt; le sgbd devient alor PostgreSQL dans un&lt;/li&gt;&lt;li&gt; cluster heartbeat2 actif/passif avec synchro en drdb&lt;/li&gt;&lt;li&gt; passage de RedHat/Pg7.4 lors de l'&#233;tude &#224; debian/Pg8 en production.&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; La base de donn&#233;es&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; petite base (2,5 Go) mais qui n&#233;cessite une tr&#232;s haute disponibilit&#233; (gestion des automates en temps r&#233;el)&lt;/li&gt;&lt;li&gt; 3 millions de transaction / jour , un temps de r&#233;ponse de 11 ms&lt;/li&gt;&lt;li&gt; 180 tables&lt;/li&gt;&lt;li&gt; co&#251;t de maintenance de 20 minutes/jour&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;a href=&#034;http://www.solutionslinux.fr/document_conferencier/45cb0fa1caf8a.pdf&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Les slides de la conf&#233;rence&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Exemple de migration Microsoft SQL vers Firefird&lt;/strong&gt; &lt;i&gt;par Philippe Makowski / A6-CMO&lt;/i&gt;&lt;/p&gt;
&lt;div class='spip_document_5271 spip_document spip_documents spip_document_image spip_documents_right spip_document_right'&gt;
&lt;figure class=&#034;spip_doc_inner&#034;&gt;
&lt;a href=&#034;http://daffyduke.lautre.net/spip/IMG/png/workbench.png&#034; class=&#034;spip_out spip_doc_lien&#034;&gt; &lt;img src='http://www.coincoin.fr.eu.org/local/cache-vignettes/L150xH138/workbench-short-d1334.gif?1719647902' width='150' height='138' alt='' /&gt;&lt;/a&gt;
&lt;/figure&gt;
&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Mode op&#233;ratoire :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; r&#233;&#233;criture du code avec &lt;a href=&#034;http://www.upscene.com/index.htm?./products/dbw/index.htm&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Database Workbench&lt;/a&gt;&lt;/li&gt;&lt;li&gt; cr&#233;ation de la structure de base de fa&#231;on manuelle dans un premier temps avec protection des triggers&lt;/li&gt;&lt;li&gt; utilisation de &lt;a href=&#034;http://fbexport.sourceforge.net/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;fbexport&lt;/a&gt; pour le dump&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Probl&#232;mes rencontr&#233;s&lt;/p&gt;
&lt;table class=&#034;table spip&#034; aria-describedby=&#034;dby2026&#034;&gt;
&lt;caption&gt;mssql&lt;br /&gt; &lt;small id=&#034;dby2026&#034; class=&#034;summary offscreen&#034;&gt;firebird&lt;/small&gt;&lt;/caption&gt;
&lt;tbody&gt;
&lt;tr class='row_odd odd'&gt;
&lt;td&gt;indicateurs&lt;/td&gt;
&lt;td&gt;128 caract&#232;res&lt;br&gt;espace compris !&lt;/td&gt;
&lt;td&gt;31&lt;/td&gt;&lt;/tr&gt;
&lt;tr class='row_even even'&gt;
&lt;td&gt;bool&#233;ens&lt;/td&gt;
&lt;td&gt;1 ou 0&lt;/td&gt;
&lt;td&gt;1 ou 0 ou&lt;br&gt;char(1) (T/F)&lt;/td&gt;
&lt;td class='numeric '&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class='row_odd odd'&gt;
&lt;td&gt;autoincr&#233;ments&lt;/td&gt;
&lt;td&gt;indent&#233;&lt;/td&gt;
&lt;td&gt;g&#233;n&#233;r&#233; avec d&#233;clencheur&lt;/td&gt;&lt;/tr&gt;
&lt;tr class='row_even even'&gt;
&lt;td&gt;GUID (Global Unique Ident)&lt;/td&gt;
&lt;td&gt;uniq&lt;/td&gt;
&lt;td&gt;char(36), g&#233;r&#233; par la librairie UDF&lt;/td&gt;&lt;/tr&gt;
&lt;tr class='row_odd odd'&gt;
&lt;td&gt;performances&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;lenteurs sur les vues, corrig&#233;es en firebird2&lt;/td&gt;&lt;/tr&gt;
&lt;tr class='row_even even'&gt;
&lt;td&gt;date&lt;/td&gt;
&lt;td&gt;du 1/1/1753 &#224; 31/12/9999&lt;/td&gt;
&lt;td&gt;du 1/1/100 au 29/02/32768&lt;/td&gt;&lt;/tr&gt;
&lt;tr class='row_odd odd'&gt;
&lt;td&gt;longueur de varchar()&lt;/td&gt;
&lt;td&gt;8000&lt;/td&gt;
&lt;td&gt;32767&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Int&#233;r&#234;t ressenti de la communaut&#233; de communes (Bordeaux)&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; fiabilit&#233;&lt;/li&gt;&lt;li&gt; pas de maintenance&lt;/li&gt;&lt;li&gt; pas de tuning (le moteur firebird est pr&#233;vu pour s'adapter &#224; la configuration mat&#233;rielle), les deux seuls paam&#232;tres modifiables sont la taille de page et la m&#233;moire cache&lt;/li&gt;&lt;li&gt; le client windows se r&#233;sume &#224; une seimple dll&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Utilisateurs de Firebird&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; XpertMart / MindWrap / Tabulex / DRB Systems&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Netographie&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; &lt;a href=&#034;http://www.firebird-fr.eu.org&#034; class=&#034;spip_url spip_out&#034; rel=&#034;external&#034;&gt;http://www.firebird-fr.eu.org&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;http://www.firebirdsql.org&#034; class=&#034;spip_url spip_out&#034; rel=&#034;external&#034;&gt;http://www.firebirdsql.org&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;http://ibphoenix.com&#034; class=&#034;spip_url spip_out&#034; rel=&#034;external&#034;&gt;http://ibphoenix.com&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;http://www.solutionslinux.fr/document_conferencier/45cb0fa1c60b2.pdf&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Les slides de la conf&#233;rence&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Migration DB2 vers MySQL au Cr&#233;dit Mutuel&lt;/strong&gt; &lt;i&gt;par Serge Frezefond / dir. tech. Mysql AB&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Outils&lt;/p&gt;
&lt;div class='spip_document_5273 spip_document spip_documents spip_document_image spip_documents_right spip_document_right'&gt;
&lt;figure class=&#034;spip_doc_inner&#034;&gt;
&lt;a href=&#034;http://daffyduke.lautre.net/spip/IMG/png/mysql.png&#034; class=&#034;spip_out spip_doc_lien&#034;&gt; &lt;img src='http://www.coincoin.fr.eu.org/local/cache-vignettes/L180xH122/mysql-small-0c1a9.png?1719647902' width='180' height='122' alt='' /&gt;&lt;/a&gt;
&lt;/figure&gt;
&lt;/div&gt;&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; &lt;a href=&#034;http://www.ispirer.com/products/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;SQLWays&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;http://www.mysql.com/products/tools/migration-toolkit/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;MySQL Migration Toolkit&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;http://www.talend.com/products/talend-open-studio.htm&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;ETL&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;http://www.pentaho.com/products/data_integration/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Pentaho&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&#034;http://www.goldengate.com/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;GoldenGate&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Le cas du Cr&#233;dit Mutuel&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; migration vers mysql de toutes les applications web (site institutionnel, courtage, voyages)&lt;/li&gt;&lt;li&gt; site de la banque en ligne (1,5 milliards d'enregistrements)&lt;/li&gt;&lt;li&gt; aggr&#233;gat de calcul&lt;/li&gt;&lt;li&gt; g&#233;n&#233;ration d'&#233;tat comptable&lt;/li&gt;&lt;li&gt; utlisation des snapshot NetApp pour le clonage.&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; A venir dans MySQL / Roadmap (extraits)&lt;/p&gt;
&lt;table class=&#034;table spip&#034;&gt;
&lt;tbody&gt;
&lt;tr class='row_odd odd'&gt;
&lt;td&gt;vues mat&#233;rialis&#233;es&lt;/td&gt;
&lt;td class='numeric point'&gt;2007&lt;/td&gt;&lt;/tr&gt;
&lt;tr class='row_even even'&gt;
&lt;td&gt;roles&lt;/td&gt;
&lt;td class='numeric point'&gt;5.2&lt;/td&gt;&lt;/tr&gt;
&lt;tr class='row_odd odd'&gt;
&lt;td&gt;partitionnement&lt;/td&gt;
&lt;td class='numeric point'&gt;5.1&lt;/td&gt;&lt;/tr&gt;
&lt;tr class='row_even even'&gt;
&lt;td&gt;support XML&lt;/td&gt;
&lt;td class='numeric point'&gt;5.1&lt;/td&gt;&lt;/tr&gt;
&lt;tr class='row_odd odd'&gt;
&lt;td&gt;scheduler&lt;/td&gt;
&lt;td class='numeric point'&gt;5.1&lt;/td&gt;&lt;/tr&gt;
&lt;tr class='row_even even'&gt;
&lt;td&gt;moteur falcon&lt;/td&gt;
&lt;td class='numeric point'&gt;5.2&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; A noter, MySQL Cluster permet de r&#233;partir une instance RAM sur la RAM totale d'un cluster, pas dans un serveur unique.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Virtualisation : Xen de A &#224; Xen&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Diff&#233;rentes solutions pour Linux&lt;/strong&gt; &lt;i&gt;par Nicolas Parpandet / 1G6&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Int&#233;r&#234;ts de la virtualisation&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; faire cohabiter plusieurs OS ou applications&lt;/li&gt;&lt;li&gt; facilit&#233; de d&#233;ploiement : d&#233;finition de mod&#232;le, copie ais&#233;e, ind&#233;pendance mat&#233;rielle / distribution de produits&lt;/li&gt;&lt;li&gt; &#233;conomie du nombre de machines, r&#233;duction des co&#251;ts d'infrastructure&lt;/li&gt;&lt;li&gt; tests de portabilit&#233; dans les d&#233;veloppements&lt;/li&gt;&lt;li&gt; s&#233;curit&#233; : syst&#232;mes ind&#233;pendants, montage de honeypots&lt;/li&gt;&lt;li&gt; assurer une continuit&#233; de service sur des logiciels abandonn&#233;s (ex : Windows NT4)&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Virtualisation de Syst&#232;me d'Exploitation&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; 1 seul noyau, 1 libc, 1 s&#233;parateur de process&lt;/li&gt;&lt;li&gt; probl&#232;mes de partage de ressources, isolation faible&lt;/li&gt;&lt;li&gt; solutions : &lt;a href=&#034;http://openvz.org/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;OpenVZ&lt;/a&gt;, &lt;a href=&#034;http://linux-vserver.org/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;VServers&lt;/a&gt;, &lt;a href=&#034;http://clx.anet.fr/spip/article.php3?id_article=143&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Chroot&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Virtualisation Syst&#232;me&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; BIOS / &#233;mulation mat&#233;rielle / r&#233;&#233;criture de code processeur &#224; la vol&#233;e&lt;/li&gt;&lt;li&gt; utilisation essentiellement personnelle pour des test d'OS/groupware/etc ...&lt;/li&gt;&lt;li&gt; g&#233;n&#233;ralement une seule image &#233;mul&#233;e par poste car tr&#232;s consommateur de ressources
&lt;div class='spip_document_5276 spip_document spip_documents spip_document_image spip_documents_right spip_document_right'&gt;
&lt;figure class=&#034;spip_doc_inner&#034;&gt;
&lt;a href=&#034;http://daffyduke.lautre.net/spip/IMG/jpg/pearpc_xp.jpg&#034; class=&#034;spip_out spip_doc_lien&#034;&gt; &lt;img src='http://www.coincoin.fr.eu.org/local/cache-vignettes/L300xH240/pearpc_xp_small-2d518.png?1719647902' width='300' height='240' alt='' /&gt;&lt;/a&gt;
&lt;/figure&gt;
&lt;/div&gt;&lt;/li&gt;&lt;li&gt; solutions : &lt;a href=&#034;http://www.vmware.com/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;VMWare&lt;/a&gt; (propri&#233;taire), &lt;a href=&#034;http://pearpc.sourceforge.net/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;PearPC&lt;/a&gt; (Apple), &lt;a href=&#034;http://fabrice.bellard.free.fr/qemu/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;QEmu&lt;/a&gt; (GPL, multiOS : simule x86/MIPS/SPARC/ARM/...)&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Virtualisation Machine&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; UML / User Mode Linux&lt;/li&gt;&lt;li&gt; 1 noyau ex&#233;cutable, vu en tant que processus&lt;/li&gt;&lt;li&gt; utilis&#233; par des h&#233;bergeurs ou des debuggers du kernel&lt;/li&gt;&lt;li&gt; int&#233;gr&#233; au kernel natif&lt;/li&gt;&lt;li&gt; faibles performances&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Paravirtualisation&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; mise en place de fermes de serveurs dans des mini OS&lt;/li&gt;&lt;li&gt; dissociation mat&#233;rielle&lt;/li&gt;&lt;li&gt; cr&#233;ation rapide d'images&lt;/li&gt;&lt;li&gt; utilis&#233; pour de la mise en recette, qualification, pr&#233;-production&lt;/li&gt;&lt;li&gt; m&#233;thode s&#233;curis&#233;e&lt;/li&gt;&lt;li&gt; performances id&#233;ales, limitation CPU/RAM&lt;/li&gt;&lt;li&gt; utilisation de snapshot&lt;/li&gt;&lt;li&gt; solutions, &lt;a href=&#034;http://xenfr.org/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Xen&lt;/a&gt; : utilisation d'un hyperviseur, mini-noyau Linux, bon isolement, bonnes perf, utilisation des instructions Intel VT et AMD P6. Fedora a d&#233;velopp&#233; un &lt;a href=&#034;http://virt-manager.et.redhat.com/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Virt-Manager&lt;/a&gt; (GUI graphique)&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Virtualisation mat&#233;rielle&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; Assez neuf&lt;/li&gt;&lt;li&gt; Virtualisation de CPU
&lt;div class='spip_document_5278 spip_document spip_documents spip_document_image spip_documents_right spip_document_right'&gt;
&lt;figure class=&#034;spip_doc_inner&#034;&gt; &lt;img src='http://www.coincoin.fr.eu.org/local/cache-vignettes/L212xH200/products_esx_diagram-bd011.gif?1719647902' width='212' height='200' alt='' /&gt;
&lt;/figure&gt;
&lt;/div&gt;&lt;/li&gt;&lt;li&gt; solutions : VMWare-ESX (distribution linux avec vmkernel, avec une console d'admin graphique distante) , KVM (kernel 2.6.20)&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;XEN , comment &#231;&#224; marche ?&lt;/strong&gt; &lt;i&gt;par Daniel Veillard / Red Hat&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; bref historique&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; d&#233;velopp&#233; initialement par l'&lt;a href=&#034;http://www.cl.cam.ac.uk/research/srg/netos/xen/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;universit&#233; de Cambridge&lt;/a&gt; avec un dom0 sous Windows (fonds de la part de Microsoft)&lt;/li&gt;&lt;li&gt; pr&#233;sentation &#224; l'Ottawa Linux Symposium 2004&lt;/li&gt;&lt;li&gt; r&#233;volution multiOS comparable &#224; la r&#233;volution du multit&#226;che.&lt;/li&gt;&lt;li&gt; caract&#232;re antinomique de la r&#233;duction des co&#251;ts ET des risques&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Architecture&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; un hyperviseur, un dom0 (tourne dans le ring 1 et 3 en archi x86 ou 3 uniquement en x64) et des domU (ring 3)&lt;/li&gt;&lt;li&gt; un bus entre les domU qui r&#233;parti les appels hyperviseurs&lt;/li&gt;&lt;li&gt; les drivers mat&#233;riels sont en mode user, mais chaque appel syst&#232;me est trapp&#233; par un patch kernel lourd et intrusif depuis le 2.6.18, grace &#224; une glibcx et une encapsulation en python.&lt;/li&gt;&lt;li&gt; le XenStore (base de donn&#233;es) : elle g&#232;re les acc&#232;s concurrents entre dom0, domU et hyperviseur. Syst&#232;me de snooping qui s'apparente aux trigger des bdd classiques&lt;/li&gt;&lt;li&gt; le Xend Daemon : d&#233;mon en C dans le dom0 d'o&#249; probl&#232;mes de perf.&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Ce qui marche&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; bonne isolation des machines virtuelles&lt;/li&gt;&lt;li&gt; bonne gestion des CPUs&lt;/li&gt;&lt;li&gt; migration &#224; chaud : sur une appli web, le d&#233;bit moyen est de 860 Mb/s , descend un peu pendant la copie &#224; cause de l'utilisation CPU, redescend encore un peu pendant le test final de check d'int&#233;grit&#233; final et propagation ARP, puis revient &#224; son niveau initial.&lt;/li&gt;&lt;li&gt; de 0 &#224; 10% de d&#233;gradation des perfs par rapport &#224; une machine physique.&lt;/li&gt;&lt;li&gt; Utilisation de virtual device (iSCSI, LVM, NBD, &#233;ventuellement QNBD ?) : mais attention aux probl&#232;mes de cache disque durant les phases de migration.
&lt;div class='spip_document_5279 spip_document spip_documents spip_document_image spip_documents_right spip_document_right'&gt;
&lt;figure class=&#034;spip_doc_inner&#034;&gt;
&lt;a href=&#034;http://daffyduke.lautre.net/spip/IMG/png/virt-guest-config.png&#034; class=&#034;spip_out spip_doc_lien&#034;&gt; &lt;img src='http://www.coincoin.fr.eu.org/local/cache-vignettes/L355xH285/virt-guest-config-small-23013.png?1719647902' width='355' height='285' alt='' /&gt;&lt;/a&gt;
&lt;/figure&gt;
&lt;/div&gt;&lt;/li&gt;&lt;li&gt; Il existe un plugin &lt;a href=&#034;http://rodolphe.quiedeville.org/hack/munin/xen/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;munin&lt;/a&gt; pour le reporting&lt;/li&gt;&lt;li&gt; Il existe diff&#233;rentes interfaces de gestion de cluster : &lt;a href=&#034;http://www.enomalism.com/&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Enomalism&lt;/a&gt;, Virt-Manager, &lt;a href=&#034;http://www.gplhost.com/software-dtc-xen.html&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;DTC-Xen&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Ce qui pose probl&#232;me&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; L'hyperviseur est relativement instable car souvent r&#233;&#233;cri d'une version &#224; une autre.&lt;/li&gt;&lt;li&gt; pas de copie par snapshot car la machine tourne en RAM, pas de stockage sur le filesystem (sauf &#233;ventuellement dans le cas d'utilisation de fs le permettant tels LVM ou GFS, &#224; tester)&lt;/li&gt;&lt;li&gt; A noter toute machine &#233;mul&#233;e r&#233;agi diff&#233;remment suivant qu'elle ait un kernel modifi&#233; ou un kernel natif puisque les appels syst&#232;mes ne sont pas trapp&#233;s de la m&#234;me fa&#231;on par l'hyperviseur.&lt;/li&gt;&lt;li&gt; Le code est relativement neuf, le code pour la gestion mat&#233;riel est incomplet&lt;/li&gt;&lt;li&gt; le patch kernel est tr&#232;s intrusif&lt;/li&gt;&lt;li&gt; on ne peut pas faire tourner Xen sur des plateformes de plus de 64 Go de RAM&lt;/li&gt;&lt;li&gt; Ne fonctionne d&#233;cid&#233;ment plus sur archi PPC64&lt;/li&gt;&lt;li&gt; depuis Xen3, max &#224; 3 cartes r&#233;seaux. Celles ci supportent le bonding mais pas le vlan 801q . Pire que tout, la num&#233;rotation change parfois au reboot !&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; A venir&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; virtualisation compl&#232;te grace &#224; l'impl&#233;mentation de code QEmu au niveau CPU (Intel et AMD). Les d&#233;veloppements sont longs car l'architecture x86 n'est pas r&#233;vue pour.&lt;/li&gt;&lt;li&gt; virtualisation compl&#232;te grace &#224; KVM (natif en 2.6.20)&lt;/li&gt;&lt;li&gt; virtualisation coml&#232;te grace &#224; lquest (en gros un QEmu dans le dom0)&lt;/li&gt;&lt;li&gt; une s&#233;paration du dom0 (type hurd)&lt;/li&gt;&lt;li&gt; Le r&#234;ve des d&#233;veloppeurs : impl&#233;mentation native d'une API commune libvirt qui serai commune &#224; Xen, QEmu, et KVM ....&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;a href=&#034;http://www.veillard.com/Talks/XEN_SL_2007.pdf&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;La pr&#233;sentation compl&#232;te &#224; Solutions Linux 2007&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Xen, mise en oeuvre industrielle, retour d'exp&#233;rience&lt;/strong&gt;, &lt;i&gt;par St&#233;phane Grand / architecte technique au centre Open Source d'Atos Origin&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; probl&#233;matique initiale&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; empilement de serveurs&lt;/li&gt;&lt;li&gt; charge applicative de temps en temps, consommation souvent faible de ressources.&lt;/li&gt;&lt;li&gt; &#233;tablir une normalisation de d&#233;ploiement, m&#233;thodolgie, habilitation, gestion des privil&#232;ges, etc ...&lt;/li&gt;&lt;li&gt; calcul de co&#251;t : 9000 &#8364; pour 4 Go de RAM / 14 lames par blade / 7 blades&lt;/li&gt;&lt;li&gt; calcul &#233;nerg&#233;tique : 1 serveur : 800 W / 1 blade 300 W + 14 lames : 4200 W&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Utilisation de Xen&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; pour des serveurs de d&#233;ploiements : un socle Xen est install&#233; via PXE, qui installe des images applicatives, elles m&#234;me bootable via PXE pour installer une JVM en local ou sur une baie SAN, avec 1 vlan par ferme.&lt;/li&gt;&lt;li&gt; validation technique de la plateforme : 3 jours&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Notes&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; Les virtual machines doivent &#234;tre r&#233;parties selon la criticit&#233;, de fa&#231;on &#224; rendre le service le plus redondant possible vis &#224; vis des autres blades&lt;/li&gt;&lt;li&gt; chaque lame est dot&#233; de 8 Go de RAM : 512 Mo r&#233;serv&#233; pour le dom0 , 2 Go par JVM (serveurs JoNAS)&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; &lt;a href=&#034;http://www.solutionslinux.fr/document_conferencier/45cb0df7311dc.pdf&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Les slides de la conf&#233;rence&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Retour d'exp&#233;rience pour le d&#233;veloppement&lt;/strong&gt; &lt;i&gt;par Romain Couderc / Cap Gemini&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Utilisation&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; sert de montage de plateforme pour des &#233;tudes de faisabilit&#233; (Proof Of Concept)&lt;/li&gt;&lt;li&gt; Maquettage et avant-vente&lt;/li&gt;&lt;li&gt; Reprise d'activit&#233;&lt;/li&gt;&lt;li&gt; assurer une d&#233;marche qualit&#233;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; R&#233;alisations concr&#232;tes :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; Dans le cadre de l'OSS Partner, une plateforme sert &#224; la hotline sur 2000 serveurs physiques qui ont &#233;t&#233; virtualis&#233;s : reproduction d'anomalies&lt;/li&gt;&lt;li&gt; Provisionnement : d&#233;ploiement d'images LAMP pour des stations de travail sur diff&#233;rents profils (d&#233;veloppeurs/administrateurs/...), et pouvoir faire de la veille technologique&lt;/li&gt;&lt;li&gt; Etude : bench i/o par exemple, choix techno de filesystem : GFS ou OCFS , montage d'IDS&lt;/li&gt;&lt;/ul&gt;&lt;h2 class=&#034;spip&#034;&gt;Annexes&lt;/h2&gt;
&lt;p&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; Mes liens sur &lt;a href=&#034;http://del.icio.us/daffyduke/solutionslinux2007&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Del.Icio.Us&lt;/a&gt;
&lt;br /&gt;&lt;span class=&#034;spip-puce ltr&#034;&gt;&lt;b&gt;&#8211;&lt;/b&gt;&lt;/span&gt; La suite, &lt;a href=&#034;http://daffyduke.lautre.net/spip/article.php3?id_article=143&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Solutions Linux, vu de l'int&#233;rieur&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;
		&lt;hr /&gt;
		&lt;div &lt;div class='rss_ps'&gt;&lt;p&gt;Updated on 2018/03/19 : Jeff Grant pointed me a broken link on mon and send us a blog post with some usefull stuff : &lt;a href=&#034;http://compari.tech/system-monitoring&#034; class=&#034;spip_url spip_out&#034; rel=&#034;external&#034;&gt;http://compari.tech/system-monitoring&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You will find some other tools on the really good nixracft blog : &lt;a href=&#034;https://www.cyberciti.biz/faq/page/1/?s=monitoring&#034; class=&#034;spip_url spip_out&#034; rel=&#034;external&#034;&gt;https://www.cyberciti.biz/faq/page/...&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;
		&lt;hr /&gt;
		&lt;div class='rss_notes'&gt;&lt;div id=&#034;nb1&#034;&gt;
&lt;p&gt;&lt;span class=&#034;spip_note_ref&#034;&gt;[&lt;a href=&#034;#nh1&#034; class=&#034;spip_note&#034; title=&#034;Notes 1&#034; rev=&#034;appendix&#034;&gt;1&lt;/a&gt;] &lt;/span&gt;&lt;/p&gt;
&lt;div class='spip_document_5264 spip_document spip_documents spip_document_image spip_documents_center spip_document_center'&gt;
&lt;figure class=&#034;spip_doc_inner&#034;&gt; &lt;img src='http://www.coincoin.fr.eu.org/IMG/png/mrtg.png' width=&#034;500&#034; height=&#034;135&#034; alt='' /&gt;
&lt;/figure&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
		</content:encoded>


		

	</item>
<item xml:lang="fr">
		<title>Voir les ressources disponibles sous Oracle</title>
		<link>http://www.coincoin.fr.eu.org/?Voir-les-ressources-disponibles</link>
		<guid isPermaLink="true">http://www.coincoin.fr.eu.org/?Voir-les-ressources-disponibles</guid>
		<dc:date>2006-01-17T12:50:30Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Olivier Duquesne aka DaffyDuke</dc:creator>


		<dc:subject>oracle</dc:subject>

		<description>
&lt;p&gt;hosts : SID=ORA_SID&gt; sqlplus user/password SQL&gt; set line 132 SQL&gt; select * from v$resource_limit ; SQL&gt; show sga SQL&gt; select * from v$sag&lt;/p&gt;


-
&lt;a href="http://www.coincoin.fr.eu.org/?-Au-boulot-" rel="directory"&gt;Au boulot&lt;/a&gt;

/ 
&lt;a href="http://www.coincoin.fr.eu.org/?+-oracle-+" rel="tag"&gt;oracle&lt;/a&gt;

		</description>


 <content:encoded>&lt;div class='rss_texte'&gt;&lt;div class=&#034;precode&#034;&gt;&lt;pre class='spip_code spip_code_block' dir='ltr' style='text-align:left;'&gt;&lt;code&gt;hosts: SID=ORA_SID&gt; sqlplus user/password SQL&gt; set line 132 SQL&gt; select * from v$resource_limit; SQL&gt; show sga SQL&gt; select * from v$sag&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
		
		</content:encoded>


		

	</item>
<item xml:lang="fr">
		<title>Exporter facilement une table Oracle vers un tableur OpenOffice/Excell</title>
		<link>http://www.coincoin.fr.eu.org/?Exporter-facilement-une-table</link>
		<guid isPermaLink="true">http://www.coincoin.fr.eu.org/?Exporter-facilement-une-table</guid>
		<dc:date>2006-01-17T12:48:59Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Olivier Duquesne aka DaffyDuke</dc:creator>


		<dc:subject>oracle</dc:subject>

		<description>
&lt;p&gt;set show off ttitle off set heading off set pagesize 999 set linesize 250 set pause off time on verify off feedback off trims on spool /tmp/tmfile.cvs select UTI_ID||' ;'||PRO_ID||' ;'||LNG_ID||' ;'||UTI_CIVILITE||' ;'||UTI_NOM_MEDIA||' ;'||UTI_FONCTION||' ;'||UTI_NOM||' ;'||UTI_PRENOM||' ;'||UTI_EMAIL||' ;'||UTI_CARTE_PRESSE_NUM||' ;'||UTI_NUMRUE||' ;'||UTI_ADRESSE1||' ;'||UTI_ADRESSE2||' ;'||UTI_CODEPOSTAL||' ;'||UTI_VILLE||' ;'||UTI_TELEPHONE||' ;'||UTI_LOGIN||' ;'||UTI_PAYS||' ;'||UTI_IPN||' ;'||UTI_NEWSLETTER&lt;/p&gt;


-
&lt;a href="http://www.coincoin.fr.eu.org/?-Au-boulot-" rel="directory"&gt;Au boulot&lt;/a&gt;

/ 
&lt;a href="http://www.coincoin.fr.eu.org/?+-oracle-+" rel="tag"&gt;oracle&lt;/a&gt;

		</description>


 <content:encoded>&lt;div class='rss_texte'&gt;&lt;div class=&#034;precode&#034;&gt;&lt;pre class='spip_code spip_code_block' dir='ltr' style='text-align:left;'&gt;&lt;code&gt;set show off ttitle off set heading off set pagesize 999 set linesize 250 set pause off time on verify off feedback off trims on spool /tmp/tmfile.cvs select UTI_ID||';'||PRO_ID||';'||LNG_ID||';'||UTI_CIVILITE||';'||UTI_NOM_MEDIA||';'||UTI_FONCTION||';'||UTI_NOM||';'||UTI_PRENOM||';'||UTI_EMAIL||';'||UTI_CARTE_PRESSE_NUM||';'||UTI_NUMRUE||';'||UTI_ADRESSE1||';'||UTI_ADRESSE2||';'||UTI_CODEPOSTAL||';'||UTI_VILLE||';'||UTI_TELEPHONE||';'||UTI_LOGIN||';'||UTI_PAYS||';'||UTI_IPN||';'||UTI_NEWSLETTER||';'||UTI_PASSWORD||';'||UTI_ACCREDITE||';'||TME_ID||';' from TD_UTILISATEUR where UTI_ACCREDITE='N'; spool off; quit&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
		
		</content:encoded>


		

	</item>



</channel>

</rss>
