Kong on laiendatav avatud lähtekoodiga API kiht (tuntud ka kui API gateway või API middleware). Kong töötab mis tahes RESTful API peal ja laieneb pluginatega, pakkudes lisaks põhiplatvormile lisafunktsioone ja teenuseid.
Kong ehitati algselt Mashape'is, et pakkuda üle 15 000 API ja mikroteenuse oma API turule ning genereerida miljardeid päringuid kuus enam kui 200 000 arendajale. Tänapäeval kasutatakse Kongi missioonikriitilistes juurutustes nii väikestele kui suurtele organisatsioonidele
Viimane versioon on: 0.14.1
Ametlik veebileht:Hüperlingi sisselogimine on nähtav.
GitHub:Hüperlingi sisselogimine on nähtav.
Kongi plugina tutvustusaadress:Hüperlingi sisselogimine on nähtav.
Kongiga seotud dokumendi aadress:Hüperlingi sisselogimine on nähtav.
Kongil onKogukonna ja ettevõtte väljaanded, erinevus nende kahe vahel:Hüperlingi sisselogimine on nähtav.
Kong toetab PostgreSQL 9.5+ ja Cassandra 3.xx andmesalvestusena.
Mul on PostgreSQL installitud ja juhend on järgmine:
Selles artiklis kasutatakse näiteks Kong Community Editionit paigaldamiseks ja juurutamiseks
Allalaadimispakett:
Paigaldus:
Vaata versiooni
või
Loo profiil:
Kui su konfiguratsioon on paigasKõik väärtused on kommenteeritud, Kong töötab vaikeseadetega. Käivitamisel otsib Kong mitmeid vaikimisi asukohti, mis võivad sisaldada konfiguratsioonifaili:
/etc/kong/kong.conf
/etc/kong.conf Kongi malli kataloog asub /usr/local/share/lua/5.1/kong/templates all ning sisaldab järgmisi kolme faili
kong_defaults.lua nginx.lua nginx_kong.lua Muuda /etc/kong/kong.conf seadistusfaili, tühista kommentaarid ja kohanda seda vastavalt oma tegelikule olukorrale
Andmebaasi initsialiseerimine
Algatada
Andmebaasi initsialiseerimisel ja kongi käivitamisel saad määrata konfiguratsioonifaili parameetriga [-c /path/to/kong.conf].
Pärast Kongi käivitamist on üks 8000, teine 8001 ja 80000 port on päringu sisestusport, kasutaja saadab päringu esmalt Kongi projekti 8000 pordile ning Kong suunab selle reaalsele taustateenuse aadressile vastavalt konfigureeritud reeglitele. 8001 port on haldusport ning mitmeid konfiguratsioone nagu plugina seaded, API lisamised, kustutamised, muudatused ja koormuse tasakaalustamine hallatakse 8001 pordi kaudu.
Brauseri ligipääsu IP: 8000, tagastab järgmised:
{"message":"ei leitud marsruuti ega API-d nende väärtustega"}
Kongi administraatori haldusliides (Kui väline võrk on ligipääsmatu, saad sidumise konfiguratsiooni muuta, et võimaldada avalikku võrgu ligipääsu)
{"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}},"tagline":"tere tulemast 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,"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,"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:844 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_ direktiivid":[{"value":"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},"timers":{"pending":5,"running":0},"hostname":"VM_0_9_centos"}
Globaalsed parameetrid
See tähendab, et kõik käsud saab lisada järgmiste parameetritega
--abi, abi juhtkond
--v Lülita detailrežiim sisse
--vv silumisrežiimi sisselülitamiseks
Käsurea
Kongi kontroll
Kontrolli kong.conf kehtivust
Kasutus: kong check [conf] [conf] (Vaikimisi kontroll /etc/kong.conf või /etc/kong/kong.conf)
Kong Prepare
Valmista Kongi eelkaustad, alamkaustad ja failid--- Ausalt öeldes ei tea ma, milleks see käsk on, ma pole seda niikuinii kasutanud
Kong Health
Kontrolli kong-sõlme tervist
Kongi ränded
Halda kongi andmebaasi
Viiteartiklid:
Kongi konfiguratsioonidokument:https://docs.konghq.com/0.14.x/configuration/ Kong CLI juhtkond:https://docs.konghq.com/0.14.x/cli/
|