Avaliação das distribuições Linux

download Avaliação das distribuições Linux

If you can't read please download the document

description

Avaliação das Distribuições Linux para Servidores Itautec / Device Drivers, módulos do kernel e rede - Prof. Mauro Tapajós Santos durante o projeto de pesquisa Cesmic na Universidade Católica de Brasília

Transcript of Avaliação das distribuições Linux

  • 1. Avaliao das Distribuies Linux para Servidores Itautec Prof. Mauro Tapajs Device Drivers , Mdulos eRede no Linux

2. Como Avaliar as Caractersticas do Suporte Hardware do Linux?

  • Levantamento do que existe em termos de hardware no sistema (excluindo dispositivos de I/O)

3. O que reconhecido pordefaultpelo Linux e o grau de maturidade do driver (compilado no kernel ou em mdulo) 4. O que no suportado pordefaultna instalao bsica 5. O que exige configuraes ou software extra para funcionar e qual o nvel de dificuldade 6. Como Avaliar as Caractersticas do Suporte Hardware do Linux?

  • Necessidade de algum conhecimento da arquitetura especfica da mquina

7. Necessidade de saber como reconhecer o hardware dentro do SO 8. Saber como so criados osdevice driverse como o SO acessa os dispositivos na mquina 9. Saber com detalhes como funciona a carga de mdulos paradevice driverse seus comandos 10. Analisar ferramentas de benchmarking para os itens de hardware em questo para testes com resultados numricos (hardware de rede) 11. Dispositivos no Linux 12. Dispositivos e o Linux 13. Reconhecimento de Dispositivos

  • Lista de major numbers para dispositivos

/usr/src/linux/Documentation/devices.txt

  • Implementao das definies de major numbers no kernel

/usr/src/linux/include/linux/major.h

  • Dispositivos (caracter e bloco) reconhecidos pelo SO

/proc/devices

  • Dispositivos PCI reconhecidos na carga do kernel

/proc/pci 14. Mdulos

  • Reconhecimento dos mdulos carregados

Lsmod ou /proc/modules

  • Informaes sobre mdulos existentes

modinfo

  • Reconhecimento dos mdulos existentes no sistema

Anlise da compilao do kernel e/usr/src/linux/Documentation

  • Mdulos no sistema

/lib/modules/kernel

  • Dependncias de mdulos no sistema

/lib/modules/kernel/modules.dep 15. Reconhecimento de Dispositivos

  • Major numberse eMinor numbers

16. Drivers para dispositivos

  • Analisar caso a caso cada dispositivo

17. Verificar no fabricante 18. Caso no haja suporte do fabricante, procurar driver na Internet para o equipamento (normalmente pelo chipset usado) 19. Interrupes de Dispositivos No Linux se pode ter estatsticas de interrupes enviadas por CPU (/proc/interrupts) e por interrupo (/proc/stat) 20. Foco: Dispositivos de Rede

  • Objetivo: avaliar o suporte de rede das distribuies

21. Itens de hardware para avaliao na mquina:

  • Interface Fast Ethernet OnBoard Intel

22. Interface Gigabit Ethernet OnBoard Intel 23. Interface Wireless LAN PCI Intel Entendimento de implementao de dispositivos de rede no Linux no so tratados como os dispositivos de bloco ou caracter 24. O suporte a networking est todo no kernel edevice driversnormalmente esto em mdulos 25. Procedimento Para cada distribuio Linux:

  • Levantar a identificao dos itens de hardware relacionados no sistema (inventrio completo do servidor)

26. Coleta das informaes relacionadas com mdulos,device driverse itens de hardware (especificamente interfaces de rede, mas o que for aprendido aqui servir para praticamente qualquer hardware no sistema) 27. Levantar osdriverspara os itens de hardware de rede necessrios no linux, suas verses e se esto ou no configurados. Encontrar os mesmos caso no estejam disponveis na distribuio e proceder a instalao se for o caso. 28. Rodar ferramentas de validao do ambiente ( ltp ) 29. Rodar testes debenchmarkingrelacionados com performance de rede (NetPIPE) 30. Variar os contextos dos testes de rede tentando analisar a influncia de outras variveis (quantidade de memria, nmero de processadores, mdulo ou parte do kernel) 31. Realizar instalao de um dispositivo novo sem suporte (driver) linux do fabricante 32. Rodar compilaes de um kernel bsico, registrando o tempo necessrio 33. Testes

  • Validao LTP ( Linux Test Project )
  • Testes OK ou NOK
  • Benchmarking
  • Necessidade de pesquisa e entendimento de Ferramentas e o que fazem

34. Gerao de nmeros para comparao 35. A questo dos padres 36. Testes de Compilao de Kernel

  • Mtrica: Tempo de compilao de um kernel

37. Teste de aplicao bsico 38. Caractersticas

  • No mascara itens como a L2 como nos testes com pouca carga

39. Muito I/O 40. Comportamento de aplicao pesada Realizar emrunlevel1 e 3 para verificar influncias dos servios rodando na mquina 41. Padro de Testes no Linux

  • O sistema Linux sempre se apresenta em configuraes particulares de hardware, verso, kernel, patches, e distribuio

42. Para estes testes usamos ferramentas e metodologias comuns e reconhecidas no mundo do Linux 43. No existe padro absoluto mas os valores relativos encontrados podem mostrar as diferenas entre distribuies, desde que submetidos aos mesmos procedimentos de teste 44. Linux Standard Base

  • Projeto de compatibilizao dos aspectos das distribuio Linux, de forma criar um padro para aplicaes que rodaro em qualquer distribuio

45. Oferecem aplicaes compatveis LSB para avaliao de distribuies candidatas 46. Baterias de testes do ambiente para suportar aplicaes Linux comuns (Apache, etc) 47. Linux Test Project Coleo de testes especficos de determinados aspectos

    • Funcionalidades bsicas - comandos
  • 48. kernel

49. I/O 50. Network 51. Benchmarking- Roteiro

  • Trata-se de mensurar aspectos definidos de um sistema computacional para fins de comparao

52. No deve levar em conta parmetros subjetivos ou como reputao do distribuidor ou marketing 53. Identificar os objetivos dos testes 54. Descrio completa do ambiente e procedimentos 55. Isolar uma varivel 56. Verificar os resultados embas-los 57. Se til, compartilhar os resultados na comunidade Linux 58. No proceder posteriores comparaes com outros OSs 59. Tipos deBenchmarking

  • Sintticos
  • Avaliao de um componenteespecfico do sistema computacional. No do, em conjunto, uma medida do desempenho real de um sistema

60. Exemplo: Sequncia de instrues FPU (no o caso tpico em aplicaes reais)

  • De aplicao
  • Avaliao da plataforma apliao+SO+Hardware

61. Especficos para um tipo de aplicao

  • Low-level testar diretamente algum item de hardware (sempre sintticos)

62. High-level testar o conjunto hardware, drivers e SO (podem ser sintticos ou de aplicao) 63. Algumas Ferramentas de Teste no Linux

  • NetPIPE Suporte de rede

64. LMBench low-level 65. Netperf - Rede 66. XBench Sistema de vdeo 67. UNIX Bench 68. NetBench 7.0 69. SPEC - pago 70. SGI kernel profiler kernprof 71. AIM 72. Bonnie I/O 73. Ferramenta NetPIPE

  • Avalia o conjunto hardware de rede + driver + implementao da pilha de protocolos de rede

74. Permite o teste de vrios tipos de protocolos em rede (MPI, PVM, TCP) 75. Uso de procedimento de envio de mensagens de taanhos variveis 76. No nosso caso somente o teste com TCP ser feito para avaliar a performance da pilha TCP/IP pura implementada no sistema Linux 77. Trabalha realizando uma srie de testesping-pongentre dois servidores usando mensagens de tamanho varivel para revelar particularidades e limitantes, alm de envio de dados emstreaming 78. Alteraes nos Dispositivos

  • Objetivo: avaliar a dificuldade em se inserir, retirar ou alterar o conjunto de dispositivos na distribuio
  • Ativao de hardware que no foi configurado por default na instalao (Interface Giga Ethernet)

79. Instalao de novo hardware (Placa wireless) 80. Retirada de um processador 81. Retirada/insero de memria RAM no sistema 82. Servidores Sendo Testados 14 - Infoserver 3251 2 x Xeon 03 - Infoserver 3030 2 x PIII 07 - Infoserver 6480 2 x Itanium 08 - Infoserver 5451 2 x Xeon 83. Hardware de Rede

  • Infoserver 3030:
  • Ethernet controller Intel Corp. 82557/8/9 [Ethernet Pro 100] - onboard

84. Driver:eepro100

  • Infoserver 5451
  • Intel 82557/8/9 Ethernet PRO 100- onboard

85. Driver:e100 86. Intel 82544GC Gigabit Ethernet Controller- onboard 87. Driver:e1000

  • Infoserver 3251
  • Dual-channel Intel 10/100/1000 82546EB Gigabit Ethernet Controller- onboard

88. Driver:e1000 89. Hardware de Rede Interface LAN Wireless -Intel PRO/Wireless 2011B LAN PCI Adapter

    • Chipset:Harris Semiconductor Prism 2.5 Wavelan chipset
  • 90. No existe driver linux fornecido pelo fabricante

91. J presente suporte no kernel 2.4.18 em mdulo ou parte do kernel 92. Configurao mdia a difcil (depende de conhecimentos de redes wireless e leitura da documentao do driver) 93. Instalaes do Linux Perfil tcnico

    • Grande conhecimento de hardware (motherboards, controladoras de disco IDE e SCSI, interfaces de rede, etc)
  • 94. Experincia mdia a alta em linux

95. Tarefa no-trivial 96. Testes de Rede

  • Resultados de rede para o servidor Infoserver 3030 (conjunto completo de dados das 4 distribuies)

97. NetPIPE 3.5 realizando o testetcp 98. Variao do contexto de teste

  • Buffers de transmisso e recebimento

99. Memria 100. Nmero de processadores 101. Mdulo / parte do kernel No sero analisados itens como:

  • IPv6

102. Roteamento 103. Firewalling 104. Servios de rede 105. InfoServer 3030 Throughput (Mbps) / Tamanho de Mensagem (bytes) - Modo Bloco - Buffers de 4086, 16384 e 32768 Bytes Dispositivo de rede: Ethernet controller: Intel Corp. 82557/8/9 [Ethernet Pro 100] 106. InfoServer 3030 Assinatura de Rede ( Throughput (Mbps) / Tempo (seg)) - Modo Bloco - Buffer de 4086 Bytes Dispositivo de rede: Ethernet controller: Intel Corp. 82557/8/9 [Ethernet Pro 100] 107. InfoServer 3030 Assinatura de Rede ( Throughput (Mbps) / Tempo (seg)) - Modo Bloco - Buffer de 16384 Bytes Dispositivo de rede: Ethernet controller: Intel Corp. 82557/8/9 [Ethernet Pro 100] 108. InfoServer 3030 Assinatura de Rede ( Throughput (Mbps) / Tempo (seg)) - Modo Bloco - Buffer de 32768 Bytes Dispositivo de rede: Ethernet controller: Intel Corp. 82557/8/9 [Ethernet Pro 100] 109. InfoServer 3030 Tamanho de Mensagem(bytes) / Tempo (seg)) - Modo Bloco - Buffer de 4086 Bytes Dispositivo de rede: Ethernet controller: Intel Corp. 82557/8/9 [Ethernet Pro 100] 110. InfoServer 3030 Tamanho de Mensagem(bytes) / Tempo (seg)) - Modo Bloco - Buffer de 16384 Bytes Dispositivo de rede: Ethernet controller: Intel Corp. 82557/8/9 [Ethernet Pro 100] 111. InfoServer 3030 Tamanho de Mensagem(bytes) / Tempo (seg)) - Modo Bloco - Buffer de 32768 Bytes Dispositivo de rede: Ethernet controller: Intel Corp. 82557/8/9 [Ethernet Pro 100] 112. InfoServer 3030 Throughput (Mbps) / Tamanho de Mensagem (bytes) - Modo Streaming Buffers de 4086, 16384 e 65535 bytes Dispositivo de rede: Ethernet controller: Intel Corp. 82557/8/9 [Ethernet Pro 100] 113. Teste Compilao de Kernel

  • Do idia de forma superficial docomportamento de aplicaes no sistema

114. Tempo medido:

    • make bzImage gerao do kernel
  • 115. make modules gerao dos mdulos do kernel (maior parte)
  • Ainda no concludos

116. Testes de Validao

  • praticamente impossvel avaliar todos os itens levando em conta a diversidade dos sistemas Linux

117. Conjunto conhecido de ferramentas para averiguao de aspectos de sistemas Linux (Linux Test Project) 118. Itens que no passarem so checados 119. Anlises Preliminares

  • Suporte de rede das distribuies (drivers)

120. Efeito dos buffers 121. Throughput mximo 122. Efeito de mudana de memria e nmero de processadores a ver 123. Efeitos da operao dos drivers como mdulos ou como parte do kernel a ver 124. Observaes

  • Testes com configuraes otimizadas?
  • Dificuldades
  • Laboratrio (energia, espao, rede, etc)

125. Mquinas de rack (demora, fixas nos racks, etc) 126. Sugestes para Trabalho Posterior

  • Testes com NFS e servidores de rede

127. Averiguao do suporte Linux para gerenciamento do servidor 128. Averiguao do suporte default de cada distribuio para segurana do sistema 129. A mquina implementa hardware para gerenciamento prprio: temperaturas, velocidades de ventiladores e carga nos BUSes (ChipSahaleeBaseboard Management Controller- BMC) 130. Testes com aplicao

  • Servios Web, MAIL, Java, SSL, etc

131. DB 132. software para Telco