TykTechnologies / tyk

Tyk Open Source API Gateway written in Go, supporting REST, GraphQL, TCP and gRPC protocols
Other
9.65k stars 1.08k forks source link

Tyk Dasboard Unable to connect #1318

Closed amifeanyi closed 4 years ago

amifeanyi commented 6 years ago

Please I need guide on how to resolve this issue.

I have installed Mongo, Redis, Tyk Dashboard, Tyk Pump and Tyk Gateway succesfully.

As of yesterday the Dashboard was up and running fine. I added an API, but when I tried accessing it, it wont connect.

It was on trying to fix this issue that I ran into a deeper issue, the Dashboard has refused to come up. When I try http://my.company.com:3000 what i get is unable to connect.

The Mongo db is up and running, the redis server is up and running, I have restarted the dashboard several times no head way.

I have searched for the tyk dashboard or gateway logs I could not find it.

I need every assistance I can get in order to bring the dashboard up.

tyk.conf

{ "listen_port": 8080, "node_secret": "352d20ee67be67f6340b4c0605b044b7", "secret": "352d20ee67be67f6340b4c0605b044b7", "template_path": "/opt/tyk-gateway/templates", "use_db_app_configs": true, "db_app_conf_options": { "connection_string": "", "node_is_segmented": false, "tags": [] }, "disable_dashboard_zeroconf": false, "app_path": "/opt/tyk-gateway/apps", "middleware_path": "/opt/tyk-gateway/middleware", "storage": { "type": "redis", "host": "localhost", "port": 6379, "username": "", "password": "", "database": 0, "optimisation_max_idle": 2000, "optimisation_max_active": 4000 }, "enable_analytics": true, "analytics_config": { "type": "mongo", "pool_size": 100, "csv_dir": "/tmp", "mongo_url": "", "mongo_db_name": "", "mongo_collection": "", "purge_delay": 100, "ignored_ips": [], "enable_detailed_recording": true, "enable_geo_ip": false, "geo_ip_db_path": "", "normalise_urls": { "enabled": true, "normalise_uuids": true, "normalise_numbers": true, "custom_patterns": [] } }, "health_check": { "enable_health_checks": false, "health_check_value_timeouts": 60 }, "optimisations_use_async_session_write": true, "allow_master_keys": false, "policies": { "policy_source": "service", "policy_connection_string": "", "policy_record_name": "tyk_policies", "allow_explicit_policy_id": true }, "hash_keys": true, "suppress_redis_signal_reload": false, "use_redis_log": true, "close_connections": true, "enable_non_transactional_rate_limiter": true, "enable_sentinel_rate_limiter": false, "experimental_process_org_off_thread": true, "local_session_cache": { "disable_cached_session_state": false }, "http_server_options": { "enable_websockets": true }, "uptime_tests": { "disable": false, "config": { "enable_uptime_analytics": true, "failure_trigger_sample_size": 2, "time_wait": 10, "checker_pool_size": 50 } }, "hostname": "", "enable_custom_domains": true, "enable_jsvm": true, "oauth_redirect_uri_separator": ";", "coprocess_options": { "enable_coprocess": false, "coprocess_grpc_server": "" }, "pid_file_location": "./tyk-gateway.pid", "allow_insecure_configs": true, "public_key_path": "", "close_idle_connections": false, "allow_remote_config": false, "enable_bundle_downloader": true, "bundle_base_url": "", "global_session_lifetime": 100, "force_global_session_lifetime": false, "max_idle_connections_per_host": 100 }

tyk_analytics.conf

{ "listen_port": 3000, "tyk_api_config": { "Host": "http://localhost", "Port": "8080", "Secret": "352d20ee67be67f6340b4c0605b044b7" }, "mongo_url": "mongodb://127.0.0.1/tyk_analytics", "mongo_use_ssl": false, "mongo_ssl_insecure_skip_verify": false, "page_size": 10, "admin_secret": "12345", "shared_node_secret": "352d20ee67be67f6340b4c0605b044b7", "redis_port": 6379, "redis_host": "localhost", "redis_password": "", "enable_cluster": false, "force_api_defaults": false, "notify_on_change": true, "license_key": "generated license key was here", "redis_database": 0, "redis_hosts": null, "hash_keys": true, "email_backend": { "enable_email_notifications": false, "code": "", "settings": null, "default_from_email": "", "default_from_name": "", "dashboard_hostname": "" }, "hide_listen_path": false, "sentry_code": "", "sentry_js_code": "", "use_sentry": false, "enable_master_keys": false, "enable_duplicate_slugs": true, "show_org_id": true, "host_config": { "enable_host_names": true, "disable_org_slug_prefix": true, "hostname": "my.company.com", "override_hostname": "my.company.com", "portal_domains": {}, "portal_root_path": "/portal", "generate_secure_paths": false, "secure_cookies": false, "use_strict_hostmatch": false }, "http_server_options": { "use_ssl": false, "certificates": [ { "domain_name": "", "cert_file": "", "key_file": "" } ], "min_version": 0 }, "security": { "allow_admin_reset_password": false, "login_failure_username_limit": 0, "login_failure_ip_limit": 0, "login_failure_expiration": 0, "audit_log_path": "" }, "ui": { "languages": { "Chinese": "cn", "English": "en", "Korean": "ko" }, "hide_help": false, "default_lang": "en", "login_page": {}, "nav": {}, "uptime": {}, "portal_section": null, "designer": {}, "dont_show_admin_sockets": false, "dont_allow_license_management": false, "dont_allow_license_management_view": false }, "home_dir": "/opt/tyk-dashboard", "identity_broker": { "enabled": false, "host": { "connection_string": "http://localhost:3010", "secret": "934893845123491238192381486djfhr87234827348" } }, "tagging_options": { "tag_all_apis_by_org": false }, "use_sharded_analytics": false, "enable_aggregate_lookups": true, "enable_analytics_cache": false, "aggregate_lookup_cutoff": "01/07/2016", "maintenance_mode": false, "allow_explicit_policy_id": false, "private_key_path": "", "node_schema_path": "", "oauth_redirect_uri_separator": ";", "statsd_connection_string": "", "statsd_prefix": "", "disable_parallel_sessions": false, "dashboard_session_lifetime": 0, "alternative_dashboard_url": "", "sso_permission_defaults": null, "sso_custom_login_url": "", "sso_custom_portal_login_url": "" }

joshblakeley commented 6 years ago

Hi, You are missing your connection strings in db_apps_config and your policy_connection_string which should both be http://my.company.com:3000

joshblakeley commented 6 years ago

Although I notice you are using localhost in other locations so most likely http://localhost:3000

amifeanyi commented 6 years ago

Ok @joshblakeley thanks a lot, let me update and try again.

amifeanyi commented 6 years ago

@joshblakeley I have made the changes, restarted the dashboard and the gateway, same "unable to connect". I tried both http://locahost:3000 and http://my.company.com:3000.

joshblakeley commented 6 years ago

I would also change the "hostname" parameter in analytics config to be blank and also check your spelling as you misspelt localhost in your message and maybe also did in the configuration.

amifeanyi commented 6 years ago

@joshblakeley Finally I was able to bring the dashboard up, what I did was to change the host config hostname and override_hostname to localhost on the tyk_analytics.conf.

Then on the tyk.conf I changed db_app_conf_options; connection_string and policy; policy_connection_string to http://my.company.com:3000.

The dashboard came up on http://public-ip:3000 and dev portal on http://my.company.com:3000.

Test API I added when viewed from the API designer shows http://localhost/test instead of http://my.company.com/test or http://public-ip/test.

When I send request to any of this url http://my.company.com/test or http://public-ip/test through postman I will not get any response.

amifeanyi commented 6 years ago

I am new to Tyk, I will appreciate if there is any step by step guide on Adding API and calling the API using any http client to receive response. I have been following the official doc on the Tyk site so far.

I will appreciate any assistance. Thanks!

stale[bot] commented 4 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs, please add comments to this ticket if you would like it to stay open. Thank you for your contributions.