OP#179 add service control units for memory consumption
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -2,3 +2,4 @@
|
|||||||
Gemfile.lock
|
Gemfile.lock
|
||||||
FileList
|
FileList
|
||||||
.scannerwork
|
.scannerwork
|
||||||
|
.vscode
|
||||||
2
.vscode/settings.json
vendored
2
.vscode/settings.json
vendored
@@ -1,6 +1,8 @@
|
|||||||
{
|
{
|
||||||
"cSpell.words": [
|
"cSpell.words": [
|
||||||
"changeme",
|
"changeme",
|
||||||
|
"GOMAXPROCS",
|
||||||
|
"procs",
|
||||||
"reqpackage",
|
"reqpackage",
|
||||||
"rpms",
|
"rpms",
|
||||||
"sslcacert",
|
"sslcacert",
|
||||||
|
|||||||
@@ -17,6 +17,11 @@
|
|||||||
# @param [String] ps_retention_time tsdb retention time
|
# @param [String] ps_retention_time tsdb retention time
|
||||||
# @param [String] ps_retention_size tsdb retention size
|
# @param [String] ps_retention_size tsdb retention size
|
||||||
# @param [String] ps_wal_seg_size WAL segment size
|
# @param [String] ps_wal_seg_size WAL segment size
|
||||||
|
# @param [String] ps_max_mem hard memory ceiling
|
||||||
|
# @param [String] ps_high_mem soft limit to make kernel reclaim earlier
|
||||||
|
# @param [String] ps_swap_mem allow swap, but limit it
|
||||||
|
# @param [String] ps_oom_score OOM killer choosing prometheus
|
||||||
|
# @param [String] ps_max_procs reduce parallel WAL replay workers
|
||||||
##############################################################################
|
##############################################################################
|
||||||
class prometheus_cd::params (
|
class prometheus_cd::params (
|
||||||
|
|
||||||
@@ -45,6 +50,13 @@ class prometheus_cd::params (
|
|||||||
String $ps_retention_size = '20GB',
|
String $ps_retention_size = '20GB',
|
||||||
String $ps_wal_seg_size = '50MB',
|
String $ps_wal_seg_size = '50MB',
|
||||||
|
|
||||||
|
# service
|
||||||
|
String $ps_max_mem = '6G',
|
||||||
|
String $ps_high_mem = '5G',
|
||||||
|
String $ps_swap_mem = '4G',
|
||||||
|
String $ps_oom_score = '500',
|
||||||
|
String $ps_max_procs = '1',
|
||||||
|
|
||||||
) {
|
) {
|
||||||
# defaults
|
# defaults
|
||||||
$fqdn = $facts['networking']['fqdn']
|
$fqdn = $facts['networking']['fqdn']
|
||||||
|
|||||||
@@ -2,6 +2,12 @@
|
|||||||
##### File created by Puppet - manual changes will be overwritten #####
|
##### File created by Puppet - manual changes will be overwritten #####
|
||||||
###############################################################################
|
###############################################################################
|
||||||
[Service]
|
[Service]
|
||||||
|
MemoryMax=<%= @ps_max_mem %>
|
||||||
|
MemoryHigh=<%= @ps_high_mem %>
|
||||||
|
MemorySwapMax=<%= @ps_swap_mem %>
|
||||||
|
OOMScoreAdjust=<%= @ps_oom_score %>
|
||||||
|
Environment="GOMAXPROCS=<%= @ps_max_procs %>"
|
||||||
|
|
||||||
ExecStart=
|
ExecStart=
|
||||||
ExecStart=/usr/bin/prometheus \
|
ExecStart=/usr/bin/prometheus \
|
||||||
--config.file=/etc/prometheus/prometheus.yml \
|
--config.file=/etc/prometheus/prometheus.yml \
|
||||||
|
|||||||
Reference in New Issue
Block a user