Kong adalah lapisan API sumber terbuka yang dapat diperluas (juga dikenal sebagai gateway API atau middleware API). Kong berjalan di atas RESTful API apa pun dan diperluas dengan plugin, mereka menawarkan fitur dan layanan tambahan di luar platform inti.
Kong awalnya dibangun di Mashape untuk menyediakan lebih dari 15.000 API dan layanan mikro untuk API Marketplace-nya dan menghasilkan miliaran permintaan per bulan untuk lebih dari 200.000 pengembang. Saat ini, Kong digunakan dalam penyebaran misi penting untuk organisasi kecil dan besar
Versi terbaru adalah: 0.14.1
Situs resmi:Login hyperlink terlihat.
GitHub:Login hyperlink terlihat.
Alamat pengenalan plugin Kong:Login hyperlink terlihat.
Alamat Dokumen Terkait Kong:Login hyperlink terlihat.
Kong memilikiEdisi Komunitas dan Perusahaan, perbedaan antara keduanya:Login hyperlink terlihat.
Kong mendukung PostgreSQL 9.5+ dan Cassandra 3.xx sebagai penyimpanan datanya.
Saya telah menginstal PostgreSQL, dan tutorialnya adalah sebagai berikut:
Artikel ini menggunakan kong community edition sebagai contoh untuk menginstal dan menerapkan
Unduh Paket:
Instalasi:
Periksa versinya
atau
Buat profil:
Jika konfigurasi Anda ada diSemua nilai dikomentari, Kong akan berjalan dengan pengaturan default. Saat startup, Kong mencari beberapa lokasi default yang mungkin berisi file konfigurasi:
/etc/kong/kong.conf
/etc/kong.conf Direktori templat kong terletak di bawah /usr/local/share/lua/5.1/kong/templates, dan berisi tiga file berikut
kong_defaults.lua nginx.lua nginx_kong.lua Ubah file konfigurasi /etc/kong/kong.conf, batalkan komentar, dan modifikasi sesuai dengan situasi Anda yang sebenarnya
Menginisialisasi database
Memulai
Saat menginisialisasi database dan memulai kong, Anda dapat menentukan file konfigurasi dengan parameter [-c /path/to/kong.conf].
Setelah Kong dimulai, satu adalah 8000, yang lainnya adalah 8001, dan port 80000 adalah port entri permintaan, dan pengguna mengirimkan permintaan ke port 8000 proyek Kong terlebih dahulu, dan kong meneruskannya ke alamat layanan latar belakang yang sebenarnya sesuai dengan aturan yang dikonfigurasi. Port 8001 adalah port manajemen, dan serangkaian konfigurasi seperti pengaturan plug-in, penambahan API, penghapusan, modifikasi, dan penyeimbangan beban dikelola melalui port 8001.
IP akses browser: 8000, mengembalikan yang berikut:
{"message":"tidak ada rute dan tidak ada API yang ditemukan dengan nilai-nilai tersebut"}
Antarmuka Manajemen Admin Kong (Jika jaringan eksternal tidak dapat diakses, Anda dapat memodifikasi konfigurasi pengikatan untuk mengizinkan akses jaringan publik)
{"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-restricting":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":"Selamat datang di 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," request-transformer":true,"correlation-id":true,"rate-restricting":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_ direktif":[{"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"}
Parameter global
Artinya, semua perintah dapat ditambahkan dengan parameter berikut
--bantuan perintah bantuan
--v Nyalakan mode detail
--vv untuk mengaktifkan mode debug
baris perintah
Cek Kong
Periksa validitas kong.conf
Penggunaan: cek kong [conf] [konferensi] (Pemeriksaan default /etc/kong.conf atau /etc/kong/kong.conf)
Kong Siap
Siapkan pra-folder dan subfolder dan file kong--- Sejujurnya, saya tidak tahu untuk apa perintah ini, saya belum menggunakannya
Kong Kesehatan
Periksa kesehatan node kong
Migrasi Kong
Kelola database kong
Artikel referensi:
Dokumen konfigurasi Kong:https://docs.konghq.com/0.14.x/configuration/ Perintah Kong CLI:https://docs.konghq.com/0.14.x/cli/
|