guides:reference:lookup_tweaks
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
guides:reference:lookup_tweaks [2022/04/26 09:24] – pgels | guides:reference:lookup_tweaks [2024/07/03 12:31] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ===== Settings Tweaks ===== | ||
+ | |||
+ | NetYCE supports some settings that can be modified by the customer to change specific behaviour. Usually these are procedure or policy related. They can be found in the Admin -> Setup -> Settings section of the main menu. | ||
+ | |||
+ | This article describes the Tweaks that are listed under the " | ||
+ | |||
+ | See the generic article on the [[menu: | ||
+ | |||
+ | {{: | ||
+ | |||
+ | |||
+ | ==== General Tweaks ==== | ||
+ | |||
+ | === AllowCustomReportsDecrypt === | ||
+ | <WRAP indent> | ||
+ | Custom reports will decrypt passwords only for those user-levels present in String (eg: ' | ||
+ | |||
+ | The NetYCE database has many encrypted columns that are decrypted for front-end and back-end purposes on the fly. This tweak controls the same dynamic decryption behaviour for user custom reports. Given the confidentiality of some of the information, | ||
+ | |||
+ | These user-levels correspond to the Global Permission Level defined in the User Group the operator is a member of. The levels range from 0 to 6, mapping respectively to: ' | ||
+ | </ | ||
+ | |||
+ | === Email_report_body_limit === | ||
+ | <WRAP indent> | ||
+ | Custom reports can be emailed after scheduled execution. The CSV output is included in the email body AND as an attachment. This tweak controls how many CSV lines may be included in the email body before truncating. The default is 500 lines. | ||
+ | |||
+ | Setting this value to " | ||
+ | |||
+ | </ | ||
+ | |||
+ | === AllowTemplateEdit === | ||
+ | <WRAP indent> | ||
+ | When number set <>0, editing of production template revision is allowed. Default is ' | ||
+ | |||
+ | The tweak removes the strict enforcing of the requirement that for any template change, a new revision must be created, providing a fully traceable change log of the templates. However for test- and development-environments this quickly results in overkill and a cumbersome process. | ||
+ | </ | ||
+ | |||
+ | === Allow_topo_multipoint === | ||
+ | <WRAP indent> | ||
+ | For Client_type in < | ||
+ | |||
+ | The front-end and the Service-types do not allow a device port to have multiple topology connections | ||
+ | since they are point-to-point by nature. | ||
+ | |||
+ | However, for migration purposes a feature to selectively allow multiple links per port is desirable. | ||
+ | For this purpose the Lookup tweak ' | ||
+ | behaviour per Client-type. | ||
+ | |||
+ | |||
+ | The default Tweak has no Client-type specified in the String value, indicating its setting applies to all Client-types. The Num value determines the setting itself: a zero for the normal not-permitted action (conform existing policies) and a non-zero for the permitted action. | ||
+ | |||
+ | A tweak record with this name (Allow_topo_multipoint) can be added for each Client-type, | ||
+ | </ | ||
+ | |||
+ | === Change_hostname === | ||
+ | <WRAP indent> | ||
+ | When Num value is not 0, a Hostname change is not restricted to its node-type function | ||
+ | |||
+ | The Node details form will normally not allow you to alter a Hostname because it was generated within the constraints of the Node-type definitions. | ||
+ | |||
+ | If this tweak is enabled, the Hostname can be changed into any free hostname. | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Without this tweak, the permitted name changes will be limited to the Node-type definition restraints. | ||
+ | |||
+ | {{: | ||
+ | </ | ||
+ | |||
+ | === Login_legal_message === | ||
+ | <WRAP indent> | ||
+ | If the description is set, and the numerical value is set to 1 then this text is shown at the bottom of the login page. This allows you to specify a legal message to show to users attempting to authenticate. | ||
+ | |||
+ | This feature supports html tags such as <b> and <br> | ||
+ | </ | ||
+ | |||
+ | === Debug_max_days === | ||
+ | <WRAP indent> | ||
+ | Maximum age in days before ending any NetYCE debug mode. Default = 1 day (24h), Forever = 0 | ||
+ | |||
+ | NetYCE uses two flag-files to control the debugging level of nearly all of its components. The **debug** level is enabled by creating the file ''/ | ||
+ | |||
+ | The **development** level is enabled by creating the file ''/ | ||
+ | |||
+ | Due to the amount of information that will be created in these log files, they are automatically emptied out daily by the '' | ||
+ | |||
+ | To prevent the generation of debug and development log files over longer periods of time, the tweak ' | ||
+ | |||
+ | Only when these logging levels are required for longer periods should this tweak be set to more days. If set to ' | ||
+ | </ | ||
+ | |||
+ | === Default_site_status === | ||
+ | <WRAP indent> | ||
+ | Num_value defines the initial site status (1=active, 2=planned, 0=obsolete, .. | ||
+ | |||
+ | When creating a new site it must have an initial status. This initial status is defined using this tweak. The default is ' | ||
+ | |||
+ | {{: | ||
+ | </ | ||
+ | |||
+ | === Remove_deleted_supernets === | ||
+ | <WRAP indent> | ||
+ | Enabling this tweak will delete the supernets from the database when no longer in use. The default behavior will not delete these supernets, so they are available for re-use without re-adding them. This also allows for reservations which are to be used at a later point in time. | ||
+ | </ | ||
+ | |||
+ | |||
+ | === Send_email_to === | ||
+ | <WRAP indent> | ||
+ | With this setting you are able to define when an email is send, if it should go to the user defined email address, the group defined email address or both. | ||
+ | |||
+ | When the setting is set to ' | ||
+ | </ | ||
+ | |||
+ | |||
+ | === Sched_ignore_locks === | ||
+ | <WRAP indent> | ||
+ | This setting can disable the distributed schedulers " | ||
+ | |||
+ | The scheduler will not wait for jobs running on same node when Num_value > 0. The default is ' | ||
+ | </ | ||
+ | |||
+ | === Main_substring_search === | ||
+ | <WRAP indent> | ||
+ | The ' | ||
+ | |||
+ | When NOT using wildcards, the search string is generally taken as a literal match, not as a substring. The ' | ||
+ | |||
+ | The initial value of this tweak enables the ' | ||
+ | </ | ||
+ | |||
+ | === Filter_cmdb_nodes === | ||
+ | <WRAP indent> | ||
+ | CMDB nodes that are assigned a client-type will be included in the node grid of the main Build overview form. As these CMDB nodes cannot be manipulated from within the grid, it might be desirable to filter the CMDB nodes from the Node grid. | ||
+ | |||
+ | The ' | ||
+ | |||
+ | The initial value of this tweak permits the CMDB nodes to be included in the view. | ||
+ | </ | ||
+ | |||
+ | === Template_markers === | ||
+ | <WRAP indent> | ||
+ | We added support for the variables < | ||
+ | |||
+ | However, a few shortcomings with this approach were observed: First, all templates will need modification - an unpleasant task. Second, when a sub-template is done, config generation returns to its parent template to process the remaining lines of that template. It is often hard to locate which template that was, especially when the template tree has multiple levels. | ||
+ | |||
+ | To simplify these issues, this " | ||
+ | |||
+ | The inserted comments are controlled by the Num_value field of the " | ||
+ | |||
+ | With hierarchical templates, the message text indentation follows the levels. The example below shows the inserted comments when all three types are enabled. The normally generated configuration lines were removed for calrity: | ||
+ | |||
+ | < | ||
+ | # -- Template start - HP5800_24_core | HP_C5 | ||
+ | # -- Template start - Basis | HP_C5 | ||
+ | # -- Template done - Basis | ||
+ | # -- Template resume - HP5800_24_core | ||
+ | # -- Template start - Network_mgmt | HP_C5 | ||
+ | # -- Template done - Network_mgmt | ||
+ | # -- Template resume - HP5800_24_core | ||
+ | # -- Template start - Sflow | HP_C5 | ||
+ | # -- Template done - Sflow | ||
+ | # -- Template resume - HP5800_24_core | ||
+ | # -- Template start - DHCP | HP_C5 | ||
+ | # -- | ||
+ | # -- | ||
+ | # -- Template resume - DHCP | ||
+ | # -- Template done - DHCP | ||
+ | # -- Template resume - HP5800_24_core | ||
+ | ::etc:: | ||
+ | # -- Template resume - HP5800_24_core | ||
+ | # -- Template done - HP5800_24_core | ||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | ==== Logging aging/ | ||
+ | |||
+ | NetYCE maintains many log files and logging data tables on its system(s) and database. All logs are size/age rotated or capped by a maximum age. The Tweaks in this category allow the system owner to modify the default aging parameters for the various logging types. | ||
+ | |||
+ | All (numeric) values are in days. | ||
+ | |||
+ | The logging aging is maintained by the daily logging cleanup script, '' | ||
+ | |||
+ | This logging cleanup script itself logs all its actions in ''/ | ||
+ | |||
+ | The default crontab entry (from the '' | ||
+ | |||
+ | < | ||
+ | #--- YCE daily maintenance --------------------------------- | ||
+ | # Log, Job and Output directory cleanup | ||
+ | 15 22 * * * / | ||
+ | </ | ||
+ | |||
+ | |||
+ | === Age_action_logs === | ||
+ | <WRAP indent> | ||
+ | Do not keep Action_log entries older than Num_value days. Default = 400. The String value has no function and is ignored. | ||
+ | |||
+ | The Action_log is a table in the database where user activity is logged. It also has the entries created by jobs using scenarios with the " | ||
+ | |||
+ | This tweak is used by the daily logging cleanup script, '' | ||
+ | </ | ||
+ | |||
+ | === Age_config_logs === | ||
+ | <WRAP indent> | ||
+ | Do not keep Config_log entries older than Num_value days. Default = 100. The String value has no function and is ignored. | ||
+ | |||
+ | The Config_log is a table in the database where Job configuration sessions are logged. | ||
+ | |||
+ | This tweak is used by the daily logging cleanup script, '' | ||
+ | </ | ||
+ | |||
+ | === Age_nccm_data === | ||
+ | <WRAP indent> | ||
+ | Do not keep Nccm configuration entries older than Num_value days. Default = 800. The String value has no function and is ignored. | ||
+ | |||
+ | The Nccm log is a table in the database where polled node configuration changes are logged. | ||
+ | |||
+ | This tweak is used by the daily logging cleanup script, '' | ||
+ | </ | ||
+ | |||
+ | === Age_node_logs === | ||
+ | <WRAP indent> | ||
+ | Do not keep Node_log entries older than Num_value days. Default = 400. The String value has no function and is ignored. | ||
+ | |||
+ | The Node_log is a table in the database where the responses to node ' | ||
+ | |||
+ | This tweak is used by the daily logging cleanup script, '' | ||
+ | </ | ||
+ | |||
+ | |||
+ | === Age_custom_reports === | ||
+ | <WRAP indent> | ||
+ | Do not keep Custom report results older than Num_value days. Default = 30. The String value has no function and is ignored. | ||
+ | |||
+ | Custom report results are removed from the database when they exceed this age. This applies to all individual report result entries. A one-off report is removed when it was created after this many days as is the dated report (with the < | ||
+ | |||
+ | This tweak is used by the daily logging cleanup script, '' | ||
+ | </ | ||
+ | |||
+ | === Age_result_files === | ||
+ | <WRAP indent> | ||
+ | Do not keep Job log files older than Num_value days. Default = 30. The String value has no function and is ignored. | ||
+ | |||
+ | The result files are primarily the local Job log files. Each job that is executed on a server has a unique environment (the Job_id) under ''/ | ||
+ | |||
+ | This tweak is used by the daily logging cleanup script, '' | ||
+ | </ | ||
+ | |||
+ | |||
+ | === Age_task_logs === | ||
+ | <WRAP indent> | ||
+ | Do not keep Task_log entries older than Num_value days. Default = 100. The String value has no function and is ignored. | ||
+ | |||
+ | The Task_log is a table in the database where the AMP API requests and responses are logged. | ||
+ | |||
+ | This tweak is used by the daily logging cleanup script, '' | ||
+ | </ | ||
+ | |||
+ | === Age_temp_files === | ||
+ | <WRAP indent> | ||
+ | Do not keep temp files older than Num_value days. Default = 15. The String value has no function and are ignored. | ||
+ | |||
+ | The temp files are primarily the local Job session files. Each job that is executed on a server has a unique environment (the Job_id) under ''/ | ||
+ | This tweak is used by the daily logging cleanup script, '' | ||
+ | </ | ||
+ | |||
+ | === Archive_count_yce === | ||
+ | <WRAP indent> | ||
+ | The NetYCE database archive tools maintain the number of archives that may exist for the archive | ||
+ | types, YCE and NCCM. Automatic daily archives of both YCE and NCCM are now standard and takes place at 23:00 or | ||
+ | 23:20 by default (for primary or secondary server respectively). | ||
+ | |||
+ | The maximum number of archives for each type are controlled using Tweaks in the Lookup | ||
+ | form. The ' | ||
+ | that are maintained. The default is ' | ||
+ | |||
+ | All archives of each type count against these values, regardless if they were created manually, | ||
+ | uploaded, or created automatically. The only archives NOT counted (and therefore not deleted) are | ||
+ | uploaded archives where the filename was modified. | ||
+ | |||
+ | The deletion of excess archives takes place after each archive creation, regardless of type. | ||
+ | This tweak is used by the database archive tool ''/ | ||
+ | </ | ||
+ | |||
+ | === Archive_count_nccm === | ||
+ | <WRAP indent> | ||
+ | The NetYCE database archive tools maintain the number of archives that may exist for the archive | ||
+ | types, YCE and NCCM. Automatic daily archives of both YCE and NCCM are now standard and takes place at 23:00 or | ||
+ | 23:20 by default (for primary or secondary server respectively). | ||
+ | |||
+ | The maximum number of archives for each type are controlled using Tweaks in the Lookup | ||
+ | form. The ' | ||
+ | that are maintained. The default is ' | ||
+ | |||
+ | All archives of each type count against these values, regardless if they were created manually, | ||
+ | uploaded, or created automatically. The only archives NOT counted (and therefore not deleted) are | ||
+ | uploaded archives where the filename was modified. | ||
+ | |||
+ | The deletion of excess archives takes place after each archive creation, regardless of type. | ||
+ | This tweak is used by the database archive tool ''/ | ||
+ | </ | ||
+ | |||
+ | === Ldap_idle_account_age === | ||
+ | <WRAP indent> | ||
+ | This setting allows NetYCE administrators to automatically remove Ldap-based | ||
+ | user accounts that have been idle for a defined period. The ' | ||
+ | variable can be set to the number of days that an Ldap account is considered idle. If the | ||
+ | last-login date of an account was before this age, the account is removed. This will | ||
+ | be performed daily as part of the nightly maintenance tasks. | ||
+ | |||
+ | By default this setting has the value ' | ||
+ | This setting applies only to ' | ||
+ | </ | ||
+ | |||
+ | ==== Splunk log export ==== | ||
+ | |||
+ | NetYCE uses its database to maintain its main logging entries. Since these logs are not directly available for logging analysis tools like **Splunk**, a facility was created to export these logging tables to parsable logging files. The next three tweaks enable or disable this facility for each of the three logging tables. | ||
+ | |||
+ | The exporting facility is implemented in the NetYCE daemon process '' | ||
+ | |||
+ | At date rollover, new files will be opened and the older renamed to provide a 10-day history (as all log files are rotated within NetYCE). | ||
+ | |||
+ | Any NetYCE system that updates to a version made after 17 Jan 2023 will automatically enable the following three tweaks: | ||
+ | |||
+ | === Export_action_logs === | ||
+ | <WRAP indent> | ||
+ | When number set to 1, the Action_logs (users) will be exported to log files | ||
+ | |||
+ | The exported log file is ''/ | ||
+ | </ | ||
+ | |||
+ | === Export_config_logs === | ||
+ | <WRAP indent> | ||
+ | When number set to 1, the Config_logs (jobs) will be exported to log files | ||
+ | |||
+ | The exported log file is ''/ | ||
+ | </ | ||
+ | |||
+ | === Export_task_logs === | ||
+ | <WRAP indent> | ||
+ | When number set to 1, the Task_logs (api) will be exported to log files | ||
+ | |||
+ | The exported log file is ''/ | ||
+ | </ | ||
+ | |||
+ | ==== Password Tweaks ==== | ||
+ | |||
+ | Password validation rules are defined using the Lookup class " | ||
+ | |||
+ | ==== Vendor module tweaks ==== | ||
+ | |||
+ | === Commit_pending_policy === | ||
+ | |||
+ | When Num_value set to 1, commit based vendors will issue commit commands during command jobs: in case this is not desired, set the Num_value to 0. | ||
+ | |||
+ | Only commit based vendors support this option, which are currently: Juniper, Palo Alto, Huawei CE and Cisco XR. | ||
+ | |||
+ | |||
+ | ===== Backup / CMPL Tweaks ===== | ||
+ | |||
+ | {{: | ||
+ | |||
+ | The backup and compliance tweaks can be found in a different section of the application. They can be found in the Backups -> Settings form. They are separate in order to allow for a separated database for these functionalities, | ||
+ | |||
+ | ==== NCCM tweaks ==== | ||
+ | |||
+ | The NCCM process retrieves periodically the life configuration of devices and stores them to report on observed differences over time. | ||
+ | |||
+ | The NCCM uses a number pollers to retrieve the configuration from the devices. Each poller is tasked to sequentially contact a series of nodes and interactively retrieve the config, find any differences and stores them if any. | ||
+ | |||
+ | The user defines the polling interval and the total of number of nodes the server has to poll using the NCCM front-end tools. The system then determines how many pollers is needs based on the number of nodes and the time a poll requires. | ||
+ | |||
+ | Each time a configuration is retrieved, the new configuration is compared against a **base-configuration**. Any differences between the the base and the current is then stored. After a while a new base config is established and the differences against that base are then stored. This method of configuration storage has the benefit of low storage volume and minimal retrieval processing (never more than 4 records and two re-builds). | ||
+ | |||
+ | To determine if a new base configuration should be created or only the differences stored, three criteria are used: number of diffs, age of the base, and size of the diff. These three criteria are set using three corresponding tweaks. | ||
+ | |||
+ | To control the number of pollers two tweaks are provided: to limit the maximum number of pollers and the average time to poll a node. | ||
+ | |||
+ | |||
+ | |||
+ | === Nccm_max_age === | ||
+ | <WRAP indent> | ||
+ | Maximum age in days of a base-configuration. Set the Num_value. Default = 7 | ||
+ | |||
+ | When the current base configuration exceeds this age in days, a new base configuration is created. | ||
+ | </ | ||
+ | |||
+ | === Nccm_max_diffs === | ||
+ | <WRAP indent> | ||
+ | Maximum number of stored config-diffs before a new base-config is created. Set Num_value. Default = 36 | ||
+ | |||
+ | When there are more than this number of diffs stored for the current base configuration, | ||
+ | </ | ||
+ | |||
+ | === Nccm_max_diff_size === | ||
+ | <WRAP indent> | ||
+ | Maximum size in bytes of a config-diff before a new base-config is created. Set Num_value. Default = 8192 | ||
+ | |||
+ | When the diff exceeds this number of bytes, a new base configuration is created. | ||
+ | </ | ||
+ | |||
+ | === Nccm_max_pollers === | ||
+ | <WRAP indent> | ||
+ | Maximum number of NCCM pollers per system. Set the Num_value. Default = 12 | ||
+ | |||
+ | By default no more than 12 pollers are permitted to run on a server. If more pollers are required for the number of nodes, additional server(s) could be configured to poll the remaining nodes. Or the polling interval could be increased. | ||
+ | |||
+ | The limit of 12 is based on the common hardware specifications of the NetYCE servers, but could require tuning for the systems used or the load given for other tasks. | ||
+ | </ | ||
+ | |||
+ | === Nccm_poll_duration === | ||
+ | <WRAP indent> | ||
+ | Average duration in seconds of a NCCM config-poll. To calculate required number of pollers. Default = 15 | ||
+ | |||
+ | In practice, the average duration of a configuration retrieval is 15 seconds. For slower devices, larger configurations or restricted bandwidth, this number might be increased. | ||
+ | |||
+ | If set too low, the pollers will still poll all their nodes but will simply skip any idle periods that is will otherwise use to maintain the desired pace. The effect is that the polling interval will be (somewhat) longer than the configured number of hours. | ||
+ | </ | ||
+ | |||
+ | === NCCM_max_children === | ||
+ | <WRAP indent> | ||
+ | The maximum number of cmpl children the nccmd daemon can spawn. The nccmd daemon spawns a number of compliance and nccm children to take care of its tasks concurrently, | ||
+ | </ | ||
+ | |||
+ | === Delete_polling_group === | ||
+ | <WRAP indent> | ||
+ | Whenever you delete a polling group: | ||
+ | |||
+ | * 0: delete all its nodes from Nccm_selection or | ||
+ | * 1: delete only nodes that do not belong to a polling group anymore. | ||
+ | |||
+ | </ | ||
+ | |||
+ | === Polling_interval_translations === | ||
+ | <WRAP indent> | ||
+ | Controls the values for the next poll interval dropdown in the polling groups form. Options are separated by ' | ||
+ | |||
+ | Note that if you enter the wrong syntax, it will mess up the form, so be sure to make a backup if you want to modify this value. | ||
+ | </ | ||
+ | |||
+ | |||
+ | ==== CMPL Tweaks ==== | ||
+ | |||
+ | === Cmpl_max_children === | ||
+ | <WRAP indent> | ||
+ | The maximum number of cmpl children the nccmd daemon can spawn. The nccmd daemon spawns a number of compliance and nccm children to take care of its tasks concurrently, | ||
+ | </ | ||
+ | |||
+ | === Cmpl_rule_severity === | ||
+ | <WRAP indent> | ||
+ | Rules have their own severity, and their own colors to denote low priority compliance erros, medium, high and serious. You can customize this and their colours with these options. | ||
+ | </ | ||
+ | |||
+ | === Default_cmpl_rule_severity === | ||
+ | <WRAP indent> | ||
+ | When a new rule is created, this is the severity that it will have by default, corresponding to the numerical value of Cmpl_rule_severity. By default it is set to 1 (Medium) | ||
+ | </ | ||
+ | |||
+ | === Default_signal_trigger === | ||
+ | <WRAP indent> | ||
+ | When a new policy is created, these are its signal triggers that are set by default. There is a record set for every state change possible. The string values correspond to: | ||
+ | * **C2C**: Compliant to compliant | ||
+ | * **NC2C**: Non-compliant to compliant | ||
+ | * **C2NC**: Compliant to non-compliant | ||
+ | * **NC2NC**: Non-compliant to non-compliant | ||
+ | |||
+ | If the value is set to 1, a signal will be triggered on this state change. If not, a signal will not be triggered. | ||
+ | </ | ||
+ | |||
+ | === Default_signal_type === | ||
+ | <WRAP indent> | ||
+ | Sets the default signal type. A signal type is a bitwise value, where the first four bits matter. Their meanings are: | ||
+ | |||
+ | * **Bit 1**: A trap message | ||
+ | * **Bit 2**: A syslog message | ||
+ | * **Bit 3**: An email message | ||
+ | * **Bit 4**: A Rest-api ' | ||
+ | |||
+ | The default is set to 1, sending just a trap message. | ||
+ | |||
+ | NOTE: we do not recommend setting the third bit, Email. Compliance result signals are sent out per node, per policy. If you don't watch out you could set off a ddos attack with an overwhelming number of emails. | ||
+ | </ | ||
+ | |||
+ | === Cmpl_censor_config === | ||
+ | <WRAP indent> | ||
+ | |||
+ | Denotes whether or not we should use censored configs (1) or uncensored configs (0) when checking compliance for a node. | ||
+ | |||
+ | The default value is 0. | ||
+ | |||
+ | Censored configs have all passwords and sensitive information filtered away as **censored**, | ||
+ | </ | ||
+ | |||