<table class="table table-bordered">
    <thead>
        <tr>
            <th class="text-left" style="width: 20%">Key</th>
            <th class="text-left" style="width: 15%">Default</th>
            <th class="text-left" style="width: 65%">Description</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td><h5>jobmanager.heap.size</h5></td>
            <td style="word-wrap: break-word;">"1024m"</td>
            <td>JVM heap size for the JobManager.</td>
        </tr>
        <tr>
            <td><h5>taskmanager.heap.size</h5></td>
            <td style="word-wrap: break-word;">"1024m"</td>
            <td>JVM heap size for the TaskManagers, which are the parallel workers of the system. On YARN setups, this value is automatically configured to the size of the TaskManager's YARN container, minus a certain tolerance value.</td>
        </tr>
        <tr>
            <td><h5>parallelism.default</h5></td>
            <td style="word-wrap: break-word;">1</td>
            <td>Default parallelism for jobs.</td>
        </tr>
        <tr>
            <td><h5>taskmanager.numberOfTaskSlots</h5></td>
            <td style="word-wrap: break-word;">1</td>
            <td>The number of parallel operator or user function instances that a single TaskManager can run. If this value is larger than 1, a single TaskManager takes multiple instances of a function or operator. That way, the TaskManager can utilize multiple CPU cores, but at the same time, the available memory is divided between the different operator or function instances. This value is typically proportional to the number of physical CPU cores that the TaskManager's machine has (e.g., equal to the number of cores, or half the number of cores).</td>
        </tr>
        <tr>
            <td><h5>state.backend</h5></td>
            <td style="word-wrap: break-word;">(none)</td>
            <td>The state backend to be used to store and checkpoint state.</td>
        </tr>
        <tr>
            <td><h5>state.checkpoints.dir</h5></td>
            <td style="word-wrap: break-word;">(none)</td>
            <td>The default directory used for storing the data files and meta data of checkpoints in a Flink supported filesystem. The storage path must be accessible from all participating processes/nodes(i.e. all TaskManagers and JobManagers).</td>
        </tr>
        <tr>
            <td><h5>state.savepoints.dir</h5></td>
            <td style="word-wrap: break-word;">(none)</td>
            <td>The default directory for savepoints. Used by the state backends that write savepoints to file systems (MemoryStateBackend, FsStateBackend, RocksDBStateBackend).</td>
        </tr>
        <tr>
            <td><h5>high-availability</h5></td>
            <td style="word-wrap: break-word;">"NONE"</td>
            <td>Defines high-availability mode used for the cluster execution. To enable high-availability, set this mode to "ZOOKEEPER" or specify FQN of factory class.</td>
        </tr>
        <tr>
            <td><h5>high-availability.storageDir</h5></td>
            <td style="word-wrap: break-word;">(none)</td>
            <td>File system path (URI) where Flink persists metadata in high-availability setups.</td>
        </tr>
        <tr>
            <td><h5>security.ssl.internal.enabled</h5></td>
            <td style="word-wrap: break-word;">false</td>
            <td>Turns on SSL for internal network communication. Optionally, specific components may override this through their own settings (rpc, data transport, REST, etc).</td>
        </tr>
        <tr>
            <td><h5>security.ssl.rest.enabled</h5></td>
            <td style="word-wrap: break-word;">false</td>
            <td>Turns on SSL for external communication via the REST endpoints.</td>
        </tr>
    </tbody>
</table>
