| --- |
| title: Setting Properties |
| --- |
| |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <%=vars.product_name%> provides a default configuration for out-of-the-box systems. To use non-default configurations and to fine-tune your member communication, you can use a mix of various options to customize your configuration. |
| |
| <a id="setting_distributed_properties__section_67EBCC53EB174B108DA7271E2CD2B76C"></a> |
| <%=vars.product_name%> properties are used to join a cluster and configure system member behavior. Configure your <%=vars.product_name%> properties through the `gemfire.properties` file, the Java API, or command-line input. Generally, you store all your properties in the `gemfire.properties` file, but you may need to provide properties through other means, for example, to pass in security properties for a username and password that you have received from keyboard input. |
| |
| **Note:** |
| Check with your <%=vars.product_name%> system administrator before changing properties through the API, including the `gemfire.properties` and `gfsecurity.properties` settings. The system administrator may need to set properties at the command line or in configuration files. Any change made through the API overrides those other settings. |
| |
| **Note:** |
| The product `defaultConfigs` directory has a sample `gemfire.properties` file with all default settings. |
| |
| Set properties by any combination of the following. The system looks for the settings in the order listed: |
| |
| 1. `java.lang.System` property setting. Usually set at the command line. For applications, set these in your code or at the command line. |
| |
| Naming: Specify these properties in the format `gemfire.property-name`, where `property-name` matches the name in the `gemfire.properties` file. To set the gemfire property file name, use `gemfirePropertyFile` by itself |
| - In the API, set the `System` properties before the cache creation call. Example: |
| |
| ``` pre |
| System.setProperty("gemfirePropertyFile", "gfTest"); |
| System.setProperty("gemfire.mcast-port", "10999"); |
| |
| Cache cache = new CacheFactory().create(); |
| ``` |
| - At the `java` command line, pass in `System` properties using the `-D` switch. Example: |
| |
| ``` pre |
| java -DgemfirePropertyFile=gfTest -Dgemfire.mcast-port=10999 test.Program |
| ``` |
| 2. Entry in a `Properties` object. |
| |
| Naming: Specify these properties using the names in the `gemfire.properties` file. To set the gemfire property file name, use `gemfirePropertyFile`. |
| - In the API, create a `Properties` object and pass it to the cache create method. Example: |
| |
| ``` pre |
| Properties properties= new Properties(); |
| properties.setProperty("log-level", "warning"); |
| properties.setProperty("name", "testMember2"); |
| ClientCache userCache = |
| new ClientCacheFactory(properties).create(); |
| ``` |
| - For the cache server, pass the properties files on the `gfsh` command line as command-line options. Example: |
| |
| ``` pre |
| gfsh>start server --name=server_name --mcast-port=10338 --properties-file=serverConfig/gemfire.properties --security-properties-file=gfsecurity.properties |
| ``` |
| |
| See [Running <%=vars.product_name%> Server Processes](../../configuring/running/running_the_cacheserver.html) for more information on running cache servers. |
| |
| 3. Entry in a `gemfire.properties` file. See [Deploying Configuration Files without the Cluster Configuration Service](../../configuring/running/deploying_config_files.html). Example: |
| |
| ``` pre |
| cache-xml-file=cache.xml |
| conserve-sockets=true |
| disable-tcp=false |
| ``` |
| |
| 4. Default value. The default values are defined within the API for |
| `org.apache.geode.distributed.ConfigurationProperties`. |
| |
| |