Arquivo da categoria: Dicas

RHN Satellite « Luc de Louw’s Blog

Amigos que precisam executar a migração do Satellite 5.5 para o 6, o Blog do Luc de Louw explica com detalhes os passos, não achei interessante escrever algo neste primeiro momento.

Abraços.

RHN Satellite « Luc de Louw’s Blog.

Anúncios

Melhor How-to para entender definitivamente o Iptables.

O Iptables parece complicado a primeira vista no entanto o seu processo de funcionamento é bastante lógico, compreendendo seu fluxo fica mais fácil evoluir na construção de regras.

Visite o link para este How-to: http://fedorasolved.org/Members/kanarip/iptables-howto

Abraços.


Da virtualização a Aplicações Distribuídas. (Docker)

Neste post faremos uma abordagem sobre o Docker, o Docker é uma plataforma aberta para desenvolvedores e Sys-Admins instalarem, configurarem e executarem aplicações de forma indiferente ao ambiente, seja ele um Laptop, um Data Center ou numa Cloud.

O Docker é dividido em duas partes que cito abaixo:

– Docker Engine: Um conjunto de ferramentas leve e portátil.

– Docker Hub: Um serviço em Cloud para compartilhar aplicações e automatizar as tarefas.

O Docker permite que as aplicações sejam facilmente preparadas com seus devidos componentes e elimina os problemas de compatibilidade e convergência entre ambientes, sejam eles Desenvolvimento, QA ou Produção.

Como resultado os colaboradores podem embarcar rapidamente a mesma aplicação sem alterá-las entre Laptops, Data Centers ou qualquer Cloud.

Palavras de Solomon Hykes, Fundador e CTO da Docker.

Ok, Como o Docker se diferencia da Virtualização?

Containers vs. Virtualization

Containers vs. Virtualization

Máquinas Virtuais

Cada aplicação que é virtualizada inclui não somente a aplicação na qual pode conter dezenas de MB’s além de todo o Sistema Operacional na qual poderá ter centenas de MB’s.

Docker

O Docker Engine compreende apenas a aplicação suas dependências. Ele executa como um processo isolado no userspace do sistema operacional do host, compartilhando o kernel e outros  containers. Desta forma, ele aproveita as isolações de recursos e benefícios da alocação de VMs mas muito mais portável e eficiente.

O Docker já é bem utilizado por empresas tais como Ebay e Spotify.

Para usuários do Fedora a instalação é bem simples, para isso execute os comandos abaixo (Tomarei como exemplo a instalação da imagem do Owncloud rodando no Fedora):

[root@host ~]# yum install docker-io

Para iniciar o serviço execute o comando abaixo.

[root@host ~]# systemctl start docker.service

Execute o comando a seguir para permitir que o serviço inicie automaticamente após um reboot.

[root@host ~]# systemctl enable docker.service

Agora, vamos verificar se o serviço está ativo executando o comando abaixo.

[root@host ~]# systemctl status docker.service
docker.service – Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; static)
Active: active (running) since Mon 2014-09-01 17:51:34 BRT; 4s ago
Docs: http://docs.docker.com
Main PID: 21439 (docker)
CGroup: /system.slice/docker.service
└─21439 /usr/bin/docker -d -H fd:// –selinux-enabled

Sep 01 17:51:34 host docker[21439]: [d38cce51.init_networkdriver()] creating new bridge for docker0
Sep 01 17:51:34 host docker[21439]: [d38cce51.init_networkdriver()] getting iface addr
Sep 01 17:51:34 host docker[21439]: [d38cce51] -job init_networkdriver() = OK (0)
Sep 01 17:51:34 host docker[21439]: Loading containers: ……………………: done.
Sep 01 17:51:34 host docker[21439]: [d38cce51.initserver()] Creating pidfile
Sep 01 17:51:34 host docker[21439]: [d38cce51.initserver()] Setting up signal traps
Sep 01 17:51:34 host docker[21439]: [d38cce51] -job initserver() = OK (0)
Sep 01 17:51:34 host docker[21439]: [d38cce51] +job acceptconnections()
Sep 01 17:51:34 host docker[21439]: [d38cce51] -job acceptconnections() = OK (0)
Sep 01 17:51:34 host systemd[1]: Started Docker Application Container Engine.

Crie uma conta no site do Docker: https://hub.docker.com/ antes de executar os comandos a seguir.

Utilize as credenciais criadas no site do Docker Hub para permitir transações entre o serviço instalado e o Docker Hub de acordo com o comando a seguir.

[root@host ~]# docker login -e “endereco@dominio.com” -u “username” -p “password”

É possível listar as imagens disponíveis no Docker Hub executando o comando abaixo.

[root@host ~]# docker image -a

Após localizar a imagem a ser baixada do Hub execute o comando a seguir. (No caso eu escolhi a imagem fedora/owncloud)

Para baixar uma imagem do Hub após estar registrado utilize o comando abaixo:

[root@host ~]# docker pull fedora/owncloud

Enfim vamos agora executar o conteúdo de nossa imagem com o comando a seguir (Lembre que as imagens não são instaladas, são diretamente executadas)

[root@host ~]# docker run -d -p 443:443 fedora/owncloud

Abra seu browse e utilize o seguinte endereço: http://localhost/owncloud para configurar o Owncloud.

Para maiores detalhes acesse o site do Docker e verifique os detalhes de cada imagem gerada.

É possível gerar suas próprias imagens, o site disponibiliza diversas documentações para fazer seu próprio build.

Bem, por enquanto é isso.


SSSD: Bug utilizando Criptografia TLS em implementações (LDAP+Kerberos+GSSAPI).

Informação Importante!

A implementação do SSSD (LDAP+Kerberos+GSSAPI) não requer criptografia TLS para conexões TLS ou SSL, foram detectados problemas ao se configurar a conexão LDAP+TLS+GSSAPI tendo em vista que o mecanismo do GSSAPI falha ao tentar estabilizar o contexto de segurança da negociação quando um conexão TLS vier a falhar.

Referências: https://tools.ietf.org/html/rfc5056


Configurando Switch Extreme Summit x650 Series.

Utilizando o protocolo LACP (Link Aggregation Control Protocol).

A Switch Extreme demonstrou certa facilidade para configurar este protocolo, para quem não sabe este protocolo permite aumentarmos a capacidade de banda agrupando duas ou mais portas para que se comportem como uma apenas.

A Extreme apelida este recurso com um nome mas isso não muda seu funcionamento, eles o chamam de Load Sharing e para ajudar a entender melhor segue uma imagem de um agrupamento de portas:

summit

Na prática fica assim:

enable sharing <master_port> grouping <portlist>

disable sharing <master_port>

Exemplo:  enable sharing 9 grouping 9-12

Lembre que quando estiver usando o Load Sharing você deve sempre referenciar a porta master do grupo load-sharing (no exemplo porta 9).

Criando VLANs

Para criar VLANs a Extreme também não resolveu complicar, no caso o que precisamos saber é se a VLAN a ser criada precisará ser propagada para outras switchs.

Caso positivo nós devemos “taggear” os segmentos pois somente assim outras switchs saberão o que fazer com os segmentos.

Caso negativo nós aplicamos o “untagged” que apenas aplica o tag VLAN aos pacotes entrantes.

Na prática vemos abaixo.

– Com tag:

create vlan sales

config sales tag 120

config sales add port 1-3 tagged

– Sem tag:

create vlan it

config sales tag 140

config sales add port 4-7 tagged

Listando as VLANs:

show vlan all

Por hoje é só!

Um abraço a todos.


389/RHDS memberOf plugin

Olá pessoal pra quem ainda não sabe o 389/Red Hat Directory Server (RHDS) tem o plugin “memberOf” (começando na versão Fedora DS 1.1.1, com grandes melhorias a partir de 389-DS 1.2.7, e desde o RHDS v8.1), que oferece a mesma funcionalidade como o recurso “memberOf” do Active Directory.

O plugin memberOf está desativado por padrão tanto no 389 quanto no RHDS. Uma vez ativado ele irá mostrar os valores de dn de todos os grupos como uma entrada no atributo memberOf. Ele funciona adicionando um atributo e o valor de entrada automaticamente, quando eles são adicionados a um grupo. Diferente da funcionalidade similar “isMemberOf” da última versão do Sun/Oracle Directory Server Enterprise Edition, memberOf retorna como um atributo de usuário padrão e, portanto, não precisa ser especificado explicitamente em uma pesquisa.

Pelo fato de ser um atributo standard, para adicionar o memberOf a uma entrada, pelo menos um objectclass deve ser incluido como um atributo permitido. O novo esquema 389/RHDS inclui a classe de objeto inetUsr, que permite memberOf.

[me@emyhost ~]$ ldapsearch -x -LLL -h localhost -D "cn=directory manager" 
-W -b "dc=example,dc=com" -s sub "uid=me"
Enter LDAP Password: 
dn: uid=me,ou=People,dc=example,dc=com
givenName: My
sn: Test
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
objectClass: inetUser
uid: me
* * *
memberOf: cn=Directory Administrators,dc=example,dc=com
memberOf: cn=Staff,ou=Groups,dc=example,dc=com
memberOf: cn=Users,ou=Groups,dc=example,dc=com

Para ativar o plugin, usar o console gui ou simplesmente alterar o valor de “nsslapd-pluginEnabled” em “cn=memberOf Plugin, cn=plugins, cn=config” de “off” para “on”. Se o diretório usa “uniquemember” em vez de “membro” como o atributo de membro do grupo, a primeira entrada deve ser substituída por este último na “memberofgroupattr”. Aqui estão algumas LDIFs para fazer o trabalho (aplicar usando ldapmodify):

dn: cn=memberOf Plugin,cn=plugins,cn=config
changetype: modify
replace: nsslapd-pluginenabled: on
-
replace: memberofgroupattr
memberofgroupattr: uniquemember

O plugin é então ativado após reiniciar o serviço de diretório.

Para modificar membros de grupos existentes (como um plugin do post-operation ele irá adicionar o atributo memberOf apenas para os membros do grupo recém-adicionados), o script de correção-memberof.pl está incluido. Ele pode ser encontrado em /usr/lib64/dirsrv/slapd-[nomedainstância]. A sintaxe fica assim:

fixup-memberof.pl -v -D "cn=directory manager" -w - 
 -b "dc=example,dc=com"

O script funciona ajustando o memberOf task no diretório. Isso pode ser feito manualmente, adicionando a seguinte entrada:

dn: cn=example memberof,cn=memberof task,cn=tasks,cn=config
objectclass: extensibleObject
cn:example memberof
basedn: ou=people,dc=example,dc=com
filter: (objectclass=groupofuniquenames)

(use ldapadd, ou ldapmodify com o parametro “-a”)

Referência: http://onemoretech.wordpress.com/2011/11/23/389rhds-memberof-plugin/


Configurando a Foundry FastIron Edge x424.

Após conectar o cabo console ajuste o Minicom ou programa de Terminal e configure a porta serial. Ex.: minicom -s; /dev/ttyS0 9600 8-N-1 Fluxo de Hardware desligado.

Os comandos lembram muito os do Cisco IOS, no caso você deve utilizar os seguintes comandos iniciais:

# enable

# config terminal

O conceito de Vlan Tag difere um pouco do padrão Cisco IOS mas não é difícil de entender, basta entender que no caso da Foundry você precisa dizer se a porta irá se comunicar com hosts ou grupos de hosts que estão transmitindo segmentos tageados ou não, no exemplo abaixo isso fica mais claro.

Imagem

Os comandos necessários para criar uma Vlan estão abaixo:

FESX424 Switch> enable
FESX424 Switch# configure terminal
FESX424 Switch(config)# hostname FESX
FESX424 Switch-A(config)# vlan 2 name NOVAVLAN
FESX424 Switch-A(config-vlan-2)# untag ethernet 1 to 4
FESX424 Switch-A(config-vlan-2)# tag ethernet 25 to 26

FESX424 Switch-A(config-vlan-5)# end
FESX424 Switch-A# write memory

Tenha em mente que o que define a direção dos segmentos são os comandos “untagged e tagged”, de acordo com a foto acima.

Falando um pouco sobre Virtual Routing Interfaces.

Esse recurso traz diversas vantagens no que diz a respeito de uma Switch Layer 2 e Layer 3, graças a poderosa tecnologia “Integrated Switch Routing” ou simplesmente ISR é possível combinarmos domínios de Broadcast Layer 2 com domínios de Broadcast Layer 3 resolvendo assim diversos problemas de Rede.

Seguem comandos abaixo:

FESX424 Router> en
No password has been assigned yet…
FESX424 Router# configure terminal
FESX424 Router(config)# hostname FESX-A

FESX424 Router-A(config)# vlan 2 name NOVAVLAN
FESX424 Router-A(config-vlan-2)# untag e 1 to 4

FESX424 Router-A(config-vlan-2)# router-interface ve1

FESX424 Router-A(config-vlan-2)# interface ve1
FESX424 Router-A(config-vif-1)# ip address 1.1.2.1/24

FESX424 Switch-A(config-vif-1)# end
FESX424 Switch-A# write memory

Enfim acredito que isso ajude bastante na memória do SysAdmin antes de configurar uma Foundry.

Até mais.