Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
    David Lauzon
    @davidonlaptop
    oui
    jbeliveau
    @jbeliveau
    ok good
    David Lauzon
    @davidonlaptop
    j’aimerais aussi si tu pourrais regarder l’image Hadoop en priorité
    j’ai essayé de rouler les commandes pour utiliser HDFS pour un étudiant et ca ne fonctionne pas
    (les commandes dans le README)
    jbeliveau
    @jbeliveau
    ah d'accord
    David Lauzon
    @davidonlaptop
    si tu as le temps de reproduire le problème, demain je t’expliquerai comment ca devrait fonctionner
    jbeliveau
    @jbeliveau
    est-ce que tu étais capable de démarrer un namenode?
    David Lauzon
    @davidonlaptop
    il me semble que non
    je pouvais le formatter, mais il n’utiliisait pas le volume passé en ligne de commandes
    jbeliveau
    @jbeliveau
    ok moi non plus
    il y a quelque chose qu'il n'aime pas et il se ferme tout seul
    David Lauzon
    @davidonlaptop
    au départ il n’est pas formaté - ca pourrait être ca
    on doit utiliser 1 conteneur pour formatter, il fait sa job sur un volume présent dans le host. Ensuite il quitte lorsqu’il a terminé.
    Lorsque c’est fait, le premier conteneur est supprimé (mais le volume sur le host est encore présent)
    Cette étape n’est fait qu’une seule fois par environnement
    ensuite, on part un 2ème conteneur qui démarre le namenode avec le dossier formatté
    jbeliveau
    @jbeliveau
    ok ouais ça pourrait être ça
    2015-06-03 02:05:02,239 FATAL [main] namenode.NameNode (NameNode.java:main(1330)) - Exception in namenode join
    org.apache.hadoop.hdfs.server.common.InconsistentFSStateException: Directory /data/dfs/name is in an inconsistent state: storage directory does not exist or is
    not accessible.
    David Lauzon
    @davidonlaptop
    ca c’est ce qui devrait arriver - je pensais que ca marchait, mais l’étape 1 ne fonctionne pas
    dans le fichier hdfs-site.xml on définit le path ou le namenode peut stocker les données - normalement /data
    si on ne mount pas de volume, HDFS semble utiliser /data
    si on mount un volume dans /data, HDFS sembler utiliser la config par défaut de hadoop (/tmp/dfs/…) au lieu de /data
    je ne sais pas pourquoi
    jbeliveau
    @jbeliveau
    si j'ai un namenode, secondary namenode et un datanode de partis, comment est-ce que je peux tester que ça marche?
    David Lauzon
    @davidonlaptop
    en placant un fichier dans hdfs
    part un autre conteneur hadoop en bash
    et copier un fichier du conteneur (importe lequel) dans hdfs avec le command line
    ensuite fait un ls
    je vais dormir - on continue demain
    jbeliveau
    @jbeliveau
    ok merci
    bonne nuit
    jbeliveau
    @jbeliveau
    je crois que Hadoop fonctionne

    pour partir les 3 nodes:

    docker run -d --name hdfs-namenode -h hdfs-namenode -p 9000:9000 -p 50070:50070 gelog/hadoop:2.3.0 sh -c 'hdfs namenode -format && hdfs namenode'

    docker run -d --name hdfs-secondarynamenode -h hdfs-secondarynamenode -p 50090:50090 --link=hdfs-namenode:hdfs-namenode gelog/hadoop:2.3.0 hdfs secondarynamenode

    docker run -d --name hdfs-datanode1 -h hdfs-datanode1 -p 50081:50081 --link=hdfs-namenode:hdfs-namenode --link=hdfs-secondarynamenode:hdfs-secondarynamenode gelog/hadoop:2.3.0 hdfs datanode

    et ensuite pour faire un autre container pour tester:
    docker run -ti --rm --link=hdfs-namenode:hdfs-namenode --link=hdfs-secondarynamenode:hdfs-secondarynamenode gelog/hadoop:2.3.0 bash
    à partir du container de test, je peux faire des hadoop fs -ls, -mkdir et -put
    jbeliveau
    @jbeliveau
    sauf que c'est vrai qu'en relançant le premier container ça va toujours refaire un format... je vais modifier le docker run
    David Lauzon
    @davidonlaptop
    oui et il n’utilise pas de volume
    donc si le conteneur #1 crash, on perd tous les données du cluster
    jbeliveau
    @jbeliveau
    dans le dockerfile, il y a un "VOLUME /data" et en faisant la commande "docker inspect --format "{{ .Volumes }}" <ID>", je vois:
    map[/data:/var/lib/docker/vfs/dir/a7963ae006777db26d3a7d574a86413eb4c3c54585909affe34674ba343a382a]
    ce qui est là-dedans va toujours rester sur le host peu importe ce qui arrive au container non?
    David Lauzon
    @davidonlaptop
    en théorie, il est lié a l’image docker
    ou au container
    mais quand tu arrives pour faire un upgrade de l’image (e.g. nouvelle version de hadoop), il faut que tu gardes le container original
    et en cas de défaillance machine, c’est plus compliqué d’activer un namenode sur une autre machine
    jbeliveau
    @jbeliveau
    David, on peut toujours se parler sur Skype ce soir? Par exemple à 20h30 ou 21h.
    Michael Faille
    @mikefaille
    This message was deleted
    Alain April
    @aapril