O documento descreve a história do SunOS e do Solaris, sistemas operacionais da Sun Microsystems. O SunOS era usado em estações de trabalho e servidores até a versão 4.1.5, quando foi substituído pelo Solaris em 1991, desenvolvido em parceria com a AT&T. O documento também discute o OpenSolaris de código aberto, lançado em 2008, e recursos do Solaris como DTrace, Zones e ZFS.
1. Solaris
SunOS
1
segunda-feira, 16 de novembro de 2009
2. Histórico - SunOS
• Sistema operacional das estações de
trabalho e servidores da Sun;
• O nome SunOS é frequentemente usado
até as versões 4.1.5;
• Até esta versão era baseado em Unix BSD.
2
segunda-feira, 16 de novembro de 2009
3. Histórico - Solaris
• Em 1987, a AT&T e a Sun anunciaram que
iriam colaborar num projeto para unir as
mais populares variações de Unix (BSD,
System V e Xenix);
• Surgindo em 1991 o Solaris 2 (ou SunOS
5).
3
segunda-feira, 16 de novembro de 2009
4. Histórico OpenSolaris
• Baseado no Solaris com a licença CDDL;
• Planos para lançar o OpenSolaris
iniciaram em 2004;
• A parte incial aberta do Solaris foi a
ferramenta DTrace;
• Algumas partes do Solaris ainda está
disponível somente em binário.
4
segunda-feira, 16 de novembro de 2009
5. Histórico OpenSolaris
• Em 19 de Março de 2007, a Sun anunciou
a entrada de Ian Murdock, fundador da
Debian, para gerenciar o Projeto Indiana;
• Projeto Indiana: Um esforço para
produzir um OpenSolaris com GNOME e
ferramentas GNU e em adição um
sistema de gerenciamento de pacotes em
rede.
5
segunda-feira, 16 de novembro de 2009
6. Histórico OpenSolaris
• Em 5 de Março de 2008 foi lançado o
OpenSolaris 2008.05, como Live CD;
• Usa GNOME como interface gráfica;
• Inclue um GUI para ZFS snapshots,
conhecido como Time Slider, que provê
funcionalidade semelhante ao Time
Machine do Mac OS X.
6
segunda-feira, 16 de novembro de 2009
7. Licença CDDL
COMMON DEVELOPMENT AND DISTRIBUTION LICENSE
7
segunda-feira, 16 de novembro de 2009
8. CDDL
• Baseado na Mozilla Public License, versão
1.1 ("MPL");
• Enviada para aprovação em Dezembro de
2004 e aprovada em Janeiro de 2005;
• Considerada a SPL versão 2;
8
segunda-feira, 16 de novembro de 2009
9. Outros Projetos da Sun em
CDDL
• OpenSolaris;
• NetBeans;
• GlassFish;
9
segunda-feira, 16 de novembro de 2009
10. Características
• Escalabilidade, especialmente em arquitetura
SPARC (de propriedade da Sun);
• Certificado pelo Single Unix Specification;
10
segunda-feira, 16 de novembro de 2009
11. Características
• DTrace: análise de resolução de problemas de
performance, em tempo real;
• Solaris Containers: ambientes isolados para a
execução de softwares;
• ZFS: sistema de arquivos de administração
simplificada, integridade e grande escalabilidade.
11
segunda-feira, 16 de novembro de 2009
12. DTrace
Dynamic Trace
12
segunda-feira, 16 de novembro de 2009
13. Define DTrace
• Análise/resolução de problemas de
performance, em tempo real;
• Ferramenta, linguagem de programação e
framework de instrumentação;
• Modificando um programa depois que é
carregado na memória;
13
segunda-feira, 16 de novembro de 2009
14. Define DTrace
• Pode ser usado em:
• Ambientes em produção, inclusive com
binários otimizados;
• Userland ou para software a nível de
sistema operacional como o kernel.
14
segunda-feira, 16 de novembro de 2009
15. Linguagem DTrace
• Descrito em Solaris Dynamic Tracing
Guide;
• A linguagem de programação é muito
parecida com C e awk;
15
segunda-feira, 16 de novembro de 2009
16. • Permite que você adicione sondagens
dinamicamente a funções de nível de
usuário;
• O código não requer recompilação,
sinalizadores nem reabrir o programa;
• As sondagens podem ser ativadas
simplesmente chamando o provedor.
16
segunda-feira, 16 de novembro de 2009
17. BEGIN
{
trace("hello, world");
Hello Word }
exit(0);
17
segunda-feira, 16 de novembro de 2009
18. List all
18
segunda-feira, 16 de novembro de 2009
21. ZFS
Zettabyte File System
21
segunda-feira, 16 de novembro de 2009
22. ZFS - simplicidade
“Um dos objetivos do design do ZFS é reduzir o
número de comandos necessários para criar um
sistema de arquivos apropriado.”
“Quando um novo pool é criado, um novo sistema de
arquivos ZFS é automaticamente criado e montado.“
• “A administração do ZFS foi concebida levando-
se em consideração a simplicidade.”
22
segunda-feira, 16 de novembro de 2009
23. Exemplo ZFS
Criação de um Pool
23
segunda-feira, 16 de novembro de 2009
24. ZFS - Pool
Os sistemas de arquivos ZFS crescem todos os sistemas de arquivos ZFS de um pool
automaticamente dentro do espaço compartilham o armazenamento disponível no
alocado para o pool de armazenamento pool
• “O ZFS está baseado no conceito de
armazenamento por pool.”
24
segunda-feira, 16 de novembro de 2009
25. Tradicional x Pool
Tradicional ZFS Pool
25
segunda-feira, 16 de novembro de 2009
26. Exemplo ZFS
Adição de um dispositivo
26
segunda-feira, 16 de novembro de 2009
27. Substituição
Substituição de um
Dispositivo
27
segunda-feira, 16 de novembro de 2009
28. Pontos de Montagem
• Não requer a edição do arquivo /etc/
vfstab (ou /etc/fstab);
• No momento da criação, além de ser
formatado e montado ele permanecerá
montado ao reiniciar.
28
segunda-feira, 16 de novembro de 2009
29. Comandos ZFS
Pools Ativos
29
segunda-feira, 16 de novembro de 2009
30. Comandos ZFS
Estado
30
segunda-feira, 16 de novembro de 2009
31. Comandos ZFS
Estado
31
segunda-feira, 16 de novembro de 2009
32. Solaris Containers
“Sun's operating system virtualization technique”
32
segunda-feira, 16 de novembro de 2009
33. Container e Zonas
• Consiste de técnicas que provêem
gerenciamento e isolação do sistema
operacional;
• Instâncias isoladas do Solaris.
33
segunda-feira, 16 de novembro de 2009
34. Nível de Isolamento
• Nome de host e endereço ip;
• Sistema de arquivos próprio;
• Alocação de recursos (como RAM, swap,
processos por CPU);
• Cada zona possui um ambiente root
próprio.
34
segunda-feira, 16 de novembro de 2009
35. Detalhes Técnicos
• Master Zone - zona padrão de todo o
sistema operacional;
• Requer 85MB de espaço em disco 40MB
de memória;
• Teoricamente mais de 8.000 zonas.
35
segunda-feira, 16 de novembro de 2009
36. Principais utilizações
• Criação de ambientes isolados para
desenvolvedores para testes de
aplicações;
• Configuração segura de vários serviços
rodando em zonas diferentes;
36
segunda-feira, 16 de novembro de 2009
37. Comandos
• zonecfg - para configurar;
• zoneadm - para administrar, inclue
subcomandos: install, boot, reboot, halt,
shutdown;
• zlogin - para logar na zona;
• Alguns comandos como o ps incluem a
opção -z (ou -Z) para especificar uma
zona.
37
segunda-feira, 16 de novembro de 2009
38. Estados
• Configured: configuração feita e completa;
• Incomplete: transitório durante a (des)instalação;
• Installed: os pacotes foram instalados;
• Ready: a plataforma virtual está pronta;
• Running: boot feito com sucesso;
• Shutting down: está em processo de desligamento;
• "Down": completamente desligada.
38
segunda-feira, 16 de novembro de 2009
39. Control+C; Control+V
• http://sun.com/ e http://br.sun.com/
• http://opensolaris.com/
• http://www.unix.org/what_is_unix/single_unix_specification.html
• http://www.eall.com.br/blog/?p=45
• http://www.slideshare.net/marbore/solaris-dtrace-resource-
manager-and-zones-presentation
• http://www.mactech.com/articles/mactech/Vol.23/23.11/
ExploringLeopardwithDTrace/index.html
39
segunda-feira, 16 de novembro de 2009
40. • Dmitry Rocha
• Eduardo Afonso
• Jayro Alves
• Manoel Eduardo
• Miller Martis
40
segunda-feira, 16 de novembro de 2009