AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / user-21415

Tom's questions

Martin Hope
Tom
Asked: 2015-09-15 08:50:31 +0800 CST

Como contornar uma lista de permissões de IP ao consumir uma API de terceiros?

  • 1

Usamos um serviço cuja API rejeitará solicitações, a menos que o IP de origem tenha sido previamente incluído na lista de permissões. Eles nos dão apenas 3 slots, o que é um problema porque temos mais de 3 máquinas que precisam usar a API.

Qual é a técnica mais comum para solucionar esse problema?

Nota: não estou tentando fazer nada contra os Termos e Condições da API de terceiros. Estamos usando o ResellerClub e entrei em contato para pedir mais slots, mas eles responderam:

Solicito que você gentilmente encaminhe seus servidores para alguns conjuntos de IPs.

Daí esta pergunta.


Pensamentos:

  • Eu estava pensando que poderíamos resolver o problema executando uma espécie de proxy que atua como um intermediário. Em vez de fazer solicitações de API para terceiros, nós as fazemos para nosso proxy, que devolve a solicitação para terceiros, para que todas as solicitações pareçam vir de um IP aos olhos deles. Existe um software comum para fazer esse tipo de coisa? Parece mais simples fazer isso do que os pensamentos abaixo, mas estou errado?
  • O uso de "uma instância NAT" é algo que devo investigar? por exemplo , http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_NAT_Instance.html . Parece complicado - Não existe uma solução mais simples? (Executar uma instância extra com complexidade de rede extra é uma pena).
  • Como usamos o Docker, o Weave pode ser relevante?
  • Podemos anexar um IP estático ao gateway VPC? Eu vi que é possível com o AWS Storage Gateway ( source ) - não tenho certeza sobre um vpc igw regular?

Nossa arquitetura: Usamos AWS e temos nossas instâncias em uma VPC rodando atrás de um ELB. Frequentemente criamos novas instâncias sem saber os endereços IP com antecedência. Executamos software idêntico em todas as máquinas. As máquinas rodam CoreOS e nosso app roda em containers Docker.

proxy
  • 2 respostas
  • 1969 Views
Martin Hope
Tom
Asked: 2015-01-10 03:56:59 +0800 CST

Como obter o php-fpm para logar em stdout / stderr ao executar em um contêiner docker

  • 31

Eu tenho php-fpm em um contêiner docker e Dockerfileedito o arquivo de configuração fpm ( /etc/php5/fpm/pool.d/www.conf) para configurar logs de acesso /var/log/fpm-access.loge logs de erro /var/log/fpm-php.www.log:

# Do some php-fpm config
#  Redirect worker stdout and stderr into main error log
#  Activate the fpm access log
#  Enable display errors
#  Enable the error log
RUN sed -i '/^;catch_workers_output/ccatch_workers_output = yes' /etc/php5/fpm/pool.d/www.conf && \
    sed -i '/^;access.log/caccess.log = /var/log/fpm-access.log' /etc/php5/fpm/pool.d/www.conf && \
    sed -i '/^;php_flag\[display_errors\]/cphp_flag[display_errors] = off' /etc/php5/fpm/pool.d/www.conf && \
    sed -i '/^;php_admin_value\[error_log\]/cphp_admin_value[error_log] = /var/log/fpm-php.www.log' /etc/php5/fpm/pool.d/www.conf && \
    sed -i '/^;php_admin_flag\[log_errors\]/cphp_admin_flag[log_errors] = on' /etc/php5/fpm/pool.d/www.conf

Isso funciona bem - posso colocar um shell no contêiner para ver os logs. Mas... não é a melhor prática.

O problema é quando tento usar o coletor de log do docker - preciso do php-fpm para logar no stdout ou stderr para que o docker possa capturá-los e fornecê-los ao docker logscomando.

Tentei fazer isso no Dockerfile(que é uma ideia que copiei da imagem oficial do nginx docker ):

# Redirect fpm logs to stdout and stderr so they are forwarded to the docker log collector
RUN ln -sf /dev/stdout /var/log/fpm-access.log && \
    ln -sf /dev/stderr /var/log/fpm-php.www.log

Isso não está funcionando - nenhum log de acesso é visto docker logs- estou tentando descobrir por quê? Alguém mais que usa fpm no docker conseguiu fazer o log funcionar no coletor de log do docker?

logging
  • 3 respostas
  • 79455 Views
Martin Hope
Tom
Asked: 2015-01-08 03:38:48 +0800 CST

Nginx: como usar o coletor de log do docker quando o nginx está sendo executado sob o supervisord

  • 7

A imagem oficial do nginx docker ( Dockerfile ) usa o seguinte truque para enviar seus logs para stdout e stderr para que sejam capturados pelo coletor de log do docker e visualizados usando docker logs <container-name>:

# forward request and error logs to docker log collector
RUN ln -sf /dev/stdout /var/log/nginx/access.log
RUN ln -sf /dev/stderr /var/log/nginx/error.log

Eu quero fazer o mesmo, porém tenho supervisord como PID 1 em meu contêiner e ele supervisiona o processo nginx e captura stdout e stderr e o coloca em seu próprio arquivo de log. Portanto, os logs não alcançam o coletor de log do docker.

Aqui está o bloco relevante no meu supervisord.conf

[program:nginx]
command=/usr/sbin/nginx -g "daemon off;"
priority=990
; NOTE: We do not want to redirect stdout and stderr of a nginx process to a logfile because we want docker log collector to get them.
stdout_logfile= NOT SURE WHAT TO PUT HERE?
stderr_logfile= NOT SURE WHAT TO PUT HERE?
username=www-data
autorestart=true

Os documentos do supervisord são ótimos ( http://supervisord.org/configuration.html ), mas stdout_logfilenão me dão a resposta de que preciso - ou seja, como configuro o supervisord para não interceptar um processo stdout / stderr ( ou para capturar para um arquivo de log, mas também encaminhar para stdout / stderr normal).

O que eu já tentei:

  1. stdout_logfile=NONE- Não obtenha logs nem stdout ou para um arquivo
  2. stdout_logfile=/var/log/supervisor/%(program_name)s.log- Obter logs para um arquivo, mas não stdout.
  3. Não definindo stdout_logfile - Obtenha logs para um arquivo nomeado aleatoriamente, mas não stdout.
  4. stdout_logfile=/dev/stdout- O supervisor dá um erro:

    Exceção python não capturada CRIT, canal de fechamento (stdout)> (:[Errno 29] Busca ilegal [/usr/lib/python2.7/dist-packages/supervisor/supervisord.py|runforever|233] [/usr/lib/python2 .7/dist-packages/supervisor/dispatchers.py|handle_read_event|231] [/usr/lib/python2.7/dist-packages/supervisor/dispatchers.py|record_output|165] [/usr/lib/python2.7 /dist-packages/supervisor/dispatchers.py|_log|141] [/usr/lib/python2.7/dist-packages/supervisor/loggers.py|info|273] [/usr/lib/python2.7/dist -packages/supervisor/loggers.py|log|291] [/usr/lib/python2.7/dist-packages/supervisor/loggers.py|emit|186] [/usr/lib/python2.7/dist-packages /supervisor/loggers.py|doRollover|195])

nginx
  • 1 respostas
  • 12082 Views

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Você pode passar usuário/passar para autenticação básica HTTP em parâmetros de URL?

    • 5 respostas
  • Marko Smith

    Ping uma porta específica

    • 18 respostas
  • Marko Smith

    Verifique se a porta está aberta ou fechada em um servidor Linux?

    • 7 respostas
  • Marko Smith

    Como automatizar o login SSH com senha?

    • 10 respostas
  • Marko Smith

    Como posso dizer ao Git para Windows onde encontrar minha chave RSA privada?

    • 30 respostas
  • Marko Smith

    Qual é o nome de usuário/senha de superusuário padrão para postgres após uma nova instalação?

    • 5 respostas
  • Marko Smith

    Qual porta o SFTP usa?

    • 6 respostas
  • Marko Smith

    Linha de comando para listar usuários em um grupo do Windows Active Directory?

    • 9 respostas
  • Marko Smith

    O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL?

    • 3 respostas
  • Marko Smith

    Como determinar se uma variável bash está vazia?

    • 15 respostas
  • Martin Hope
    Davie Ping uma porta específica 2009-10-09 01:57:50 +0800 CST
  • Martin Hope
    kernel O scp pode copiar diretórios recursivamente? 2011-04-29 20:24:45 +0800 CST
  • Martin Hope
    Robert ssh retorna "Proprietário incorreto ou permissões em ~/.ssh/config" 2011-03-30 10:15:48 +0800 CST
  • Martin Hope
    Eonil Como automatizar o login SSH com senha? 2011-03-02 03:07:12 +0800 CST
  • Martin Hope
    gunwin Como lidar com um servidor comprometido? 2011-01-03 13:31:27 +0800 CST
  • Martin Hope
    Tom Feiner Como posso classificar a saída du -h por tamanho 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent Como determinar se uma variável bash está vazia? 2009-05-13 09:54:48 +0800 CST

Hot tag

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve