Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 13786|Resposta: 2

Implante o Kong API Gateway no CentOS 7

[Copiar link]
Publicado em 21/11/2018 13:33:04 | | | |
Kong é uma camada API extensível e de código aberto (também conhecida como API gateway ou middleware API). O Kong roda sobre qualquer API RESTful e se estende com plugins, que oferecem recursos e serviços adicionais além da plataforma principal.

O Kong foi originalmente criado na Mashape para fornecer mais de 15.000 APIs e microserviços para seu API Marketplace e gerar bilhões de requisições por mês para mais de 200.000 desenvolvedores. Hoje, o Kong é usado em implantações críticas para a missão, tanto para pequenas quanto grandes organizações

A versão mais recente é: 0.14.1



Site Oficial:O login do hiperlink está visível.

GitHub:O login do hiperlink está visível.

Endereço de introdução do plugin Kong:O login do hiperlink está visível.

Endereço do documento relacionado ao Kong:O login do hiperlink está visível.

Kong temEdições Comunidade e Enterprise, a diferença entre os dois:O login do hiperlink está visível.
Kong suporta PostgreSQL 9.5+ e Cassandra 3.xx como seu armazenamento de dados.

Tenho o PostgreSQL instalado, e o tutorial é o seguinte:

O CentOS 7 Docker implanta o PostgreSQL 9.6
https://www.itsvse.com/thread-5683-1-1.html
(Fonte: Architect_Programmer)


Este artigo usa a edição comunitária Kong como exemplo para instalar e implantar

Pacote de Download:

Instalação:



Confira a versão
ou

Crie um perfil:

Se sua configuração estiver emTodos os valores são comentados, Kong rodará com as configurações padrão. No início, o Kong procura vários locais padrão que possam conter o arquivo de configuração:

/etc/kong/kong.conf
/etc/kong.conf
O diretório de templates kong está localizado em /usr/local/share/lua/5.1/kong/templates, e contém os seguintes três arquivos
kong_defaults.lua
nginx.lua
nginx_kong.lua
Modifique o arquivo de configuração /etc/kong/kong.conf, cancele os comentários e modifique de acordo com sua situação real

Inicializar o banco de dados



iniciar





Ao inicializar o banco de dados e iniciar o Kong, você pode especificar o arquivo de configuração com o parâmetro [-c /path/to/kong.conf].

Após o início do Kong, um é 8000, o outro 8001, e a porta 80000 é a porta de entrada de solicitação, e o usuário envia a solicitação primeiro para a porta 8000 do projeto Kong, e o Kong a encaminha para o endereço real do serviço em segundo plano de acordo com as regras configuradas. A porta 8001 é a porta de gerenciamento, e uma série de configurações como configurações de plug-in, adições, exclusões de API, modificações e balanceamento de carga são gerenciadas pela porta 8001.

IP de acesso ao navegador: 8000, retorna o seguinte:

{"message":"nenhuma rota e nenhuma API encontrada com esses valores"}


Interface de gerenciamento de administrador Kong (Se a rede externa estiver inacessível, você pode modificar a configuração de binding para permitir o acesso público à rede



{"plugins":{"enabled_in_cluster":[],"available_on_server":{"response-transformer":true,"oauth2":true,"acl":true,"correlation-id":true,"pre-function":true,"jwt":true," cors":true,"ip-restriction":true,"basic-auth":true,"key-auth":true,"rate-limiting":true,"request-transformer":true,"http-log":true,"file-log":true,"hmac-auth":true," ldap-auth":true,"datadog":true,"tcp-log":true,"zipkin":true,"post-function":true,"request-size-limiting":true,"bot-detection":true,"syslog":true,"loggly":true," Azure-functions":true,"udp-log":true,"response-ratelimiting":true,"aws-lambda":true,"statsd":true,"prometheus":true,"request-termination":true}},"slogan":"bem-vindo ao kong","configuration":{"plugins":["bundled"],"admin_ssl_enabled":true,"lua_ssl_verify_depth":1,"trusted_ips":{},"prefix":"\/usr\/local\/kong","loaded_plugins":{" Transformer-Resposta":True,"Request-termination":True,"Prometheus":True,"IP-Restriction":True,"Pre-Função":True,"JWT":True,"Cors":True,"Statsd":True,"Basic-Auth": True,"key-auth":true,"ldap-auth":true,"aws-lambda":true,"http-log":true,"response-ratelimiting":true,"hmac-auth":true,"request-size-limiting":true,"datadog":true," TCP-log":True,"zipkin":True,"Post-Function":True,"Bot-Detection":True,"ACL":True,"Loggly":True,"syslog":True,"Azure-functions":True,"udp-log":True,"file-log":True," transformador-solicitado":true,"correlation-id":true,"rate-limiting":true,"oauth2":true},"cassandra_username":"kong","admin_ssl_cert_csr_default":"\/usr\/local\/kong\/ssl\/ admin-kong-default.csr","ssl_cert_key":"\/usr\/local\/kong\/ssl\/kong-default.key","admin_ssl_cert_key":"\/usr\/local\/kong\/ssl\/admin-kong-default.key","dns_ resolver":{},"pg_user":"kong","mem_cache_size":"128m","cassandra_data_centers":["DC1:2","DC2:3"],"nginx_admin_directives":{},"custom_plugins":{},"pg_host":"127.0.0.1" ,"nginx_acc_logs":"\/usr\/local\/kong\/logs\/access.log","proxy_listen":["0.0.0.0:8000","0.0.0.0:8443 ssl"],"client_ssl_cert_default":"\/usr\/local\/kong\/ssl\/ kong-default.crt","ssl_cert_key_default":"\/usr\/local\/kong\/ssl\/kong-default.key","dns_no_sync":false,"db_update_propagation":0,"nginx_err_logs":"\/usr\/local\/ kong\/logs\/error.log","cassandra_port":9042,"dns_order":["LAST","SRV","A","CNAME"],"dns_error_ttl":1,""cabeçalhos":["server_tokens","latency_tokens"],"dns_stale_ttl":4," nginx_optimizations":true,"database":"postgres","pg_database":"kong","nginx_worker_processes":"auto","lua_package_cpath":"","admin_acc_logs":"\/usr\/local\/kong\/logs\/ admin_access.log","lua_package_path":".\/?. lua;.\/?\/init.lua; ","nginx_pid":"\/usr\/local\/kong\/pids\/nginx.pid","upstream_keepalive":60,"cassandra_contact_points":["127.0.0.1"],"admin_access_log":"logs\/admin_access.log"," client_ssl_cert_csr_default":"\/usr\/local\/kong\/ssl\/kong-default.csr","proxy_listeners":[{"ssl":false,"ip":"0.0.0.0","proxy_protocol":false,"port":8000,"http2": false,"listener":"0.0.0.0:8000"},{"ssl":true,"ip":"0.0.0.0","proxy_protocol":false,"port":8443,"http2":false,"listener":"0.0.0.0:8443 ssl"}],"proxy_ssl_enabled":true," pg_password":"******","cassandra_ssl":false,"enabled_headers":{"latency_tokens":true,"X-Kong-Proxy Latency":true,"Via":true,"server_tokens":true,"Server":true," X-Kong-Upstream-Latency":true,"X-Kong-Upstream-Status":false},"ssl_cert_csr_default":"\/usr\/local\/kong\/ssl\/kong-default.csr","client_ssl":false,"db_resurrect_ttl" :30,"error_default_type":"text\/plain","cassandra_consistency":"UM", "client_max_body_size":"0","admin_error_log":"logs\/error.log","pg_ssl_verify":falso,"dns_not_ found_ttl":30,"pg_ssl":false,"db_update_frequency":5,"ssl_ciphers":"ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305: ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256: ECDHE-RSA-AES128-SHA256","cassandra_repl_strategy":"SimpleStrategy","cassandra_repl_factor":1,"log_level":"notice","admin_ssl_cert":"\/usr\/local\/kong\/ssl\/ admin-kong-default.crt","real_ip_header":"X-Real-IP","kong_env":"\/usr\/local\/kong\/.kong_env","cassandra_schema_consensus_timeout":10000,"dns_hostsfile":"\/etc\/ hosts","admin_listeners":[{"ssl":false,"ip":"127.0.0.1","proxy_protocol":false,"port":8001,"http2":false,"listener":"127.0.0.1:8001"},{"ssl":true,"ip":"127.0.0.1"," proxy_protocol":false,"port":8444,"http2":false,"listener":"127.0.0.1:8444 ssl"}],"cassandra_timeout":5000,"ssl_cert":"\/usr\/local\/kong\/ssl\/kong-default.crt"," proxy_access_log":"logs\/access.log","admin_ssl_cert_key_default":"\/usr\/local\/kong\/ssl\/admin-kong-default.key","cassandra_ssl_verify":false,"ssl_cipher_suite":" moderno","cassandra_lb_policy":"RoundRobin","real_ip_recursive":"off","proxy_error_log"""logs\/error.log","client_ssl_cert_key_default":"\/USR\/local\/Kong\/SSL\/ kong-default.key","nginx_daemon":"on","anonymous_reports":true,"db_cache_ttl":0,"nginx_proxy_directives":{},"pg_port":5432,"nginx_kong_conf":"\/usr\/local\/kong\/ nginx-kong.conf","client_body_buffer_size":"8k","lua_socket_pool_size":30,"admin_ssl_cert_default":"\/usr\/local\/kong\/ssl\/admin-kong-default.crt","nginx_http_ diretivas":[{"valor":"prometheus_metrics 5m","nome":"lua_shared_dict"}],"cassandra_keyspace":"kong","ssl_cert_default":"\/usr\/local\/kong\/ssl\/kong-default.crt"," nginx_conf":"\/usr\/local\/kong\/nginx.conf","admin_listen":["127.0.0.1:8001","127.0.0.1:8444 SSL"]},"Version":"0.14.1","node_id":"23886866-845c-450b-9e9d-4b74b5267eb9 ","lua_version":"LuaJIT 2.1.0-beta3","prng_seeds":{"pid: 30380":521312001726},"timers":{"pendente":5,"running":0},"nome do hospedeiro":"VM_0_9_centos"}



Parâmetros globais

Ou seja, todos os comandos podem ser adicionados com os seguintes parâmetros

--comando de ajuda

--v Ativar modo de detalhes

--vv para ativar o modo de depuração


Linha de comando


Kong Check

Verifique a validade do kong.conf

Uso: kong check [conf]
[conversão] (Verificação padrão /etc/kong.conf ou /etc/kong/kong.conf)

Kong prepare


Prepare as pré-pastas, subpastas e arquivos do Kong--- Para ser honesto, não sei para que serve esse comando, de qualquer forma não usei


Kong Health

Verifique a saúde do nó Kong


Migrações Kong

Gerencie o banco de dados Kong




Artigos de referência:

Documento de Configuração Kong:https://docs.konghq.com/0.14.x/configuration/
Comando Kong CLI:https://docs.konghq.com/0.14.x/cli/




Anterior:DRMSOFT (Golden Shield, Hurricane) EXE criptografa cracking de código de máquina em PDF
Próximo:O CentOS 7 Docker implanta o PostgreSQL 9.6
 Senhorio| Publicado em 30/11/2018 15:36:55 |
Tutorial sobre o gateway Kong:
Tutorial de deployment no Docker no kong-dashboard
https://www.itsvse.com/thread-5684-1-1.html
(Fonte: Architect_Programmer)

Use o plug-in limitador de taxa Kong para controlar a taxa de solicitação da interface
https://www.itsvse.com/thread-5685-1-1.html
(Fonte: Architect_Programmer)
Instalar o painel de administração do Konga no CentOS
https://www.itsvse.com/thread-5916-1-1.html
(Fonte: Architect_Programmer)


Publicado em 16/05/2023 11:15:21 |
CentOS 7 implanta o Kong API Gateway
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com