[FUG-BR] jail com vimage carregando no boot

Marcelo Gondim gondim em bsdinfo.com.br
Sábado Agosto 11 09:39:25 BRT 2012


Em 10/08/2012 17:27, Leonardo Augusto escreveu:
> Legal o artigo Marcelo, eu consegui por o lo0 no ezjail la com o
> 127.0.0.1, porem apenas um jail aceitava isso,
> eu colquei nos na lista de ips do jail os dois <ip real>, 127.0.0.1,
> aí no ifconfig dentro da jail aparece o ip do lo0.
> Mas ainda em o problema do ports, que ezzicado nao deixa voce mecher
> no jail a nao ser pelo update dele,
> entao aboli o ezjail e vou fazer os jails pela maneira default.
>
> Agora teu artigo ta meio confuso pra mim, pois tem TROCENTAS
> interfaces, so consegui identificar a lo0 ali no meio,
> alias, pra que ela serve.. as outras nao entendi pq clonar e bridge e
> sei la o que :)

E ae Leonardo carabina! hahahahah
Porque pra usar o vimage temos que fazer uso de bridge com a epair. :)

> Ficaria mais facil de entender se tivesse o ifconfig com as interfaces
> e seus ips para raciocionar sobre.
> Olhando pro ifconfig do meu server entao fiqueis mais perdido ainda,
> veja que tem um tal de lagg que pega todos os ips,

No seu caso as laggs são pra fazer link aggregation que é muito usado 
para quando você que ter mais banda. Vamos dizer que você tenha um link 
de mais de 1Gbps e não quer gastar uma grana em equipamentos de 10Gbps 
que ainda são bem caros, aí você coloca 2 interfaces de 1Gbps e faz um 
link aggregation com elas.  :)

http://www.bsdinfo.com.br/2012/05/12/link-aggregation-a-solucao-para-nao-usar-10gbe-ainda/

> o outro servidor nao tem esse lag.. isso é coisa do datacenter para
> colocar tudo na mesma classe de ip sei la...
>
> veja o meu ifconfig:
>
>
> root em server02:/data/virtual # ifconfig
> igb0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
>          options=401bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,VLAN_HWTSO>
>          ether 00:25:90:2e:16:18
>          inet6 fe80::225:90ff:fe2e:1618%igb0 prefixlen 64 scopeid 0x2
>          nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
>          media: Ethernet autoselect (1000baseT <full-duplex>)
>          status: active
> igb1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
>          options=401bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,VLAN_HWTSO>
>          ether 00:25:90:2e:16:19
>          inet6 fe80::225:90ff:fe2e:1619%igb1 prefixlen 64 scopeid 0x3
>          nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
>          media: Ethernet autoselect (1000baseT <full-duplex>)
>          status: active
> igb2: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
>          options=401bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,VLAN_HWTSO>
>          ether 00:25:90:2e:16:18
>          inet6 fe80::225:90ff:fe2e:161a%igb2 prefixlen 64 scopeid 0x4
>          nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
>          media: Ethernet autoselect
>          status: no carrier
> igb3: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
>          options=401bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,VLAN_HWTSO>
>          ether 00:25:90:2e:16:19
>          inet6 fe80::225:90ff:fe2e:161b%igb3 prefixlen 64 scopeid 0x5
>          nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
>          media: Ethernet autoselect
>          status: no carrier
> pflog0: flags=0<> metric 0 mtu 33152
>          nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
> pfsync0: flags=0<> metric 0 mtu 1500
>          nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
>          syncpeer: 0.0.0.0 maxupd: 128
> enc0: flags=0<> metric 0 mtu 1536
>          nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
> lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
>          options=600003<RXCSUM,TXCSUM,RXCSUM_IPV6,TXCSUM_IPV6>
>          inet6 ::1 prefixlen 128
>          inet6 fe80::1%lo0 prefixlen 64 scopeid 0xa
>          inet 127.0.0.1 netmask 0xff000000
>          nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
> lagg0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
>          options=401bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,VLAN_HWTSO>
>          ether 00:25:90:2e:16:18
>          inet 10.51.38.130 netmask 0xffffffc0 broadcast 10.51.38.191
>          nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
>          media: Ethernet autoselect
>          status: active
>          laggproto lacp lagghash l2,l3,l4
>          laggport: igb2 flags=0<>
>          laggport: igb0 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>
> lagg1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
>          options=401bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,VLAN_HWTSO>
>          ether 00:25:90:2e:16:19
>          inet 50.97.114.188 netmask 0xff000000 broadcast 50.255.255.255
>          inet 50.97.114.189 netmask 0xff000000 broadcast 50.255.255.255
>          inet 50.97.114.190 netmask 0xff000000 broadcast 50.255.255.255
>          inet 50.97.114.191 netmask 0xff000000 broadcast 50.255.255.255
>          inet 50.97.114.192 netmask 0xff000000 broadcast 50.255.255.255
>          inet 50.97.114.193 netmask 0xff000000 broadcast 50.255.255.255
>          inet 50.97.114.194 netmask 0xff000000 broadcast 50.255.255.255
>          inet 50.97.114.195 netmask 0xff000000 broadcast 50.255.255.255
>          inet 184.173.196.20 netmask 0xfffffff0 broadcast 184.173.196.15
>          nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
>          media: Ethernet autoselect
>          status: active
>          laggproto lacp lagghash l2,l3,l4
>          laggport: igb3 flags=0<>
>          laggport: igb1 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>
> //------------------------ FIM DO IFCONFIG
> ---------------------------------------------------------------

Pelo que vi eles fizeram uma contingência, eles já criaram as lagg mas 
não estão usando. Porque só quem tem link são as interfaces igb0 e igb1 
aí fizeram:

lagg0 = igb0 + igb2
lagg1 = igb1 + igb3

Provavelmente algo passa por esse equipamento, pelo jeito é um router. 
Aí se precisarem de link maior de 1Gbps nesse equipamento, eles colocam 
mais um cabo na igb2 e igb3 e fecham o lacp com os switches e pimba 
podemos chegar às proximidades dos 2Gbps de link. :)

> O ip externo principal da maquina é o ultimo ali: 184.173.196.20, os
> outros sao ips reais extras na maquina..
>
> Eu quero colocar o jail pra testarmos o iredmail no ip 50.97.114.188,
> agora como fazer isso se é a mesma "interface" pros
> dois ips ?
> Detalhe que na lagg0, tem o ip da rede interna entre os servidores,
> tambem quero colocar esse na jail :)

Bem, primeiro é importante que você tenha acesso físico ao equipamento 
porque esse tipo de coisa pode te derrubar e não voltar, necessitando de 
intervenção. Pelo menos um KVM-IP no equipamento. rsrsrsrs
O bom do FreeBSD é que você pode brincar de lego ahahhaa embora não 
tenha feito essa façanha que vou lhe propor e porque também não sei o 
efeito que isso vai causar ahahahah
Você vai ter montar uma bridge com a lagg1 e uma epair. Vou assumir a 
lagg1 como se fosse uma interface comum tipo uma em1 da vida. Aí ficaria 
algo assim como exemplo:

    hostname="virtsrv.localdomain.net"
    keymap="br275.iso.acc.kbd"
    cloned_interfaces="bridge0 epair0?
    ifconfig_bridge0="inet 50.97.114.188 netmask 255.0.0.0 addm lagg1 up"
    ifconfig_bridge0_alias0="inet 50.97.114.189 netmask 255.0.0.0"
    ifconfig_bridge0_alias1="inet 50.97.114.190 netmask 255.0.0.0"
    ifconfig_bridge0_alias2="inet 50.97.114.191 netmask 255.0.0.0"
    ifconfig_bridge0_alias3="inet 50.97.114.192 netmask 255.0.0.0"
    ifconfig_bridge0_alias4="inet 50.97.114.193 netmask 255.0.0.0"
    ifconfig_bridge0_alias5="inet 50.97.114.194 netmask 255.0.0.0"
    ifconfig_bridge0_alias6="inet 50.97.114.195 netmask 255.0.0.0"
    ifconfig_bridge0_alias0="inet 184.173.196.20 netmask 255.255.255.240"

    ifconfig_lagg1="up"
    ifconfig_epair0a="up"
    defaultrouter="seu_default_router?

    jail_enable="YES"
    jail_v2_enable="YES"
    jail_list=""
    jail_set_hostname_allow="YES"
    jail_socket_unixiproute_only="YES"
    jail_sysvipc_allow="YES"
    jail_list="$jail_list mail"
    jail_mail_name="mail"
    jail_mail_hostname="mail.teste.com.br"
    jail_mail_devfs_enable="YES"
    jail_mail_rootdir="/usr/jail/mail"
    jail_mail_mount_enable="YES"
    jail_mail_fstab="/etc/jails/fstabs/mail"
    jail_mail_vnet_enable="YES"

    jail_mail_exec_prestart0="mount -t devfs devfs /usr/jail/mail/dev"
    jail_mail_exec_prestart1="ifconfig bridge0 addm epair0a"
    jail_mail_exec_earlypoststart0="ifconfig epair0b vnet mail"
    jail_mail_exec_afterstart0="ifconfig lo0 127.0.0.1?
    jail_mail_exec_afterstart1="ifconfig epair0b IP_PUBLICO_PARA_A_JAIL
    netmask 255.255.255.240 up"
    jail_mail_exec_afterstart2="route add default seu_default_router?
    jail_mail_exec_afterstart3="/bin/sh /etc/rc"
    jail_mail_exec_poststop0="ifconfig bridge0 deletem epair0a"


Aí você altera acima pra ficar como você gostaria.
Meio louco!!! rsrsrsrs
Até aqui tudo bem?


>
>
> #----------------------------------------------------
> jail_enable="yes"
> jail_v2_enable="YES"
> jail_set_hostname_allow="YES"
> jail_socket_unixiproute_only="YES"
> jail_sysvipc_allow="YES"
>
> jail_list="mail"
>
> jail_mail_name="mail"
> jail_mail_rootdir="/data/virtual/mail/"       # Jail's root directory
> jail_mail_hostname="mail.servidor.com.br" # Jail's hostname
> jail_mail_ip="50.97.114.188"                   # Jail's IP number
>
> jail_mail_exec="/bin/sh /etc/rc"          # command to execute in jail
> jail_mail_fstab="/etc/jails/fstabs/mail"
> jail_mail_mount_enable="YES"
> jail_mail_devfs_enable="YES"              # mount devfs in the jail
> jail_mail_fdescfs_enable="YES"            # mount fdescfs in the jail
> jail_mail_procfs_enable="YES"             # mount procfs in jail
> jail_mail_fstab=""                        # fstab(5) for mount/umount
> jail_mail_flags="-l -U root"              # flags for jail(8)
> jail_mail_vnet_enable="YES"
>
> jail_mail_exec_prestart0="mount -t devfs devfs /data/virtual/mail/dev"
> jail_mail_exec_prestart1="ifconfig lagg0 create"
> jail_mail_exec_prestart2="ifconfig lagg1 create"
> jail_mail_exec_prestart3="ifconfig lagg0 up"
> jail_mail_exec_prestart4="ifconfig lagg1 up"
> jail_mail_exec_afterstart0="ifconfig lo0 127.0.0.1"
> jail_mail_exec_afterstart1="ifconfig lagg0 10.51.38.130 netmask
> 255.255.255.192 up"
> jail_mail_exec_afterstart2="ifconfig lagg1 50.97.114.188 netmask
> 255.255.255.240 up"
>
>
> Esta certo esse setup acima para o jail que quero criar ?
> Nao entendi direito os passos e relacao entre as coisas...
>
> Quero rodar essa jail aí pra ver se o iredmail funciona...
>
> []´s
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>



Mais detalhes sobre a lista de discussão freebsd