Este artigo tem como objetivo demonstrar uma instalação de um servidor RedHat Enterprise Server para suportar o servidor aplicacional WebLogic da Oracle/Bea.
Particionamento dos discos / 5giga /applications 20giga /domains 20giga /log 30giga /products 20giga /tmp 2giga /usr 5giga Swap 8giga (Existe espaço em disco disponível caso seja necessário o redimencionamento de diretórios) Mudando a permissão dos arquivos com SUID, exceto alguns : As configurações abaixo visão a segurança do servidor Linux # /sbin/pwdb_chkpwd # /sbin/unix_chkpwd # /sbin/pam_timestamp_check # /bin/su # /usr/bin/passwd # /usr/bin/sudo # /usr/bin/crontab find / ( -perm -4000 -o -perm -2000 ) -mount -type f -print > /tmp/suids sed -e ''''''''''''''''//sbin/pwdb_chkpwd/ d'''''''''''''''' -e ''''''''''''''''//sbin/unix_chkpwd/ d'''''''''''''''' -e ''''''''''''''''//sbin/pam_timestamp_check/ d'''''''''''''''' -e ''''''''''''''''//bin/su/ d'''''''''''''''' -e ''''''''''''''''//usr/bin/passwd/ d'''''''''''''''' -e ''''''''''''''''//usr/bin/sudo/ d'''''''''''''''' -e ''''''''''''''''//usr/bin/crontab/ d'''''''''''''''' /tmp/suids > /tmp/suids2 for arquivo in $(cat /tmp/suids2); do chmod -s $arquivo done rm /tmp/suids /tmp/suids2 Mudando a permissão dos compiladores chmod go-rwx /usr/bin/gcc chmod go-rwx /usr/bin/cc Configurando Huge Pages echo 512 > /proc/sys/vm/nr_hugepages vm.nr_hugepages=512 sysctl -p mkdir /mnt/hugepages mount -t hugetlbfs nodev /mnt/hugepages chmod 777 /mnt/hugepage vi /etc/sysctl.conf Baseando-se que as JVM`s trabalharão com 4giga de RAM (1 JVM) cat /proc/meminfo HugePages_Total: 5 HugePages_Free: 5 Hugepagesize: 2048 kB Cálculo do memlock para adicionar no /etc/security/limits.conf, utilizei o seguinte cálculo (4096*512*2) = 4194304. vi /etc/security/limits.conf ( editar como root) weblogic hard memlock 4194304 weblogic soft memlock 4194304 Parando os serviços desnecessários As configurações abaixo visão o stop dos serviços desnecessários ao ambiente do cliente service gpm stop service apmd stop service atd stop service xinetd stop service sendmail stop service cups stop service iptables stop service ip6tables sto Retirando do startup os serviços desnecessários chkconfig --level 12345 cups off chkconfig --level 12345 sendmail off chkconfig --level 12345 xinetd off chkconfig --level 12345 gpm off chkconfig --level 12345 apmd off chkconfig --level 12345 atd off chkconfig --level 12345 iptables off chkconfig --level 12345 ip6tables off Criação de usuário e grupo para suportar o ambiente WebLogic: groupadd -g 500 bea mkdir -p /bea useradd -g bea -d /bea/ /home -c "Bea " weblogic chown -R weblogic:bea /bea /domains echo ''''''''''''''''bea!@#$ | passwd --stdin weblogic As configurações abaixo visão a segurança do servidor linux como também o ganho de performance. grep ^net.ipv4.tcp_syncookies=1 /etc/sysctl.conf >/dev/null 2>&1 if test $? = 1; then echo ''''''''''''''''net.ipv4.conf.all.forwarding=0 net.ipv4.conf.all.accept_source_route=0 net.ipv4.conf.all.accept_redirects=0 net.ipv4.conf.all.log_martians=1 net.ipv4.conf.all.rp_filter=1 net.ipv4.icmp_echo_ignore_broadcasts=1 net.ipv4.tcp_syncookies=1 net.ipv4.icmp_ignore_bogus_error_responses=1 net.ipv4.ip_local_port_range = 16384 65535 net.ipv4.ipfrag_high_thresh = 512000 net.ipv4.ipfrag_low_thresh = 446464 net.ipv4.tcp_mem = 688128 737280 786432 net.ipv4.tcp_wmem = 393216 1572864 12582912 net.ipv4.tcp_rmem = 1179648 4718592 37748736 net.ipv4.tcp_max_tw_buckets = 2000000 net.ipv4.tcp_max_syn_backlog = 8192 kernel.msgmni = 1024 kernel.sem = 1000 32000 32 512 kernel.shmmax = 2147483648 kernel.msgmax = 210000 kernel.sysrq = 0 kernel.core_uses_pid = 1 fs.file-max = 65535 vm.bdflush = 100 1200 128 512 500 6000 500 0 0 vm.kswapd = 1024 32 16 vm.page-cluster = 16 vm.pagetable_cache = 35 60 net.core.rmem_max = 16777216 net.core.rmem_default = 16777216 net.core.wmem_max = 6291360 net.core.wmem_default = 6291360 net.core.optmem_max = 688128 net.core.hot_list_length = 12288 net.ipv4.tcp_fin_timeout=10 '''''''''''''''' >> /etc/sysctl.conf sysctl -p Como não utilizamos o ipv6 é aconselhável desabilitar este recurso, já que existem diversos problemas relatados junto ao suporte da BEA quanto ao multicast v6. /etc/sysconfig/network-scripts/ifcfg-eth0 from: IPV6INIT=yes IPV6_AUTOCONF=yes To IPV6INIT=no IPV6_AUTOCONF=no /etc/sysconfig/network from: NETWORKING_IPV6=yes to NETWORKING_IPV6=no Altere o arquivo /etc/mpdeprobe.conf From: alias net-pf-10 on alias ipv6 on To: alias net-pf-10 off alias ipv6 off Auto-negociação de interfaces de Rede junto com redes ciscos em Ambientes Clusterizados: Caso o seu ambiente Weblogic esteja configurado como Cluster é importante avaliar com o Network Administrator as configurações de Rede em específico, auto-negociação. Aconselhamos desabilitar este recurso na interface de Rede do RedHat. /etc/sysconfig/network-scripts/ifcfg-eth0 ETHTOOL_OPTS="speed 1000 duplex full autoneg off" Tamanho e expiração do password sed ''''''''''''''''/^PASS_MIN_LEN/c PASS_MIN_LEN 8 /^PASS_MAX_DAYS/c PASS_MAX_DAYS 30 '''''''''''''''' /etc/login.defs > tmp.01 mv tmp.01 /etc/login.defs Alteração no /etc/security/limits.conf echo ''''''''''''''''weblogic soft nofile 50000 weblogic hard nofile 150000 weblogic soft nproc 20000 weblogic hard nproc 50000'''''''''''''''' >> /etc/security/limits.conf Alteração do pam.d # vi /etc/pam.d/login [Adicionar a linha] session required /lib64/security/pam_limits.so # vi /etc/pam.d/sshd [Adicionar a linha] session required /lib64/security/pam_limits.so Alteração do sshd_config Vi /etc/ssh/sshd_config UsePAM yes :wq! Executar o commando service sshd restart