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

De WikiLICC
Ir para: navegação, pesquisa
m (Two cores ALIVE)
m (Escravo: Configurações)
 
(90 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 1: Linha 1:
 
 
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 10: 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 contínua 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'''.
  
==Windows XP==
+
* Para versão Fedora13, ver [[Minicluster:Linux:Fedora13]]
Optei não apagar a instalação do Windows XP.
 
* Ligar a máquina e terminar a instalação do Windows XP
 
* Baixar atualizações disponíveis
 
* Desfragmentar o drive C:
 
* '''IMPORTANTE:''' Rodar no windows duas vezes (caso haja falhas no disco a instalação abaixo é cancelada!!)
 
chkdsk /f
 
  
==Fedora 13==
+
==Fedora25==
A partir do DVD de instalação do Fedora 13 (downloaded in 20100607). Em caso de erros pode ser útil acessar os [[Linux:Virtual Consoles]].
+
* Download do Fedora-25-Workstation 64 bits.
 +
* Selecionar o drive: (ATA ST32500318AS) com tamanho 238475 MB (Serial Number 9VY0K045)
  
* Dar o boot via DVD
+
===Partições===
* Testar a mídia (pode pular esse passo)
+
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
  
* Na tela gráfica inicial: clique ''Next''
+
Seta o nome da máquina mestre:
* Escolher linguagem: English
+
hostnamectl set-hostname one
* Escolher teclado: Brazilian (ABNT2)
 
* Escolher: Basic Storage Devices
 
* Selecionar o drive: (ATA ST3250318AS) com tamanho 238475 MB (Serial Number 9VY0K045)
 
  
* Hostname: cell100.matrix (seguir com cell101,cell102,cell103,...,cell115)
+
==Pacotes Fedora 25==
* Selecionar time zone: São Paulo
+
* Atualizar os pacotes do Linux depois da instalacão:
* Fornecer senha root e confirmar.
+
dnf update dnf
 +
dnf update
  
===Partições===
+
* Instalar um desktop mais leve:
Criar as partições sem apagar as antigas ('''NÃO''' apagar a partição de Recovery que possui tamanho 16386 MB).
+
dnf group install lxde-desktop
* Selecionar Create custom layout:
 
* A partição Windows será encolhida para 50000 MB.
 
** Selecione /dev/sda1.
 
** Selecione ''Resize'' e o tamanho 50000 MB.
 
  
* Criar partição '''/boot'''
+
* Remover
** Clique em '''Create''' e '''Standard Partition'''.
+
dnf remove vim-minimal        # conflito com o vim-enhanced abaixo
** Em '''Mount Point''' selecione '''/boot'''
 
** Em '''File System Type''' selecione '''ext3''' ('''tem''' de ser do tipo '''ext3''')
 
** Em '''Size''' informe 1000 (MB)
 
* Criar partição '''swap'''
 
** Clique em '''Create''' e '''Standard Partition'''.
 
** Em '''File System Type''' selecione '''swap'''
 
** Em '''Size''' informe 5000 (MB)
 
* Criar partição '''/'''
 
** Clique em '''Create''' e '''Standard Partition'''.
 
** Em '''Mount Point''' selecione '''/'''
 
** Em '''File System Type''' selecione '''ext4'''
 
** Em '''Size''' informe 40000 (MB)
 
  
* Clique em '''Next''' e '''Write changes to disk'''
+
* Instalar
  Em caso de falha, rodar no windows duas vezes
+
  dnf install sudo              # removido com o comando acima?
  chkdsk /f
+
dnf install htop atop
***https://bugzilla.redhat.com/show_bug.cgi?id=502422
+
dnf install vim-enhanced  emacs
 +
dnf install terminator
 +
dnf install gcc-gfortran gcc-g++
 +
  dnf install mariadb php
 +
dnf install wol                # Pacote WakeOnLan
  
* Confirme que '''Fedora''' é o sistema a ser carregado por Default.
+
* Instalar gcc 4.9
 +
** [[Minicluster:Gcc49]]
  
===Pacotes===
+
* Ativar ssh
* [[Linux:Pacotes]]
+
systemctl enable sshd.service  # habilita iniciar no boot
 +
systemctl start  sshd.service  # inicia o sshd
  
* Selecione o conjunto de pacotes '''Software Development''':
 
* Selecione '''Customize now''' para escolher pacotes extras
 
  
Selecione os pacotes abaixo
+
* Outros:
* Desktop Environments/XFCE
+
** [[Linux:Pacotes]], firefox, java-1.x.x, thunderbird, cmake...,
* Desktop Environments/GNOME (ELIMINAR)
 
* Applications/Editors/Emacs
 
* Applications/Editors/vim
 
* Applications/Graphical Internet/Firefox
 
* Applications/Graphical Internet/java-1.6.0
 
* Applications/Graphical Internet/Thunderbird
 
* Applications/Graphics (0)
 
* Development/Deveopment Tools/cmake
 
* Development/GNOME Software Development (0)
 
* Servers/Server Configurations tools
 
* Base System/Administration Tools
 
* base System/System Tools
 
  
 +
===MPI===
 +
Instalar openmpi. Ver [https://fedoraproject.org/wiki/Packaging:MPI]. (No F13 tinhamos mpich2 e mpich2-devel)
 +
dnf install openmpi
  
Outros (Head Node)
+
==Configurações: mestre e escravo==
* Servers/MySQL
+
* Desabilitar alguns serviços (ver [http://www.hscripts.com/tutorials/linux-services/acpid.html Serviços]):
* Servers/DNS Name
+
systemctl disable bluetooth.service
* Servers/Windows File System
+
* Outros servicos desabilitados no fedora13:  ip6tables,irda,  speech-dispatcherd, btseed, bttrack, dc-client, dc-server (desabilitados nos escravos fedora13: cups)
* Applications/Java Development
 
 
 
  
 +
* 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"
  
===Welcome===
+
Dica: O que estiver no diretório /etc/skel (testar) é copiado para todos os usuários.
Passos finais de configuração (depois de dar o boot)
 
* Forward
 
* Forward
 
* Crie um usuário comum: dago
 
  
==Mestre: Configurações==
+
==Configurações: mestre==
 
=== Placa de rede e Internet ===
 
=== Placa de rede e Internet ===
  
Linha 107: Linha 94:
  
 
Apenas na primeira vez foi necessário liberar a placa de rede onboard para acessar a rede UFRGS
 
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 '''phum'''
+
* Usando o Firefox, foi informado o nome da máquina '''one'''
* A máquina mestre recebeu o IP 143.54.226.166
+
* A máquina mestre recebeu o IP 143.54.226.116
 
 
===Update===
 
Atualizar os pacotes do Linux
 
yum update
 
yum install mpich\*
 
  
 
===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 ===
 +
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:
  
== Escravo: Configurações ==
 
  
 
=Two cores ALIVE=
 
=Two cores ALIVE=
Linha 146: Linha 166:
 
  cpu cores      : 2
 
  cpu cores      : 2
  
==Comando top==
+
Com o comanto ''htop'' podemos ver os processos rodando por cpu. Também top, atop.
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
+
=Kernel=
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
+
Último kernel instalado:
man top
+
  [root]$ uname -a
;Opções interessantes: clique no programa top aberto.
+
  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
: 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''.
 
  
=Problemas=
+
<!--
* O kernel '''2.6.32.11-99.fc12.x86_64''' NÃO está terminando de dar o boot (tranca depois de habilitar a tela gráfica sem fornecer a caixa para login).
+
== Escravo: Configurações ==
 +
Não vamos instalar diretamente nos escravos. Usaremos DRBL.
 +
=== Update e Instalação ===
 +
Não possui acesso a internet. Existem várias possibilidades, porém estou tentando o seguinte:
  
* O kernel '''2.6.31.5-127.fc12.x86_64''' está FUNCIONANDO.
+
* Baixar os pacotes .rpm necessários na máquina mestre e copiá-los para a máquina escravo.
 +
tcl-8.5.7-5.fc13.x86_64.rpm
 +
environment-modules-3.2.7b-7.fc13.x86_64.rpm
 +
mpich2-1.2.1p1-2.fc13.x86_64.rpm
 +
mpich2-devel-1.2.1p1-2.fc13.x86_64.rpm
 +
* Importar as [http://www.linuxquestions.org/questions/fedora-35/public-key-not-installed-468615/ keys] necessárias para instalar os pacotes (não instalou direito usando apenas rpm):
 +
[root@cell100]$ rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-x86_64
 +
ou melhor ainda, editar /etc/yum.conf para não reclamar sobre signature files
 +
[root@cell100]$ vi /etc/yum.conf
 +
..
 +
gpgcheck=0
 +
..
  
 +
* Instalar usando yum
 +
 +
[root@cell100]$ yum localinstall tcl-8.5.7-5.fc13.x86_64.rpm    --disablerepo=fedora --disablerepo=updates
 +
[root@cell100]$ yum localinstall environment-modules-3.2.7b-7.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
 +
-->
  
 
==Veja também==
 
==Veja também==
Linha 183: Linha 208:
 
* http://www.phy.duke.edu/~rgb/brahma//beowulf_book/beowulf_book.html
 
* http://www.phy.duke.edu/~rgb/brahma//beowulf_book/beowulf_book.html
 
* http://www.westgrid.ca/support/software
 
* http://www.westgrid.ca/support/software
 +
 +
[[Categoria:Minicluster]]

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