Você pode usar um servidor proxy NGINX para enviar dados de monitoramento de um host fora da Alibaba Cloud para o CloudMonitor.
Etapa 1: Implante um proxy NGINX
O CloudMonitor é implantado em servidores Linux. Recomendamos o uso de um servidor Linux como servidor proxy. Neste exemplo, utilizamos o CentOS.
Você deve usar a conta root para implantar o servidor proxy NGINX. O uso inadequado da conta root pode causar instabilidade no sistema ou problemas de segurança de dados. Prossiga com cautela.
-
Baixe e descompacte o pacote de instalação do NGINX. Neste exemplo, usamos a versão nginx-1.19.6.
-
Acesse o diretório de instalação e baixe o pacote de instalação. Para baixar outras versões, visite o site oficial do NGINX.
cd /usr/local wget http://nginx.org/download/nginx-1.19.6.tar.gz -
Descompacte o pacote de instalação.
tar -zxvf nginx-1.19.6.tar.gz
-
-
Instale as dependências.
yum install -y git patch pcre pcre-devel gcc zlib zlib-devel openssl openssl-devel -
Baixe e instale o pacote de patch do NGINX. Neste exemplo, utilizamos o proxy_connect_rewrite_1018.patch.
Acesse o diretório descompactado do nginx-1.19.6.
-
Execute o comando a seguir para baixar o pacote de patch do NGINX.
git clone https://github.com/chobits/ngx_http_proxy_connect_module.gitImportanteBaixe a versão do pacote de patch correspondente à sua versão do NGINX. Neste exemplo, usamos o NGINX 1.19.6, portanto, o pacote de patch correspondente é o proxy_connect_rewrite_1018.patch. Para mais informações, visite o GitHub.
-
Instale o pacote de patch do NGINX. Certifique-se de estar no diretório /usr/local/nginx-1.19.6.
patch -p1 < ngx_http_proxy_connect_module/patch/proxy_connect_rewrite_1018.patchNotapatch: Aplica alterações de um arquivo de patch aos arquivos de origem.-p1: Remove um componente de diretório inicial dos caminhos de arquivo no arquivo de patch.
-
Compile, instale e, em seguida, inicie o NGINX.
-
No diretório /usr/local/nginx-1.19.6, execute o comando de compilação.
./configure --prefix=/usr/local/nginx-1-19 --with-http_stub_status_module --with-http_ssl_module --add-module=ngx_http_proxy_connect_moduleNotaO parâmetro
--prefix=/usr/local/nginx-1-19especifica o diretório de instalação do NGINX. -
Execute o comando de instalação.
make && make install -
Execute o comando para iniciar o NGINX.
/usr/local/nginx-1-19/sbin/nginx
-
Verifique a instalação. Para isso, insira <endereço_IP_do_servidor_proxy>:80 na barra de endereços do seu navegador. Se a página Welcome to nginx! for exibida, o servidor proxy NGINX estará instalado e em execução.
-
Configure o proxy NGINX.
-
No diretório
confda sua instalação do NGINX, crie um arquivo de configuraçãoforward.conf.cd /usr/local/nginx-1-19/conf vi forward.conf -
Configure o proxy direto e o proxy reverso no arquivo
forward.conf.-
O código a seguir apresenta um exemplo de configuração de proxy direto:
server { listen 8080; # Set a custom port for the NGINX proxy server. server_name xxx.xx.xx.xxx; # Set the IP address of the proxy server. # dns resolver used by forward proxying resolver 114.114.114.114; # Set the DNS address. # forward proxy for CONNECT request proxy_connect; proxy_connect_allow 443; proxy_connect_connect_timeout 10s; proxy_connect_read_timeout 10s; proxy_connect_send_timeout 10s; # forward proxy for non-CONNECT request location / { proxy_pass http://$http_host$request_uri; # Set the protocol and address of the proxy server. Use the default values. proxy_set_header Host $host; } }NotaUm proxy direto atua como intermediário para que clientes dentro de uma rede privada acessem recursos na internet pública.
O proxy direto do NGINX não oferece suporte a HTTPS por padrão. Aplique um patch e ative o suporte a HTTPS.
-
O código a seguir apresenta um exemplo de configuração de proxy reverso:
server { listen 443 ssl; server_name 192.168.XX.XX; # Set the IP address of the proxy server. ssl_certificate XXXX.pem; # The SSL certificate. ssl_certificate_key XXXX.key; # The key for the SSL certificate. location / { proxy_pass https://www.aliyun.com; # The URL that the proxy server accesses. proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }NotaUm proxy reverso atua como intermediário para que clientes na internet pública acessem recursos dentro de uma rede privada.
Para mais informações sobre como solicitar um certificado SSL, consulte Submit a certificate application.
-
Pressione a tecla Esc, insira
:wqe pressione Enter. Depois, salve e saia do arquivo de configuraçãoforward.conf.-
Abra o arquivo de configuração principal
nginx.conf.cd /usr/local/nginx-1-19/conf vi nginx.conf -
No arquivo principal
nginx.conf, adicione uma diretivaincludepara oforward.conf.http { ...... include /usr/local/nginx-1-19/conf/forward.conf; ...... } Pressione a tecla Esc, insira
:wqe pressione Enter. Depois, salve e saia do arquivonginx.conf.-
Reinicie o servidor proxy NGINX.
/usr/local/nginx-1-19/sbin/nginx -s reload
-
-
Teste o servidor proxy NGINX.
-
Para testar o proxy direto, execute o comando a seguir. Uma conexão bem-sucedida indica que a configuração do proxy direto está correta.
curl -x <proxy_server_ip>:<proxy_server_port> http://example.com -
Para testar o proxy reverso, execute o comando a seguir. Se você for redirecionado para a URL especificada no arquivo
forward.conf, independentemente da URL solicitada, a configuração do proxy reverso estará correta.curl -x <proxy_server_ip>:<proxy_server_port> https://example.com
-
Etapa 2: Instale e configure o agente do CloudMonitor
Gerencie o agente do CloudMonitor usando apenas a conta de usuário root (uma conta de administrador). No entanto, o uso de uma conta de administrador pode introduzir certos riscos, como problemas de estabilidade do sistema ou de segurança de dados. Prossiga com cautela.
-
Instale o agente do CloudMonitor no host fora da Alibaba Cloud.
Para mais informações, consulte Install and uninstall the C++ agent.
-
Configure o agente do CloudMonitor para usar o servidor proxy NGINX.
Faça login como root no host onde o agente do CloudMonitor está instalado.
-
Execute os comandos a seguir para abrir o arquivo agent.properties.
cd /usr/local/cloudmonitor/conf vi agent.properties -
Adicione as informações do servidor proxy ao arquivo
agent.properties.http.proxy.auto=false # Manually configure the proxy. http.proxy.host=192.168.XX.XX # The IP address of the NGINX proxy server. http.proxy.port=8080 # The port of the NGINX proxy server. #http.proxy.user=user # The HTTP service of the NGINX proxy server does not require a username. #http.proxy.password=password # The HTTP service of the NGINX proxy server does not require a password. Pressione a tecla Esc, insira :wq e pressione Enter. Depois, salve e saia do arquivo agent.properties.
-
Execute o comando a seguir para reiniciar o agente do CloudMonitor.
./cloudmonitorCtl.sh restart
Etapa 3: Visualize os dados de monitoramento
Faça login no console do CloudMonitor.
No painel de navegação à esquerda, clique em Host Monitoring.
Na página Host Monitoring, clique no nome do host de destino ou clique em Monitoring Charts na coluna Actions.