blob: db2b0be1470ac21fc69360795643d5373364f8bf [file] [log] [blame]
# Copyright 2018 Intel Corporation
# Copyright 2018-present Open Networking Foundation
#
# SPDX-License-Identifier: Apache-2.0
images:
repository: "" # default docker hub
tags:
init: omecproject/busybox:stable
depCheck: quay.io/stackanetes/kubernetes-entrypoint:v0.3.1
hssdb: omecproject/c3po-hssdb:master-df54425
hss: omecproject/c3po-hss:master-df54425
mme: omecproject/nucleus:master-a8002eb
spgwc: omecproject/spgw:master-e419062
pcrf: omecproject/c3po-pcrf:pcrf-d58dd1c
pcrfdb: omecproject/c3po-pcrfdb:pcrf-d58dd1c
config4g: omecproject/5gc-webui:master-727636a
pullPolicy: IfNotPresent
nodeSelectors:
enabled: false
hss:
label: omec-cp
value: enabled
pcrf:
label: omec-cp
value: enabled
mme:
label: omec-cp
value: enabled
spgwc:
label: omec-cp
value: enabled
config4g:
label: omec-cp
value: enabled
resources:
enabled: true
pcrf:
requests:
cpu: 2
memory: 1Gi
limits:
cpu: 2
memory: 1Gi
hss:
requests:
cpu: 2
memory: 1Gi
limits:
cpu: 2
memory: 1Gi
mme:
# Note that MME pod is composed of 4 containers
# Provide resources for a container, not a pod total
requests:
cpu: 0.5
memory: 1Gi
limits:
cpu: 0.5
memory: 1Gi
spgwc:
requests:
cpu: 2
memory: 5Gi
limits:
cpu: 2
memory: 5Gi
config4g:
requests:
cpu: 1
memory: 1Gi
limits:
cpu: 1
memory: 1Gi
cassandra:
deploy: true
fullnameOverride: cassandra
image:
tag: 2.1.20
#selector:
# nodeSelector:
# cassandra: enabled
persistence:
enabled: false
config:
#cluster_size: 1
#seed_size: 1
endpoint_snitch: GossipingPropertyFileSnitch
readinessProbe:
initialDelaySeconds: 10
resources: {}
#requests:
# memory: 4Gi
# cpu: 2
#limits:
# memory: 4Gi
# cpu: 2
config:
clusterDomain: cluster.local
valgrind:
enabled: false
coreDump:
enabled: true
path: /tmp/coredump
managedByConfigPod: # config comes from helm by default, if enabled true, then discard
enabled: false # helm chart config and use the config from config Pod
useExistingConfigMap: false
logger:
WEBUI:
debugLevel: info
ReportCaller: false
config4g:
deploy: true
podAnnotations:
field.cattle.io/workloadMetrics: '[{"path":"/metrics","port":9089,"schema":"HTTP"}]'
serviceType: ClusterIP
#externalIP:
#loadBalancerIP:
# nodePort is valid only when serviceType is NodePort
prometheus:
port: 9089
nodePort: 30084
urlport:
port: 5000
nodePort: 35000
cfgFiles:
webuicfg.conf:
info:
version: 1.0.0
description: WebUI initial local configuration
configuration:
spec-compliant-sdf: false
endpoints:
- type: spgw
configPushUrl: "http://spgwc:8080/v1/config"
configCheckUrl: "http://spgwc:8080/v1/config-check"
- type: mme-s1ap
configPushUrl: "http://mme:8081/v1/config/slice"
configCheckUrl: "http://mme:8081/v1/config-check"
- type: hss
configPushUrl: "http://hss:8080/v2/config/imsis"
configCheckUrl: "http://hss:8080/v2/config-check"
- type: pcrf
configPushUrl: "http://pcrf:8080/v1/config/policies"
configCheckUrl: "http://pcrf:8080/v1/config-check"
pcrf:
deploy: true
podAnnotations:
fluentbit.io/parser: pcrf
field.cattle.io/workloadMetrics: '[{"path":"/metrics","port":9089,"schema":"HTTP"}]'
pcrfdb: cassandra
serviceType: ClusterIP
#externalIP:
#loadBalancerIP:
# nodePort is valid only when serviceType is NodePort
configPort:
port: 8080
nodePort: 30081
gx:
#port: 3868 # fixed
nodePort: 33868
prometheus:
port: 9089
nodePort: 30086
# Provide the peer whitelist extension
# The peer name must be a fqdn. We allow also a special "*" character as the
# first label of the fqdn, to allow all fqdn with the same domain name.
# Example: *.example.net will allow host1.example.net and host2.example.net
acl:
oldTls: "*.cluster.local"
#ipSec:
bootstrap:
enabled: false
# See https://github.com/omec-project/c3po for details of config options
cfgFiles:
subscriber_mapping.json:
Policies:
service-groups:
internet:
default-activate-service:
- be-internet-access
services:
be-internet-access:
qci: 9
arp: 1
AMBR_UL: 1024000
AMBR_DL: 10240000
service-activation-rules:
- best-effort-internet-access
#activate-conditions:
# timer: 50
#deactivate-conditions:
# timer: 60
rules:
best-effort-internet-access:
definition:
Charging-Rule-Name: "best-effort-internet-access"
Flow-Status: 2
QoS-Information:
QoS-Class-Identifier: 9
Max-Requested-Bandwidth-UL: 512000
Max-Requested-Bandwidth-DL: 5120000
Guaranteed-Bitrate-UL: 0
Guaranteed-Bitrate-DL: 0
Allocation-Retention-Priority:
Priority-Level: 1
Pre-emption-Capability: 1
Pre-emption-Vulnerability: 1
Flow-Information:
Flow-Direction: 3
Flow-Description: "permit out ip from 0.0.0.0/0 to assigned"
pcrf.json:
common:
fdcfg: conf/pcrf.conf
# Origin host and realm will be set automatically if unset
#originhost: ""
#originrealm: ""
pcrf:
gtwhost: "*"
gtwport: 9080
#restport will be set by configmap
#restport: ""
ossport: 9082
# casssrv will be set to cassandra in the same cluster if unset
#casssrv: ""
casskeyspace: vpcrf
casshost: "cassandra"
cassusr: root
casspwd: root
cassdb: vpcrf
casscoreconnections: 2
cassmaxconnections: 8
cassioqueuesize: 32768
cassiothreads: 2
randv: true
optkey: "63bfa50ee6523365ff14c1f45f88737d"
reloadkey: false
logsize: 20
lognumber: 5
logname: "" #logs/pcrf.log
logqsize: 8192
statlogsize: 20
statlognumber: 5
statlogname: "" #logs/pcrf_stat.log
auditlogsize: 20
auditlognumber: 5
auditlogname: "" #logs/pcrf_audit.log
statfreq: 2000
numworkers: 4
concurrent: 10
ossfile: conf/oss.json
verifyroamingsubscribers: false
rulesfile: conf/subscriber_mapping.json
oss.json:
option:
id: url
type: string
services:
- id: logger
commands:
- id: describe_loggers
- id: set_logger_level
options:
- id: name
type: string
- id: level
type: integer
- id: stats
commands:
- id: describe_stats_frequency
- id: describe_stats_live
- id: set_stats_frequency
options:
- id: frequency
type: integer
hss:
deploy: true
podAnnotations:
fluentbit.io/parser: hss
field.cattle.io/workloadMetrics: '[{"path":"/metrics","port":9089,"schema":"HTTP"}]'
hssdb: cassandra
serviceType: ClusterIP
#externalIP:
#loadBalancerIP:
# nodePort is valid only when serviceType is NodePort
s6a:
#port: 3868 # fixed
nodePort: 33868
configPort:
port: 8080
nodePort: 30081
prometheus:
port: 9089
nodePort: 30086
# Provide the peer whitelist extension
# The peer name must be a fqdn. We allow also a special "*" character as the
# first label of the fqdn, to allow all fqdn with the same domain name.
# Example: *.example.net will allow host1.example.net and host2.example.net
acl:
oldTls: "*.cluster.local"
#ipSec:
bootstrap:
enabled: true
users:
- apn: internet
key: "465b5ce8b199b49faa5f0a2ee238a6bc"
opc: "d4416644f6154936193433dd20a0ace0"
sqn: 96
imsiStart: "208014567891200"
msisdnStart: "1122334455"
mme_identity: mme.omec.svc.cluster.local
mme_realm: omec.svc.cluster.local
count: 10
staticusers:
- apn: internet
key: "465b5ce8b199b49faa5f0a2ee238a6bc"
opc: "d4416644f6154936193433dd20a0ace0"
sqn: 96
imsi: "208014567891200"
msisdn: "1122334455"
staticAddr: 0.0.0.0
mme_identity: mme.omec.svc.cluster.local
mme_realm: omec.svc.cluster.local
mmes:
- id: 1
mme_identity: mme.omec.svc.cluster.local
mme_realm: omec.svc.cluster.local
isdn: "19136246000"
unreachability: 1
# See https://github.com/omec-project/c3po for details of config options
cfgFiles:
hss.json:
common:
fdcfg: conf/hss.conf
# Origin host and realm will be set automatically if unset
#originhost: ""
#originrealm: ""
hss:
gtwhost: "*"
gtwport: 9080
#restport will be set by configmap
#restport: ""
ossport: 9082
# casssrv will be set to cassandra in the same cluster if unset
#casssrv: ""
cassusr: root
casspwd: root
cassdb: vhss
casscoreconnections: 2
cassmaxconnections: 8
cassioqueuesize: 32768
cassiothreads: 2
randv: true
optkey: "63bfa50ee6523365ff14c1f45f88737d"
reloadkey: false
logsize: 20
lognumber: 5
logname: "" #logs/hss.log
logqsize: 8192
statlogsize: 20
statlognumber: 5
statlogname: "" #logs/hss_stat.log
auditlogsize: 20
auditlognumber: 5
auditlogname: "" #logs/hss_audit.log
statfreq: 2000
numworkers: 4
concurrent: 10
ossfile: conf/oss.json
verifyroamingsubscribers: false
oss.json:
option:
id: url
type: string
services:
- id: logger
commands:
- id: describe_loggers
- id: set_logger_level
options:
- id: name
type: string
- id: level
type: integer
- id: stats
commands:
- id: describe_stats_frequency
- id: describe_stats_live
- id: set_stats_frequency
options:
- id: frequency
type: integer
mme:
deploy: true
podAnnotations:
fluentbit.io/parser: mme
field.cattle.io/workloadMetrics: '[{"path":"/metrics","port":3081,"schema":"HTTP"}]'
spgwAddr: spgwc
serviceType: NodePort
#externalIP:
#loadBalancerIP:
# nodePort is valid only when serviceType is NodePort
s11:
#port: use cfgFiles.config.json.s11.egtp_default_port
nodePort: 32124
s6a:
#port: 3868 #fixed
nodePort: 33869
prometheus:
port: 3081
nodePort: 30085
s1ap:
#port: use cfgFiles.config.json.s6a.sctp_port
nodePort: 36412
# See https://github.com/omec-project/openmme/blob/master/README.txt for more config options
cfgFiles:
config.json:
mme:
name: vmmestandalone
group_id: 1
code: 1
logging: debug
plmnlist:
#plmn1 is aether common plmn, plmn2 is for aether-in-a-box
plmn1: "mcc=315,mnc=010"
plmn2: "mcc=208,mnc=01"
apnlist:
internet: "spgwc"
default: "spgwc" #default spgwc to be used
feature_list:
dcnr_support: "disabled"
security:
#int_alg_list: "[EIA0]"
int_alg_list: "[EIA1, EIA2, EIA0]"
sec_alg_list: "[EEA0, EEA1, EEA2]"
s1ap:
sctp_port: 36412
s11:
egtp_default_port: 2123
# sgw_addr and pgw_addr will be set dynamically if unset
#sgw_addr:
#pgw_addr:
s6a:
host_type: freediameter
# host and realm will be set dynamically if unset
#host:
#realm:
spgwc:
deploy: true
managedByRoc:
enabled: false
syncUrl: ""
podAnnotations:
fluentbit.io/parser: spgwc
field.cattle.io/workloadMetrics: '[{"path":"/metrics","port":9089,"schema":"HTTP"}]'
serviceType: ClusterIP
#externalIP:
#loadBalancerIP:
# nodePort is valid only when serviceType is NodePort
s11:
port: 2123
nodePort: 32123
n4:
port: 8805
nodePort: 30021
prometheus:
port: 9089
nodePort: 30084
rest:
port: 8080
nodePort: 30080
cfgFiles:
cp.json:
global:
transmitTimerSec: 2
periodicTimerSec: 10
transmitCount: 5
requestTimeoutMilliSec: 5000
requestTries: 3
gxConfig: 1
urrConfig: 0
loggingLevel: "LOG_DEBUG"
heartbeatFailure: true
upfdnstimeout: 100 #timeout in ms
ip_pool_config:
ueIpPool:
ip: "10.250.0.0"
mask: "255.255.0.0"
staticUeIpPool:
ip: "10.249.1.0"
mask: "255.255.255.0"
config.json:
gx:
host_type: freediameter
# host and realm will be set dynamically if unset
#host:
#realm:
subscriber_mapping.json:
subscriber-selection-rules:
- priority: 5
keys:
serving-plmn:
mcc: 208
mnc: 10
tac: 1
imsi-range:
from: 200000000000000
to: 299999999999999
selected-apn-profile: apn-profile1
selected-qos-profile: qos-profile1
selected-access-profile:
- access-all
selected-user-plane-profile: user-plane1
- priority: 10
keys:
match-all: true
selected-apn-profile: apn-profile1
selected-qos-profile: qos-profile1
selected-access-profile:
- access-all
selected-user-plane-profile: user-plane1
apn-profiles:
apn-profile1:
apn-name: internet
usage: 1
network: lbo
gx_enabled: true
dns_primary: 8.8.8.4
dns_secondary: 8.8.8.8
mtu: 1460
user-plane-profiles:
user-plane1:
user-plane: upf
global-address: true
qos-tags:
tag1: BW
access-tags:
tag1: ACC
qos-profiles:
qos-profile1:
qci: 9
arp: 1
apn-ambr:
- 12345678
- 12345678
mobile:
qci: 9
arp: 1
apn-ambr:
- 12345678
- 12345678
access-profiles:
access-all:
type: allow-all
internet-only:
type: internet-only
filter: No_private_network
intranet-only:
type: intranet-only
filter: only_private_network
apps-only:
type: specific-network
filter: only_apps_network
specific-app:
type: specific-destination-only
filter: allow-app-name
excluding-app:
type: excluding-this-app
filter: exclude-app-name