Mudanças entre as edições de "Minicluster:Linux"

De WikiLICC
Ir para: navegação, pesquisa
m (Pacotes Fedora 25)
m (Escravo: Configurações)
 
(19 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 1: Linha 1:
Para versão Fedora13, ver [[Minicluster:Linux:Fedora13]]
 
 
 
O pacote [http://www.mcs.anl.gov/research/projects/mpich2/downloads/index.php?s=downloads MPICH2] é fornecido para os Linux:
 
O pacote [http://www.mcs.anl.gov/research/projects/mpich2/downloads/index.php?s=downloads MPICH2] é fornecido para os Linux:
 
* Debian 1.2.1
 
* Debian 1.2.1
Linha 11: Linha 9:
 
* [http://www.pcworld.idg.com.au/article/208829/debian_linux_cluster_beats_supercomputer_tsunami_warnings?pp=1] ''We tried several Linux flavours, including Red Hat, Mandrake, Fedora etc,...'''Debian''' as the most stable in servers, especially when things are being done pretty much in automatic mode. In our workstations the preference among programmers is Ubuntu, which is basically Debian-based...''
 
* [http://www.pcworld.idg.com.au/article/208829/debian_linux_cluster_beats_supercomputer_tsunami_warnings?pp=1] ''We tried several Linux flavours, including Red Hat, Mandrake, Fedora etc,...'''Debian''' as the most stable in servers, especially when things are being done pretty much in automatic mode. In our workstations the preference among programmers is Ubuntu, which is basically Debian-based...''
  
Mesmo assim, não há preferências claras e acabamos escolhendo o Fedora pois possui ampla documentação na internet e está em continua atualização. No momento a versão atual é [http://www.fedoraproject.org Fedora 13] e a máquina possui '''arquitetura x86-64'''.
+
Mesmo assim, não há preferências claras e acabamos escolhendo o Fedora pois possui ampla documentação na internet e está em continua atualização. No momento a versão atual é [http://www.fedoraproject.org Fedora 25] e a máquina possui '''arquitetura x86-64'''.
 +
 
 +
* Para versão Fedora13, ver [[Minicluster:Linux:Fedora13]]
  
 
==Fedora25==
 
==Fedora25==
Linha 29: Linha 29:
  
 
==Pacotes Fedora 25==
 
==Pacotes Fedora 25==
* Instalar
+
* Atualizar os pacotes do Linux depois da instalacão:
 +
dnf update dnf
 +
dnf update
 +
 
 +
* Instalar um desktop mais leve:
 
  dnf group install lxde-desktop
 
  dnf group install lxde-desktop
  
 
* Remover
 
* Remover
  dnf remove vim-minimal     # conflito com o vim-enhanced abaixo
+
  dnf remove vim-minimal         # conflito com o vim-enhanced abaixo
  
 
* Instalar
 
* Instalar
Linha 42: Linha 46:
 
  dnf install gcc-gfortran gcc-g++
 
  dnf install gcc-gfortran gcc-g++
 
  dnf install mariadb php
 
  dnf install mariadb php
 +
dnf install wol                # Pacote WakeOnLan
  
 
* Instalar gcc 4.9
 
* Instalar gcc 4.9
Linha 53: Linha 58:
 
* Outros:
 
* Outros:
 
** [[Linux:Pacotes]], firefox, java-1.x.x, thunderbird, cmake...,
 
** [[Linux:Pacotes]], firefox, java-1.x.x, thunderbird, cmake...,
 +
 +
===MPI===
 +
Instalar openmpi. Ver [https://fedoraproject.org/wiki/Packaging:MPI]. (No F13 tinhamos mpich2 e mpich2-devel)
 +
dnf install openmpi
  
 
==Configurações: mestre e escravo==
 
==Configurações: mestre e escravo==
 
* Desabilitar alguns serviços (ver [http://www.hscripts.com/tutorials/linux-services/acpid.html Serviços]):
 
* Desabilitar alguns serviços (ver [http://www.hscripts.com/tutorials/linux-services/acpid.html Serviços]):
  [root@cell100]$ chkconfig --del bluetooth
+
  systemctl disable bluetooth.service
  [root@cell100]$ chkconfig --del ip6tables
+
* Outros servicos desabilitados no fedora13: ip6tables,irda, speech-dispatcherd, btseed, bttrack, dc-client, dc-server (desabilitados nos escravos fedora13: cups)
[root@cell100]$ chkconfig --del irda
 
  [root@cell100]$ chkconfig --del speech-dispatcherd
 
[root@cell100]$ chkconfig --del btseed
 
[root@cell100]$ chkconfig --del bttrack
 
[root@cell100]$ chkconfig --del dc-client
 
[root@cell100]$ chkconfig --del dc-server
 
  
 
+
* Configurações para todos os usuários. Na inicialização:
**Somente escravo
 
[root@cell100]$ chkconfig --del cups
 
 
 
 
 
* Configurações para todos os usuários
 
** Na inicialização:
 
 
  [root@one]$ vi /etc/profile.d/usuarios.sh
 
  [root@one]$ vi /etc/profile.d/usuarios.sh
 
  #  configuracoes pessoais
 
  #  configuracoes pessoais
Linha 89: Linha 86:
 
  # LANG="en_US.UTF-8"
 
  # LANG="en_US.UTF-8"
  
** O que estiver no diretório /etc/skel (testar) é copiado para todos os usuários.
+
Dica: O que estiver no diretório /etc/skel (testar) é copiado para todos os usuários.
  
 
==Configurações: mestre==
 
==Configurações: mestre==
Linha 99: Linha 96:
 
* Usando o Firefox, foi informado o nome da máquina '''one'''
 
* Usando o Firefox, foi informado o nome da máquina '''one'''
 
* A máquina mestre recebeu o IP 143.54.226.116
 
* A máquina mestre recebeu o IP 143.54.226.116
 
===Update===
 
Atualizar os pacotes do Linux
 
[root@one]$ dnf update dnf
 
[root@one]$ dnf update
 
[root@one]$ dnf install mpich2
 
[root@one]$ dnf install mpich2-devel
 
Adicionar o pacote '''WakeOnLan'''
 
[root@one]$ dnf install wol
 
 
TODO: Adicionar comandos para atualização de todos os pacotes via comando!
 
  
 
===Hostnames===
 
===Hostnames===
 
  [root@one]$ vi /etc/hosts
 
  [root@one]$ vi /etc/hosts
  # hostname um.phantom added to /etc/hosts by anaconda
+
   
 
  127.0.0.1  localhost localhost.localdomain localhost4 localhost4.localdomain4 one.matrix
 
  127.0.0.1  localhost localhost.localdomain localhost4 localhost4.localdomain4 one.matrix
 
  ::1        localhost localhost.localdomain localhost6 localhost6.localdomain6 one.matrix
 
  ::1        localhost localhost.localdomain localhost6 localhost6.localdomain6 one.matrix
  192.168.0.100 cell100.matrix      cell100
+
  192.168.0.101 cell101.matrix      cell101
+
143.54.226.61  euler
  192.168.0.102 cell102.matrix      cell102
+
143.54.226.62  turing
  143.54.226.61 euler.mat.ufrgs.br euler
+
143.54.226.118  hunter  hunter.mat.ufrgs.br
  143.54.226.118 hunter.mat.ufrgs.br hunter
+
 +
192.168.0.108 cell108
 +
  192.168.0.109 cell109
 +
  192.168.0.110 cell110
 +
  192.168.0.111 cell111
 +
   
 +
192.168.0.112 cell112
 +
  192.168.0.113 cell113
 +
  192.168.0.114 cell114
 +
  192.168.0.115 cell115
 +
 +
  192.168.0.116 cell116
 +
  192.168.0.117 cell117
 +
  192.168.0.118 cell118
 +
192.168.0.119 cell119
 +
 +
192.168.0.120 cell120
 +
192.168.0.121 cell121
 +
192.168.0.122 cell122
 +
192.168.0.123 cell123
  
 
=== Firewall ===
 
=== Firewall ===
Foi necessário desativar o firewall do linux, via ''iptables'' (configurar de maneira correta seria uma opção melhor, mas para o momento deixamos sem [http://news.softpedia.com/news/Iptables-Basic-Guide-35969.shtml])
+
Foi necessário desativar o firewall do linux (configurar de maneira correta seria uma opção melhor, mas para o momento deixamos sem [http://news.softpedia.com/news/Iptables-Basic-Guide-35969.shtml])
  [root@one]$ /etc/init.d/iptables save
+
  [root@one]$ systemctl status  firewalld
  [root@one]$ /etc/init.d/iptables stop
+
  [root@one]$ systemctl disable firewalld
 
Se for necessário reiniciar use:
 
Se for necessário reiniciar use:
  [root@one]$ /etc/init.d/iptables start
+
  [root@one]$ systemctl enable firewalld
Veja em [http://lists.mcs.anl.gov/pipermail/mpich-discuss/2006-August/001521.html] e [http://lists.mcs.anl.gov/pipermail/mpich-discuss/2006-August/001526.html] e followups.
+
Veja em [https://www.liquidweb.com/kb/how-to-start-and-enable-firewalld-on-fedora-23/] ou mais antigos [http://lists.mcs.anl.gov/pipermail/mpich-discuss/2006-August/001521.html] e [http://lists.mcs.anl.gov/pipermail/mpich-discuss/2006-August/001526.html] e followups.
  
 
=== SELinux ===
 
=== SELinux ===
Off no momento. Veja [[SELinux]].
+
Pode ser complicado configurar, foi desligado por sugestão do DRBL. Veja [[SELinux]].
 +
 
 +
Para desabilitar o SELinux, configure
 +
root@one $ vi /etc/selinux/config
 +
...
 +
SELINUX=disabled
 +
...
 +
e para mostrar o status,
 +
root@one $ /usr/sbin/sestatus
 +
SELinux status:                disabled
  
 
=== Usuários e grupos ===
 
=== Usuários e grupos ===
Linha 141: Linha 155:
 
  alunos:x:501:
 
  alunos:x:501:
  
 +
 +
=Two cores ALIVE=
 +
grep -i core /proc/cpuinfo
 +
 +
model name      : Intel(R) Core(TM)2 Duo CPU    E7500  @ 2.93GHz
 +
core id        : 0
 +
cpu cores      : 2
 +
model name      : Intel(R) Core(TM)2 Duo CPU    E7500  @ 2.93GHz
 +
core id        : 1
 +
cpu cores      : 2
 +
 +
Com o comanto ''htop'' podemos ver os processos rodando por cpu. Também top, atop.
 +
 +
=Kernel=
 +
 +
Último kernel instalado:
 +
[root]$ uname -a
 +
Linux one 4.8.6-300.fc25.x86_64 #1 SMP Tue Nov 1 12:36:38 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
 +
 +
<!--
 
== Escravo: Configurações ==
 
== Escravo: Configurações ==
 +
Não vamos instalar diretamente nos escravos. Usaremos DRBL.
 
=== Update e Instalação ===
 
=== Update e Instalação ===
 
Não possui acesso a internet. Existem várias possibilidades, porém estou tentando o seguinte:
 
Não possui acesso a internet. Existem várias possibilidades, porém estou tentando o seguinte:
Linha 164: Linha 199:
 
  [root@cell100]$ yum localinstall mpich2-1.2.1p1-2.fc13.x86_64.rpm    --disablerepo=fedora --disablerepo=updates
 
  [root@cell100]$ yum localinstall mpich2-1.2.1p1-2.fc13.x86_64.rpm    --disablerepo=fedora --disablerepo=updates
 
  [root@cell100]$ yum localinstall mpich2-devel-1.2.1p1-2.fc13.x86_64.rpm --disablerepo=fedora --disablerepo=updates
 
  [root@cell100]$ yum localinstall mpich2-devel-1.2.1p1-2.fc13.x86_64.rpm --disablerepo=fedora --disablerepo=updates
 
+
-->
=Two cores ALIVE=
 
grep -i core /proc/cpuinfo
 
 
model name      : Intel(R) Core(TM)2 Duo CPU    E7500  @ 2.93GHz
 
core id        : 0
 
cpu cores      : 2
 
model name      : Intel(R) Core(TM)2 Duo CPU    E7500  @ 2.93GHz
 
core id        : 1
 
cpu cores      : 2
 
 
 
==Comando top==
 
O comando ''top'' é utilizado para verificar quais processos estão rodando.
 
[user] $ top
 
Tasks: 168 total,  2 running, 166 sleeping,  0 stopped,  0 zombie
 
<font color='red'>Cpu0</font>  :  1.0%us,  0.8%sy,  0.0%ni, 77.1%id, 20.6%wa,  0.4%hi,  0.0%si,  0.0%st
 
<font color='red'>Cpu1</font>  :  1.3%us,  0.9%sy,  0.0%ni, 80.8%id, 17.0%wa,  0.0%hi,  0.0%si,  0.0%st
 
Mem:  2031852k total,  1858956k used,  172896k free,  109204k buffers
 
Swap:  5119988k total,        0k used,  5119988k free,  1028704k cached
 
 
 
  PID USER  PR  NI  VIRT  SHR S %CPU %MEM    TIME+  PPID <font color='red'>P</font>   TIME CODE COMMAND
 
13192 root  20  0  398m 8148 S  3.2  4.8  0:06.85 13168 <font color='red'>0</font>  0:06    4 <font color='red'>programa1</font>
 
12793 dago  20  0  544m  18m S  0.3  1.5  0:04.14    1 <font color='red'>1</font>  0:04    4 <font color='red'>top</font>
 
 
 
Veja o manual com
 
man top
 
;Opções interessantes: clique no programa top aberto.
 
: h :  mostra um help
 
: 1 :  mostra um/ou mais processadores
 
: f :  adiciona mais colunas. Use ''j'' para coluna processador
 
: z :  habilita cores
 
: u :  mostra um usuário especi~fico
 
: W :  Escreve arquivo de configuração
 
Salve suas configurações com a opção ''W''.
 
 
 
=Kernel=
 
 
 
Último kernel instalado:
 
[root]$ uname -a
 
Linux one.matrix '''2.6.34.7-61'''.fc13.x86_64 #1 SMP Tue Oct 19 04:06:30 UTC 2010 x86_64 x86_64 x86_64 GNU/Linux
 
Outras versões:
 
* 2.6.33.8-149.fc13.x86_64:  [  OK  ]
 
* 2.6.32.11-99.fc12.x86_64:  [ ERRO ] NÃO está terminando de dar o boot (tranca depois de habilitar a tela gráfica sem fornecer a caixa para login).
 
* 2.6.31.5-127.fc12.x86_64:  [  OK  ]
 
  
 
==Veja também==
 
==Veja também==

Edição atual tal como às 01h49min de 19 de julho de 2017

O pacote MPICH2 é fornecido para os Linux:

  • Debian 1.2.1
    • Ubuntu 1.2 (based on Debian)
  • Fedora/RHEL/CentOS 1.2.1
  • Gentoo
  • FreeBSD 1.2.1

Uma opinião do controle de Tsunamis

  • [1] We tried several Linux flavours, including Red Hat, Mandrake, Fedora etc,...Debian as the most stable in servers, especially when things are being done pretty much in automatic mode. In our workstations the preference among programmers is Ubuntu, which is basically Debian-based...

Mesmo assim, não há preferências claras e acabamos escolhendo o Fedora pois possui ampla documentação na internet e está em continua atualização. No momento a versão atual é Fedora 25 e a máquina possui arquitetura x86-64.

Fedora25

  • Download do Fedora-25-Workstation 64 bits.
  • Selecionar o drive: (ATA ST32500318AS) com tamanho 238475 MB (Serial Number 9VY0K045)

Partições

Criar as partições.

  • Selecionar Create custom layout. Crie as partições:
    • /boot: 1000 MiB, ext4, /sda1
    • /home: 5 GiB, ext4, /sda2
    • /: 50 GiB, ext4, /sda3
    • /swap: 5 GiB, swap, /sda5

Seta o nome da máquina mestre:

hostnamectl set-hostname one

Pacotes Fedora 25

  • Atualizar os pacotes do Linux depois da instalacão:
dnf update dnf
dnf update
  • Instalar um desktop mais leve:
dnf group install lxde-desktop
  • Remover
dnf remove vim-minimal         # conflito com o vim-enhanced abaixo
  • Instalar
dnf install sudo               # removido com o comando acima?
dnf install htop atop
dnf install vim-enhanced  emacs
dnf install terminator
dnf install gcc-gfortran gcc-g++
dnf install mariadb php
dnf install wol                 # Pacote WakeOnLan
  • Ativar ssh
systemctl enable sshd.service  # habilita iniciar no boot
systemctl start  sshd.service  # inicia o sshd


  • Outros:

MPI

Instalar openmpi. Ver [2]. (No F13 tinhamos mpich2 e mpich2-devel)

dnf install openmpi

Configurações: mestre e escravo

  • Desabilitar alguns serviços (ver Serviços):
systemctl disable bluetooth.service
  • Outros servicos desabilitados no fedora13: ip6tables,irda, speech-dispatcherd, btseed, bttrack, dc-client, dc-server (desabilitados nos escravos fedora13: cups)
  • Configurações para todos os usuários. Na inicialização:
[root@one]$ vi /etc/profile.d/usuarios.sh
#   configuracoes pessoais
if [ "$PS1" ]; then
  PS1="[\u@\h:\l \W]\\$ ";
  if [ `id -u` = "0" ]; then
    PS1='\[\033[01;31m\]\u\[\033[01;37m\]@\[\033[01;32m\]\h\[\033[01;34m\] \w \[\033[01;33m\]\$\[\033[00;37m\] ';
  else
    PS1='\[\033[01;33m\]\u\[\033[01;37m\]@\[\033[01;32m\]\h\[\033[01;34m\] \w \[\033[01;33m\]\$\[\033[00;37m\] ';
  fi
fi

PATH=$PATH:$HOME/bin
export PATH

alias vi=vim
# LANG="en_US.UTF-8"

Dica: O que estiver no diretório /etc/skel (testar) é copiado para todos os usuários.

Configurações: mestre

Placa de rede e Internet

Na máquina mestre foi adicionada uma placa de rede extra para comunicação com o exterior (na verdade essa está ligada ao switch e a placa onboard está ligada a web).

Apenas na primeira vez foi necessário liberar a placa de rede onboard para acessar a rede UFRGS

  • Usando o Firefox, foi informado o nome da máquina one
  • A máquina mestre recebeu o IP 143.54.226.116

Hostnames

[root@one]$ vi /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 one.matrix
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6 one.matrix

143.54.226.61   euler
143.54.226.62   turing
143.54.226.118  hunter   hunter.mat.ufrgs.br

192.168.0.108 cell108
192.168.0.109 cell109
192.168.0.110 cell110
192.168.0.111 cell111

192.168.0.112 cell112
192.168.0.113 cell113
192.168.0.114 cell114
192.168.0.115 cell115

192.168.0.116 cell116
192.168.0.117 cell117
192.168.0.118 cell118
192.168.0.119 cell119

192.168.0.120 cell120
192.168.0.121 cell121
192.168.0.122 cell122
192.168.0.123 cell123

Firewall

Foi necessário desativar o firewall do linux (configurar de maneira correta seria uma opção melhor, mas para o momento deixamos sem [3])

[root@one]$ systemctl status  firewalld
[root@one]$ systemctl disable firewalld

Se for necessário reiniciar use:

[root@one]$ systemctl enable firewalld

Veja em [4] ou mais antigos [5] e [6] e followups.

SELinux

Pode ser complicado configurar, foi desligado por sugestão do DRBL. Veja SELinux.

Para desabilitar o SELinux, configure

root@one $ vi /etc/selinux/config
...
SELINUX=disabled
...

e para mostrar o status,

root@one $ /usr/sbin/sestatus
SELinux status:                 disabled

Usuários e grupos

Mudar o grupo 500 para grupo docentes e adicionar o grupo 501 alunos,

[root@one]$ groupmod -g 500 -n docentes dago
[root@one]$ groupadd -g 501 alunos
[root@one]$ grep 50[0-1] /etc/group
docentes:x:500:
alunos:x:501:


Two cores ALIVE

grep -i core /proc/cpuinfo

model name      : Intel(R) Core(TM)2 Duo CPU     E7500  @ 2.93GHz
core id         : 0
cpu cores       : 2
model name      : Intel(R) Core(TM)2 Duo CPU     E7500  @ 2.93GHz
core id         : 1
cpu cores       : 2

Com o comanto htop podemos ver os processos rodando por cpu. Também top, atop.

Kernel

Último kernel instalado:

[root]$ uname -a
Linux one 4.8.6-300.fc25.x86_64 #1 SMP Tue Nov 1 12:36:38 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux


Veja também