Skip to content

Commit

Permalink
Merge pull request #52 from linea-it/apolloconf
Browse files Browse the repository at this point in the history
reestruturadas as páginas de processamento e criada a de armazenamento
  • Loading branch information
gschwend authored Nov 9, 2023
2 parents 502c056 + 3598129 commit f77eac3
Show file tree
Hide file tree
Showing 8 changed files with 322 additions and 418 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,5 @@ site
**/.DS_Store
*.exe
.env/
.venv/
*.vscode/
1 change: 0 additions & 1 deletion docs/armazenamento.md

This file was deleted.

126 changes: 126 additions & 0 deletions docs/armazenamento/index.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,128 @@
## LustreFS (HPC)

O ambiente do cluster Apollo conta com sistema de arquivos de alta performance [Lustre](https://www.lustre.org/) com dois níveis (_tiers_) de armazenamento, um em SSD com ~70 TB (_T0_) e outro em HDD com ~500 TB (_T1_), ambos conectados a uma rede infiniband EDR de 100 Gb/s. Os dois níveis de armazenamento estão disponíveis em `/lustre/t0` e `/lustre/t1`.

Os usuários poderão acessar seu diretório de scratch através da variável de ambiente `$SCRATCH`, ou acessando o diretório localizado em `/lustre/t0/scratch/users/<username>`.


### Características

Os sistemas de arquivos Lustre têm um desempenho bastante diferente dos discos locais comuns em outras máquinas. O Lustre foi desenvolvido para fornecer acesso rápido a grandes arquivos de dados necessários para aplicações paralelas. Ele é particularmente ineficiente em lidar com arquivos pequenos e em fazer muitas pequenas operações nesses arquivos. _**Esses casos devem ser evitados tanto quanto possível**_.

**Boa prática de uso em um sistema Lustre**

Para obter o melhor desempenho de um sistema Lustre, você deve usar o menor número possível de arquivos e, sempre que acessar um arquivo, deve ler/gravar o máximo de dados possível de cada vez. Um programa ideal usando Lustre leria um único arquivo de dados usando I/O paralelo (por exemplo, MPI IO), processaria os dados e, no final, gravaria um único arquivo novamente usando IO paralelo, sem uso intermediário do disco.

**Má prática de uso em um sistema Lustre**

Como o Lustre foi projetado para ler rapidamente um pequeno número de arquivos grandes, certos padrões de E/S que são perfeitamente adequados em outros sistemas causam uma carga muito alta em um sistema Lustre, por exemplo:

1. leituras pequenas
2. Abrindo muitos arquivos
3. Procurando dentro de um arquivo para ler um pequeno pedaço de dados

Essas práticas são muito comuns em aplicativos que foram projetados para serem executados em sistemas onde cada nó possui seu próprio disco de trabalho local. Em outras palavras, comandos como `ls -l` ou `stat`devem ser evitados sempre que possível.


### Quota

|area|TB |bsoft|bhard|isoft|ihard|grace period|
|----|----|-------------|-------------|-------------|-------------|------------|
|T0 | 70 | 1 TB | 1.25 TB | 10000 | 11000 | 7 days |


### Área de scratch

Os arquivos que não foram modificados nos últimos 60 dias serão automaticamente removidos.

!!! warning
Essa área NÃO sofrerá backup e também NÃO será enviado aviso de remoção de arquivos!

!!! warning
O script de limpeza é executado uma vez por semana sempre nos fins de semana.


### Comandos úteis

a) Como acessar a minha área de scratch?

cd $SCRATCH

b) Como consultar a minha quota disponível?

lfs quota -u $USER /lustre/t0

c) Como consultar os meus arquivos criados há _mais_ de 60 dias?

lfs find $SCRATCH --uid $UID -mtime +60 --print

c) Como consultar os meus arquivos criados há _menos_ de 60 dias?

lfs find $SCRATCH --uid $UID -mtime -60 --print

d) Como listar os OSTs do Lustre?

lfs osts /lustre/t0

e) Como listar os arquivos armazenados há mais de 60 dias em um determinado OST do Lustre?

lfs find $SCRATCH -mtime +60 --print --obd t0-OST0002_UUID

f) Como configurar o striping em diretório de modo a "quebrar" os arquivos e distribuir esses "pedaços" em 10 OSTs?

lfs setstripe -c 10 $SCRATCH/meus_arquivos_grandes

g) Como consultar o striping de arquivos/diretórios?

lfs setstripe -c $SCRATCH/meus_arquivos_grandes


!!! tip
O Lustre do LIneA foi projetado para trabalhar a 100Gbps, para alcançar o máximo de performance faça uso do striping e sempre com arquivos grandes (+100MB).


## NAS (NFS)

Os sistemas de armazenamento NAS são utilizados para armazenamento de longo prazo e não estão acessíveis através dos nós de processamento (HPC).

Características atuais:

| Fabricante | Modelo | Capacidade | Instalado em |
| ------- | ------ | ------------ | -----------|
| SGI | IS5500<sup>[1]</sup> | 540TB | Dez-2011 |
| SGI | IS5600 | 240TB | Jul-2014 |


<sup>[1]</sup> _este equipamento foi desativado em Jun/2023 devido a problemas físicos._


### /home

O diretório `home` é uma área para os usuários armazenarem seus arquivos pessoais e é acessível através dos nós de login do cluster e também na plataforma [jupyter](.).


### /archive

Área de armazenamento de dados brutos de catálogos astronômicos transferidos a partir de outros centros de dados ou produzidos internamente pelas diversas plataformas desenvolvidas pelo LIneA.

### /process

Área de armazenamento de dados provenientes do processamento de dados do DES realizados pelo [Portal do DES](https://des-portal.linea.org.br).

### Quota

|area| bsoft|bhard|isoft|ihard|grace period|
|----| -------------|-------------|-------------|-------------|------------|
|/home | 10 GB | 15 GB | 1000 | 1100 | 7 days |


## Backup

| áreas | frequência | tipo | retenção |
| ----- | ---------- | ---- | ---------------- |
| /home | diário | incremental | 90 dias |
| /home | mensal | completo | 90 dias |
| /archive | - | - | - |
| /process | - | - | - |
| /scratch | - | - | - |

Empty file added docs/armazenamento/lustrefs.md
Empty file.
73 changes: 70 additions & 3 deletions docs/faq.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,72 @@
PERGUNTAS FREQUENTES
## Como criar par de chaves SSH

Como gerar chave ssh para acessar o LIneA ?
Para acessar nosso ambiente via ssh é preciso gerar um par de chaves seguindo os passos abaixos:

Execute no terminal o comando "ssh-keygen -t rsa -b 4096".

### Linux

a) Para gerar o par de chaves utilize o comando abaixo em seu terminal.

ssh-keygen -t rsa -b 4096

Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): [pressione ENTER]
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase): [digite uma senha e para confirmar pressione ENTER]
Enter same passphrase again: [repita a senha e pressione ENTER]

![Image](../images/retorno_da_criacao_de_chave_ssh.png)

b) Após você receber a mensagem que a chave foi gerada. Você pode ver os dois arquivos criados listando o conteúdo do diretório `ls $HOME/.ssh id_rsa id_rsa.pub`

c) Após as chaves geradas enviar a chave **.pub** para a equipe de TI via email [[email protected]](mailto:[email protected]). A equipe de TI do LIneA irá configurar a chave no servidor e retornar com instruções para login no cluster Apollo. ***Aguarde o retorno de ok***.

### Windows

Para gerar par de chaves no sistema operacional Windows

a) Baixar o aplicativo Putty e instalar.

b) Acessar a pasta onde o programa foi instalado (essa instalação foi no Windows 10)`C:\Program File\PuTTY` (caminho pode ser diferente devido ao sistema operacional), Abra o programa Puttygen.

![Image](../images/caminho_do_programa_puttygem.png)

c) Clicar em Generate (o tipo de chave mantém como **RSA**).

![Image](../images/gerando_chave_no_windons.png)

**OBS : Movimentar o ponteiro do mouse ajuda a gerar a chave mais rapidamente, pois gera bits aleatórios**.

![Image](../images/carregamento_da_criacao_da_chave.png)

d) Par de chaves geradas com sucesso.

- Copiar a chave publicar para ser salva no servidor (detalhe na imagem em amarelo);
- Colocar uma senha na chave pública (detalhe na imagem em azul).
- Após copiar salve as chaves public e private no computador (detalhe na imagem em vermelho) envie a chave `.pub` para a equipe de TI via email [[email protected]](mailto:[email protected]). A equipe de TI do LIneA irá configurar a chave no servidor. ***Aguarde o retorno de ok***.

![Image](../images/copiando_chave.png)

e) Após o receber o email de confirmação que a chave `.pub` foi cadastrada no servidor de acesso, fazer as configurações no programa `Putty`.

- Crie um atalho na área de trabalho, abra o `PuTTY`;
- Coloque o Hostname login.linea.org.br.

![Image](../images/tela_do_putty.png)

f) Ao lado esquerdo ir na opção `SSH > Auth (detalhe em azul) > aperte em Browse (detalhe em amarelo) e escolha a chave a ser usada com extenção .ppk`.

![Image](../images/configurando_aquivo_ppk.png)

h) Caso precise utilizar algum túnel faça a seguinte configuração.
**OBS: os tunnels são configurado conforme o que o usuário vai acessar**

- Ir na opção Tunnels (lado esquerdo);
- Em Source port coloque a porta;
- Destination > coloque o endereço de destino > Add.

![Image](../images/configurando_tunel_no_putty.png)

Volte ao lado esquerdo e vá na primeira opção menu `Session (em vermelho) coloque o nome da sessions (em amarelo) e aperte em Save (em azul)`, para acessar aperte em `Open`.

![Image](../images/logando_no_ambiente_putty.png)
Loading

0 comments on commit f77eac3

Please sign in to comment.