Default Ports
The default ports used for communication with KAgent, Kinetica (and between servers, if operating in a cluster), and various important services follow. The Nodes column will list either Head—that the corresponding port only needs to be opened on the head node, or All—that the corresponding port needs to be opened on the head node & worker nodes.While the table below lists KAgent and the graph server as being on the
head node, these features could be kept on machines entirely separate from
Kinetica if desired.
Port Usage Scenarios
Kinetica highly encourages that proper firewalls be maintained and used to protect the database and the network at large. A full tutorial on how to properly set up a firewall is beyond the scope of this document, but the following are some best practices and starting points for more research. All machines connected to the Internet at large should be protected from intrusion. As shown in the list above, there are no ports which are necessarily required to be accessible from outside of a trusted network, so we recommend only opening ports to the Internet and/or untrusted network(s) which are truly needed based on requirements. There are some common scenarios which can act as guidelines on which ports should be available.Connection to the Internet
If Kinetica is running on a server where it will be accessible to the Internet at large, it is our strong suggestion that security and authentication be used and ports9191+N and 8080 are NOT exposed to the public, if
possible. Those ports can potentially allow users to run commands anonymously
and unless security is configured to prevent it, any users connecting to them
will have full control of the database.
Dependence on Kinetica via the API
For applications in which requests are being made to Kinetica via client APIs that do not use authentication, the9191+N ports should be made available to
the relevant set of servers. For applications using authentication via the
bundled version of httpd, port 8082 should be opened. It is possible to
have both ports open at the same time in cases where anonymous access is
permitted, however the security settings should be carefully set in this case to
ensure that anonymous users have the appropriate access limitations.
Additionally, if the API client is using table monitors or triggers, ports
9001, 9002, and/or 9003 should also be opened, as needed.
Reveal
In cases where the GUI interface to Reveal is required, the8088
port should be made available.
Administration
System administrators may wish to have access to the administrative web interface, in which case port8080 should be opened, but carefully
controlled.