Tabela de conteúdos

NGiNX

Virtual Private Server - VPS, hospedado no Cluster VMware localizado na sala de maquinas do Ponto de Presença da RNP/PoP-CE. Atua como servidor web com Virtual Hosts.

Procedimento para se Incluir um novo site no nginx:

1. Criar as credencias no 1password, deve ficar dentro da pasta nginx > nginx-1.4.6-1ubuntu3 informar somente o nome do site sem o www e sem dominio, certifique-se que a senha possua letras maiusculas e minusculas, números e caracteres especiais

2. Cadastrar o usuário na planilha de controle:

https://docs.google.com/spreadsheets/d/16s-1hU4NUK-rwU9NK2EODLK8aHVL13DNgbz8-uwbphI/edit?usp=sharing

3. Acessar o ns1 e criar o dominio do site apontando para o balanceador

Conforme o exemplo acima o site-exemplo foi adicionado

4. Logar como operador no nginx.ifce.edu.br e executar o comando:

sudo site

O nome do usuário é o mesmo nome do site, no caso do site “www.exemplo.ifce.edu.br” o nome do usuário seria apenas “exemplo” sem aspas Nos demais campos informar o nome completo do responsável pelo site e no campo “Others” informar o endereço de email do responsável. Estas informações devem conter na ficha de solicitação;

5. O usuário deve ser criado nos demais servidores para que não haja problemas de permissão de acesso. Todos os servidores nginx possuem chaves RSA trocadas entre si, portanto, estando logado no nginx.ifce.edu.br basta executar o comando ssh root@nginx-01.ifce.edu.br que o acesso é concedido sem a necessidade de se fornecer uma senha.

Executar o comando sudo site nos servidores:
nginx-01.ifce.edu.br
nginx-02.ifce.edu.br

O responsável pelo Site recebe as credenciais do Servidor NGiNX “primário”, o endereço do host para acesso por ftp não é o endereço do site e sim o endereço do servidor primario, o exemplo abaixo mostra como ficam as credenciais:

#FTP
Host: nginx.ifce.edu.br
Usuário: NOME_DO_SITE
Senha: SENHA_DO_1PASS
Porta: 21

Configurações da VPS

Hostname: nginx.ifce.edu.br
IPv4:200.17.33.47
OS: 14.04.1-LTS-amd64
Username: operador
Passwd: 1Password @ Dominios -> ifce.edu.br -> HP BladeSystem -> nginx
vCPU's: 8
RAM: 8GiB
HDD: 100GiB

Software utilizados pelo serviço

nginx-common-1.4.6-1ubuntu3.1
nginx-extras-1.4.6-1ubuntu3.1
php-apc-4.0.2-2build1
php-pear-5.5.9+dfsg-1ubuntu4.7
php5-5.5.9+dfsg-1ubuntu4.7
php5-apcu-4.0.2-2build1
php5-cli-5.5.9+dfsg-1ubuntu4.7
php5-common-5.5.9+dfsg-1ubuntu4.7
php5-curl-5.5.9+dfsg-1ubuntu4.7
php5-dev-5.5.9+dfsg-1ubuntu4.7
php5-fpm-5.5.9+dfsg-1ubuntu4.7
php5-gd-5.5.9+dfsg-1ubuntu4.7
php5-gmp-5.5.9+dfsg-1ubuntu4.7
php5-intl-5.5.9+dfsg-1ubuntu4.7
php5-json-1.3.2-2build1
php5-ldap-5.5.9+dfsg-1ubuntu4.7
php5-mcrypt-5.4.6-0ubuntu5
php5-mysql-5.5.9+dfsg-1ubuntu4.7
php5-pgsql-5.5.9+dfsg-1ubuntu4.7
php5-readline-5.5.9+dfsg-1ubuntu4.7
php5-sybase-5.5.9+dfsg-1ubuntu4.7
php5-xmlrpc-5.5.9+dfsg-1ubuntu4.7
pkg-php-tools-1.11

Importante

O modelo adotado do NGiNX com php5-fpm difere um pouco do modelo implementado no Apache2. O NGiNX age primeiramente como um servidor web convencional com grandes capacidades de caching de conteúdo estático - O que eventualmente significa consomir mais recursos do que o Apache2, mas apresentando ganho de performace excepcional.  Estas métricas se dão apenas para conteúdo estático. Ao se deparar com conteúdos dinâmicos, o NGiNX passará a servidor como proxy reverso para o php5-fpm. O php5-FPM - FastCGI Process Manager é uma implementação alternativa ao PHP FastCGI com algumas funcionalidades adicionais muito úteis para altas cargas de tráfego. Algumas destas funcionalidades são:

Instalação

O NGiNX e o php5-fpm podem ser instalados via apt-get:

operador@nginx:~$ sudo apt-get update; sudo apt-get install nginx-common nginx-extras php-apc php-pear php5 php5-apcu php5-cli php5-common php5-curl php5-dev php5-fpm php5-gd php5-gmp php5-intl php5-json php5-ldap php5-mcrypt php5-mysql php5-pgsql php5-readline php5-sybase php5-xmlrpc pkg-php-tools vim 

Estrutura de diretórios

Listar a estrutura de diretórios aqui:

Arquivos de configuração

Encontram-se no diretório etc/php5/fpm/pool.d e /etc/nginx/sites-available, os arquivos de configuração dos Virtual Hosts servidos pelo NGiNX

Operando o serviço

Iniciando o serviço

Inicia-se o serviço do NGiNX através do comando:

operador@nginx:~$ sudo service nginx start

Inicia-se o serviço do php5-fpm através do comando:

sudo service php5-fpm start

Parando o serviço

Para-se o serviço do NGiNX através do comando:

operador@nginx:~$ sudo service nginx stop

Para-se o serviço do php5-fpm através do comando:

sudo service php5-fpm stop

Reiniciando o serviço

Reincia-se o serviço do NGiNX através do comando:

operador@nginx:~$ sudo service nginx restart

Reincia-se o serviço do php5-fpm através do comando:

sudo service php5-fpm restart

Arquivos de configuração

Os arquivos de configuração referêntes a cada Virtual Host, encontram-se em:

nginx.conf
user www-data;
worker_processes 4;
pid /var/run/nginx.pid;
 
events {
	worker_connections 768;
	# multi_accept on;
}
 
http {
	sendfile on;
	tcp_nopush on;
	tcp_nodelay on;
	keepalive_timeout 65;
	types_hash_max_size 2048;
	server_names_hash_bucket_size 1024;
	variables_hash_bucket_size 1024;
	include /etc/nginx/mime.types;
	default_type application/octet-stream;
	access_log /var/log/nginx/access.log;
	error_log /var/log/nginx/error.log;
	gzip on;
	gzip_disable "msie6";
	client_max_body_size 500M;
	include /etc/nginx/conf.d/*.conf;
	include /etc/nginx/sites-enabled/*;
}
php-fpm.conf
;;;;;;;;;;;;;;;;;;
; Global Options ;
;;;;;;;;;;;;;;;;;;
 
[global]
pid = /var/run/php5-fpm.pid
error_log = /var/log/php5-fpm.log

;;;;;;;;;;;;;;;;;;;;
; Pool Definitions ; 
;;;;;;;;;;;;;;;;;;;;
include=/etc/php5/fpm/pool.d/*.conf

Referências

Assinatura

Lucas do Amaral Saboya 2015/04/07 07:04