Configuring the Proxy
The Oracle NoSQL Database Proxy should be configured after deploying a data store.
The following information should be obtained from the secure data store deployment:
- data store name. See ping.
- data store helper host:port list. See Obtaining a KVStore Handle in the Java Direct Driver Developer's Guide.
Proxy Parameters
The following parameters can be provided as the command line arguments to start up the proxy.
Parameter | Required ? | Default Value | Description |
---|---|---|---|
-helperHosts | Required | Helper hosts are hostname and port pairs that
identify how to contact helper nodes within the data store. Use
an array of strings to identify multiple helper hosts .
Typically, you will get these hostname and port pairs from the
data store's deployer or administrator. Example pattern is
"hostname1:port1,hostname2:port2,...hostnameX:portX"
Confirm that the ports in helper host list are left open by the firewall rules for connection between the proxy and data store server. |
|
-storeName | Required | Name of the data store. This name is obtained from data store deployment process. | |
-hostname | No | localhost | The host name of the machine which is starting up the proxy instance. |
-httpPort | No | 80 | The HTTP port of the proxy machine which will be
used by the proxy to accept non-secure connections from HTTP
requests. This parameter is mutually exclusive with the
-httpsPort parameter. Only one of these
parameters can be specified.
Confirm that the port is left open by the firewall rules for connection between the proxy and the driver. |
-httpsPort | No | 443 | The HTTPS port of the proxy machine which will be
used by the proxy to accept secure connections from HTTPS
requests. This parameter is mutually exclusive with the
-httpPort parameter. Only one of these
parameters can be specified.
Confirm that the port is left open by the firewall rules for connection between the proxy and the driver. |
-numAcceptThreads | No | 3 | This value determines the thread pool size for the threads that are used to handle the incoming connections to the proxy. |
-numRequestThreads | No | 32 | This value determines the thread pool size for the threads that are used to handle the request input/output traffic, after the connection has been registered by the "AcceptThread" and handed over to the "RequestThread". |
-verbose | No | false | Displays the proxy start-up information. Can take either "true" or "false" as values. |
-sslCertificate | Required for secure proxy only. |
Path to the SSL certificate file in pem file format. You can either generate a self-signed certificate using OpenSSL, or send a request to a public CA to generate a certificate. See Generating Certificate and Private Key for the Oracle NoSQL Database Proxy in the Security Guide. |
|
-sslPrivateKey | Required for secure proxy only. | Path to the SSL private key file. You can either generate a private key using OpenSSL, or send a request to a public CA to generate a private key. See Generating Certificate and Private Key for the Oracle NoSQL Database Proxy in the Security Guide. | |
-sslPrivateKeyPass | Required for secure proxy only. | Password for the private key, if the private key is encrypted. This parameter is not required if the private key is not encrypted. | |
-storeSecurityFile | Required for secure proxy only. | Path to the security login file which is generated by the client user of the data store. The client user of the data store should be a non-admin proxy bootstrap user. To generate a login file, see Create users and configure security with remote access. |
Note:
The Oracle NoSQL Database Proxy can run in one or multiple dedicated hosts. It can be hosted inside the nodes of the data store. You can use a load balancer as frontend which has a backend set of multiple NoSQL proxies on different hosts. When configuring a Load Balancer, you can add an HTTP health check. The Oracle NoSQL Database Proxy provides the following URI /V2/health endpoint to do it. An HTTP request to this URI will return a successful response 200 OK. You can find an example configuring HA proxy here: https://github.com/oracle/nosql-examples/tree/master/examples-nosql-cluster-deployment