Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 13786|Отговор: 2

Разполагане на Kong API Gateway на CentOS 7

[Копирай линк]
Публикувано в 21.11.2018 г. 13:33:04 ч. | | | |
Kong е разширяем слой с отворен код на API (известен още като API шлюз или API middleware). Kong работи върху всеки RESTful API и се разширява с плъгини, които предлагат допълнителни функции и услуги извън основната платформа.

Kong първоначално е създаден в Mashape, за да предоставя над 15 000 API и микроуслуги за своя API Marketplace и да генерира милиарди заявки месечно за над 200 000 разработчици. Днес Kong се използва в критично важни внедрявания както за малки, така и за големи организации

Последната версия е: 0.14.1



Официален уебсайт:Входът към хиперлинк е видим.

GitHub:Входът към хиперлинк е видим.

Адрес за въвеждане на плъгина Kong:Входът към хиперлинк е видим.

Адрес на документа, свързан с Kong:Входът към хиперлинк е видим.

Конг имаОбщностни и корпоративни издания, разликата между двете:Входът към хиперлинк е видим.
Kong поддържа PostgreSQL 9.5+ и Cassandra 3.xx като свое хранилище за данни.

Имам инсталиран PostgreSQL и урокът е следният:

CentOS 7 Docker внедрява PostgreSQL 9.6
https://www.itsvse.com/thread-5683-1-1.html
(Източник: Architect_Programmer)


Тази статия използва Kong community edition като пример за инсталиране и внедряване

Пакет за изтегляне:

Инсталация:



Провери версията
или

Създайте профил:

Ако конфигурацията ти е вВсички стойности са коментирани, Kong ще работи с настройките по подразбиране. При стартиране Kong търси няколко стандартни локации, които може да съдържат конфигурационния файл:

/etc/kong/kong.conf
/etc/kong.conf
Директорията с шаблони kong се намира под /usr/local/share/lua/5.1/kong/templates и съдържа следните три файла
kong_defaults.lua
nginx.lua
nginx_kong.lua
Модифицирай конфигурационния файл /etc/kong/kong.conf, отмени коментарите и го промени според реалната си ситуация

Инициализирайте базата данни



Започне





При инициализация на базата данни и стартиране на kong, можете да зададете конфигурационния файл с параметъра [-c /path/to/kong.conf].

След стартиране на Kong, единият е 8000, другият е 8001, а портът 80000 е входният порт за заявка, и потребителят изпраща заявката първо към 8000 порта на Kong проекта, а kong я препраща към реалния фонов адрес на услугата според конфигурираните правила. 8001 портът е управленският порт, а серия от конфигурации като настройки за плъгини, добавяне на API, изтривания, модификации и балансиране на натоварването се управляват чрез 8001 порта.

IP адрес за достъп до браузър: 8000, връща следното:

{"message":"няма маршрут и не е намерен API с тези стойности"}


Интерфейс за управление на администрацията на Kong (Ако външната мрежа е недостъпна, можете да промените конфигурацията на свързването, за да позволите достъп до публична мрежа



{"плъгини":{"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,"limiting-rate-limiting":true,"aws-lambda":true,"statsd":true,"prometheus":true,"request-termination":true}},"слоган":"добре дошли в kong","configuration":{"plugins":["bundled"],"admin_ssl_enabled":true,"lua_ssl_verify_depth":1,"trusted_ips":{},"prefix":"\/usr\/local\/kong","loaded_plugins":{" response-transformer":true,"request-termination":true,"prometheus":true,"ip-restriction":true,"pre-function":true,"jwt":true,"cors":true,"statsd":true,"basic-auth": true,"key-auth":true,"ldap-auth":true,"aws-lambda":true,"http-log":true,"ограничаване на скоростта на отговора":true,"hmac-auth":true,"ограничаване на размера на заявката":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," request-transformer":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,"headers":["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":"ONE","client_max_body_size":"0","admin_error_log":"logs\/error.log","pg_ssl_verify":false,"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":" modern","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_ директиви":[{"стойност":"prometheus_metrics 5m","name":"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},"таймери":{"pending":5,"running":0},"hostname":"VM_0_9_centos"}



Глобални параметри

Тоест, всички команди могат да се добавят със следните параметри

--помощ за командването

--v Включи режим на детайли

--vv да включи debug режим


Команден ред


Kong Check

Проверете валидността на kong.conf

Употреба: kong check [conf]
[conf] (Стандартна проверка /etc/kong.conf или /etc/kong/kong.conf)

Конг Пригответе


Подгответе предварителните и подпапките и файловете на Kong--- Честно казано, не знам за какво служи тази команда, така или иначе не съм я използвал


Kong Health

Провери здравето на конг възела


Конг миграции

Управление на базата данни Kong




Референтни статии:

Конг конфигурационен документ:https://docs.konghq.com/0.14.x/configuration/
Конг CLI команда:https://docs.konghq.com/0.14.x/cli/




Предишен:DRMSOFT (Golden Shield, Hurricane) EXE криптира разбиване на машинен код в PDF
Следващ:CentOS 7 Docker внедрява PostgreSQL 9.6
 Хазяин| Публикувано в 30.11.2018 г. 15:36:55 ч. |
Урок за Kong Gateway:
Docker deployment kong-dashboard tutorial
https://www.itsvse.com/thread-5684-1-1.html
(Източник: Architect_Programmer)

Използвайте плъгина за ограничаване на скоростта kong за контрол на скоростта на заявки на интерфейса
https://www.itsvse.com/thread-5685-1-1.html
(Източник: Architect_Programmer)
Инсталирайте администраторския панел на Konga на CentOS
https://www.itsvse.com/thread-5916-1-1.html
(Източник: Architect_Programmer)


Публикувано в 16.05.2023 г. 11:15:21 ч. |
CentOS 7 внедрява Kong API Gateway
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com