diff --git a/bin/binWriter b/bin/binWriter new file mode 100644 index 0000000..4c0e7be Binary files /dev/null and b/bin/binWriter differ diff --git a/build/nginx/omc.conf b/build/nginx/omc.conf new file mode 100644 index 0000000..18a692d --- /dev/null +++ b/build/nginx/omc.conf @@ -0,0 +1,47 @@ +server { + listen 443 ssl; + listen [::]:443 ssl; + server_name 0.0.0.0; + root /usr/local/omc/htdocs/front/; + index index.html index.htm; + server_name localhost; + # SSL + #ssl_certificate /usr/local/omc/etc/certs/ca_cert.pem; + #ssl_certificate_key /usr/local/omc/etc/certs/private_key.pem; + ssl_certificate /usr/local/omc/etc/certs/tsa-omc.pem; + ssl_certificate_key /usr/local/omc/etc/certs/tsa-omc_pri.pem; + +# location /api/rest/securityManagement { +# proxy_pass http://127.0.0.1:5050; +# } +# location /api/rest/resourceManagement { +# proxy_pass http://127.0.0.1:5050; +# } +# location /api/rest/performanceManagement { +# proxy_pass http://127.0.0.1:5050; +# } +# location /api/rest/faultManagement { +# proxy_pass http://127.0.0.1:5050; +# } +# location /api/rest/aaaa/ { +# proxy_pass http://127.0.0.1:4040; +# } + location /api/rest/ { + proxy_pass http://127.0.0.1:3030; + } + location / { + try_files $uri $uri/ =404; + } +} + +server { + listen 8888 default_server; + listen [::]:8888 default_server; + root /usr/local/omc/htdocs/front/; + index index.html index.htm; + server_name localhost; + location / { + try_files $uri $uri/ =404; + } +} + diff --git a/build/omc/.ssh/id_rsa b/build/omc/.ssh/id_rsa new file mode 100644 index 0000000..b9e6a0e --- /dev/null +++ b/build/omc/.ssh/id_rsa @@ -0,0 +1,38 @@ +-----BEGIN OPENSSH PRIVATE KEY----- +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 +-----END OPENSSH PRIVATE KEY----- diff --git a/build/omc/.ssh/id_rsa.pub b/build/omc/.ssh/id_rsa.pub new file mode 100644 index 0000000..93e845f --- /dev/null +++ b/build/omc/.ssh/id_rsa.pub @@ -0,0 +1 @@ +ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCjzE0MHy0P2sQmG1OKvArwLEzR77BwxPp+4N9NKBz8lEyNch4zoHvoLDaUJKPBMwTrScZnxhvRJNde6hz5Z0QVxZolVKV95fMfgb9YICzDfPF3Bphae5q/PBYUJNfrC9SAjQeHV4CCO6xk6LV8O/Nfw8uaXwtuN3yfpUWd5mRWKMc3GHV4vxerfKoIQZN6etLhIEYibAhCJ21P0uoWzZl7ceLmkG+6qrRSbyC0bCnrN3+wjN4bwtflrEFJk3XQGuRbVsYLzux+mMm9p22+CLPRl/FUPF3x4/wKCsqr7JDSxx80HSPhk4g/1nCTpDR9hAfF6A9ww2va/k8jMeYPBO8Owe7erLEZzvg5WQAR3Wj05eJpJD99BeC91S5KW6AFQDfDHxWWprSibd/Jj9dtct2pK2ZxW0ph9OJ49ftRhzT1iVi4UnJwnG5/qLfwl6Tnx+qnQ1If/9lY/99erCTATzFTMSImKrRz7CnuPlcw8WkzCYpWKKe0kJLkL2cRD5Qi4yk= simon@simonzhangsz diff --git a/build/omc/.ssh/private_key.pem b/build/omc/.ssh/private_key.pem new file mode 100644 index 0000000..b9e6a0e --- /dev/null +++ b/build/omc/.ssh/private_key.pem @@ -0,0 +1,38 @@ +-----BEGIN OPENSSH PRIVATE KEY----- +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 +-----END OPENSSH PRIVATE KEY----- diff --git a/build/omc/etc/certs/ca_cert.pem b/build/omc/etc/certs/ca_cert.pem new file mode 100644 index 0000000..828a843 --- /dev/null +++ b/build/omc/etc/certs/ca_cert.pem @@ -0,0 +1,18 @@ +-----BEGIN CERTIFICATE----- +MIIC4jCCAcqgAwIBAgICB+cwDQYJKoZIhvcNAQELBQAwEjEQMA4GA1UEAxMHUm9v +dCBDQTAeFw0yMzA4MTIxODA5MzZaFw0zMzA4MTIxODA5MzZaMBIxEDAOBgNVBAMT +B1Jvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUTcFiT1GT +Zq9ROKTuWm6IfFthO6ysthEKevwkgJGDRCwF+K6rx3j7izTDfLkXum5OPbcd/yiE +B40Yrq9X2ckX260xG9PjDmGUaq8q5sza85Gg2hrW6wiLF9y8yYK3/v7716d0y6st +jt71pH554R98m0zHkbkmrFEagWR5cEoVM6MPZp2wdDnOFBBRiB1BrbHMpAFiKJ6s +oqm1yhUwCeeR/Hs09JF8KfOFhV4qAEVvE1cviHucCEvLBaG6xBzbKvYV2iOPu6u2 +o818wphqmSZYoj3/O4/EyVgvj1VdSqmkTSudiiIhLAa8/2JKrW1v7wFQjRkwNwdf +h6UR5liIUwk7AgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTAD +AQH/MB0GA1UdDgQWBBRtEF/Jyw6Zz3v0K5uA6aMOr9LXRTANBgkqhkiG9w0BAQsF +AAOCAQEAErmFo6JjEoFZv8R2gwNUq7ln+YEh2hX4myLlNDfTpYeGnn2Ge70Kmb0o +dkSyanDd9tGImcbEOttWAYve3vetvN3g+GONbf5pV7ClIbVV5MsjN/aGwj/TQWhu +ttmfu9IV2b5HyFEM61eoHVrNoWiNpbNHTu5D/XF8sg5JkseTnJF06foykzAx28i6 +JcttunYn5SoWTIS9Ydu07X7uBcTeFBcKfH0xg4QlsNppiM5lIxBbp0WjQ8jyWw+b +Lyef4N6hmiaOf6P6qwaVZkEBhK6MVf1zadURuUSWAkhwGFjA7IbjbJ7OfYLXkYp3 +mIrXQzjxz6AfyOcY/FsgcaDLf5xbYw== +-----END CERTIFICATE----- diff --git a/build/omc/etc/certs/private_key.pem b/build/omc/etc/certs/private_key.pem new file mode 100644 index 0000000..334940a --- /dev/null +++ b/build/omc/etc/certs/private_key.pem @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEpAIBAAKCAQEAlE3BYk9Rk2avUTik7lpuiHxbYTusrLYRCnr8JICRg0QsBfiu +q8d4+4s0w3y5F7puTj23Hf8ohAeNGK6vV9nJF9utMRvT4w5hlGqvKubM2vORoNoa +1usIixfcvMmCt/7++9endMurLY7e9aR+eeEffJtMx5G5JqxRGoFkeXBKFTOjD2ad +sHQ5zhQQUYgdQa2xzKQBYiierKKptcoVMAnnkfx7NPSRfCnzhYVeKgBFbxNXL4h7 +nAhLywWhusQc2yr2Fdojj7urtqPNfMKYapkmWKI9/zuPxMlYL49VXUqppE0rnYoi +ISwGvP9iSq1tb+8BUI0ZMDcHX4elEeZYiFMJOwIDAQABAoIBAFVJVhIsXVRwdBg4 +hBkS5ogVRBPp1obIeYpWadSwH36m4M5aUlE1eKzoRGK7wlIUA8V5FmroxysOkKUG +KI5UD6Jp0fLw9uyX46QPqkb4zgyIkFI5u7+nEJW1Flt3Y3Ze7dJ1FbdEPWAIzs3j +WFzNC2eEhCYs9pZ3+HhOuzJfUitYU6ts83tazSms+7E027e/v2ubtYOzluEoj4YK +MM+ocqJOlXUOhyTATDaLs4fM567bwwFeriODQqmMIhXLf3HiBPfPYhoAlwPUV51L +bAjIPwG2/jy0yXPenYOUqSMP1i+XkyTL4eVqOLLQUI+BsEaToS8M7Lf4KRQE0vQm +uAkEA9ECgYEAxCsKXtkYXrma8UziSJgQBj88TfACyuYZBPkpBFJhffPVOreYzqmn +gsE38oHlLhCrezsxvScivS/Cwt7kgBTE9r6xmH8y2f0P3PNmtazQCqovG1gsNZ1t +9PZQmxbVUfx/7KRJ1Q5zX3x5C0P2c6XYv/1h/SQQ8PYXDhRxWZFVSikCgYEAwYlt +AoP8j6yHDMk10vJd0fKT1lztcHcQLvH3HQn2kHci2GCxySvcac49hpXTDeNdUzcQ +I9UWo1MggNojME3WHUTiZD5DYUzuNUBTkc0kMHWy79/YNAzvF9312MSyJ0NlytBQ +ISh0z0sPSxDjW+XCi/8LGu1rrremBqvh0rNIrMMCgYEAt+C8VNHcZRZHpX3y8icP +hjuKFGgwxe3Pb/j5uKJb3ktMCUEFjFo8uXTSM5AMuhRIGTgQVIS1rG5zemSh/Wj6 +g2uWXyKEEQ+D6hGBqjP1wrlpdJE+x3btFdw5DFbn2HT9mF0bFAn6nXu4npWzEw5X +UQd67WT8OFIEpF8HLPTs5JkCgYBQlL6dmITU8Vm9mh1d+mnT23NwgnqeJATJ9xcT +sS1HE0Of4grEHw4Dw8pcOg+JLcyStE91C+kEEb1ryOdz2kS3JRI5+K6nWZeo9mKV +R1u1DZx2QbZMXcJDJriRC7y9mlNMsZVbaPPRx4fTknGHts9c6NEf4hC+y1pGVtSM +nPc6bwKBgQCrtb6srow9o0acH7mMmieDuqvT8DQ6rHWoizgneZTuvIo6SPO6nRnR +jfgfQkqr9IiLh9awSblQEN9fnddog7a1yS4cUZueiP5dmtFvp4B9Scnt+BoHpOLk +rrU2i7grAye4Cd003+pqhSERGCKSzb3fTSYiMypKsxeH2bs8nrRu2A== +-----END RSA PRIVATE KEY----- diff --git a/build/omc/etc/certs/public_key.pem b/build/omc/etc/certs/public_key.pem new file mode 100644 index 0000000..a85d9e4 --- /dev/null +++ b/build/omc/etc/certs/public_key.pem @@ -0,0 +1,8 @@ +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAlE3BYk9Rk2avUTik7lpuiHxbYTusrLYRCnr8JICRg0QsBfiuq8d4 ++4s0w3y5F7puTj23Hf8ohAeNGK6vV9nJF9utMRvT4w5hlGqvKubM2vORoNoa1usI +ixfcvMmCt/7++9endMurLY7e9aR+eeEffJtMx5G5JqxRGoFkeXBKFTOjD2adsHQ5 +zhQQUYgdQa2xzKQBYiierKKptcoVMAnnkfx7NPSRfCnzhYVeKgBFbxNXL4h7nAhL +ywWhusQc2yr2Fdojj7urtqPNfMKYapkmWKI9/zuPxMlYL49VXUqppE0rnYoiISwG +vP9iSq1tb+8BUI0ZMDcHX4elEeZYiFMJOwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/build/omc/etc/cm/cm-amf.yaml b/build/omc/etc/cm/cm-amf.yaml new file mode 100644 index 0000000..319a85f --- /dev/null +++ b/build/omc/etc/cm/cm-amf.yaml @@ -0,0 +1,49 @@ +ManagedElement: + Id: "" + UserLabel: "" + VendorName: "" + ManagedBy: "" + ManagementIpAddress: "" + SwVersion: "" + PatchInfo: "" + AdministrativeState: "" + OperationalState: "" + +AmfFunction: + Id: "" + UserLabel: "" + AdministrativeState: "" + OperationalState: "" + VnfInstanceId: "" + Fqdn: "" + SbiServiceList: "" + AmfGuamiList: "" + SnssaiList: "" + MaxUser: "" + RelativeCapacity: "" + MaxGnbNum: "" + +EpRpDynN8Amf: + Id: "" + UserLabel: "" + LocIpAddrList: "" + FarIpSubnetworkList: "" + +EpRpDynN11Amf: + Id: "" + UserLabel: "" + LocIpAddrList: "" + FarIpSubnetworkList: "" + +EpRpDynN12Amf: + Id: "" + UserLabel: "" + LocIpAddrList: "" + FarIpSubnetworkList: "" + +IPResource: + Id: "" + UserLabel: "" + InterfaceType: "" + LocIpV4AddrList: "" + LocIpV6AddrList: "" diff --git a/build/omc/etc/cm/cm-smf.yaml b/build/omc/etc/cm/cm-smf.yaml new file mode 100644 index 0000000..a1ad373 --- /dev/null +++ b/build/omc/etc/cm/cm-smf.yaml @@ -0,0 +1,48 @@ +ManagedElement: + Id: "" + UserLabel: "" + VendorName: "" + ManagedBy: "" + ManagementIpAddress: "" + SwVersion: "" + PatchInfo: "" + AdministrativeState: "" + OperationalState: "" + +SmfFunction: + Id: "" + UserLabel: "" + AdministrativeState: "" + OperationalState: "" + VnfInstanceId: "" + Fqdn: "" + SbiServiceList: "" + MaxPduSessions: "" + MaxQfi: "" + UpfList: "" + +AddrPool: + Id: "" + UserLabel: "" + AddrType: "Static" + IpVersion: "" + AddrSegList: "" + +EpRpDynN7Smf: + Id: "" + UserLabel: "" + LocIpAddrList: "" + FarIpSubnetworkList: "" + +EpRpDynN10Smf: + Id: "" + UserLabel: "" + LocIpAddrList: "" + FarIpSubnetworkList: "" + +IPResource: + Id: "" + UserLabel: "" + InterfaceType: "" + LocIpV4AddrList: "" + LocIpV6AddrList: "" \ No newline at end of file diff --git a/build/omc/etc/cm/cm-udm.yaml b/build/omc/etc/cm/cm-udm.yaml new file mode 100644 index 0000000..5e823ae --- /dev/null +++ b/build/omc/etc/cm/cm-udm.yaml @@ -0,0 +1,39 @@ +ManagedElement: + Id: "" + UserLabel: "" + VendorName: "" + ManagedBy: "" + ManagementIpAddress: "" + SwVersion: "" + PatchInfo: "" + AdministrativeState: "" + OperationalState: "" + +UdmFunction: + Id: "" + UserLabel: "" + AdministrativeState: "" + OperationalState: "" + VnfInstanceId: "" + Fqdn: "" + SbiServiceList: "" + +UdrFunction: + Id: "" + UserLabel: "" + AddrType: "Static" + IpVersion: "" + AddrSegList: "" + +AusfFunction: + Id: "" + UserLabel: "" + LocIpAddrList: "" + FarIpSubnetworkList: "" + +IPResource: + Id: "" + UserLabel: "" + InterfaceType: "" + LocIpV4AddrList: "" + LocIpV6AddrList: "" \ No newline at end of file diff --git a/build/omc/etc/cm/cm-upf.yaml b/build/omc/etc/cm/cm-upf.yaml new file mode 100644 index 0000000..d291c68 --- /dev/null +++ b/build/omc/etc/cm/cm-upf.yaml @@ -0,0 +1,141 @@ +ManagedElement: + Id: "" + UserLabel: "" + VendorName: "" + ManagedBy: "" + ManagementIpAddress: "" + SwVersion: "" + PatchInfo: "" + AdministrativeState: "" + OperationalState: "" + +InventoryUnitRack: + Id: "" + UserLabel: "" + AdministrativeState: "" + OperationalState: "" + VnfInstanceId: "" + Fqdn: "" + SbiServiceList: "" + MaxPduSessions: "" + MaxQfi: "" + UpfList: "" + +InventoryUnitShelf: + Id: "" + UserLabel: "" + VendorUnitFamilyType: "" + VendorUnitTypeNumber: "" + VendorName: "" + SerialNumber: "" + VersionNumber: "" + DateOfManufacture: "" + DateOfLastService: "" + ManufacturerData: "" + RackPosition: "" + +InventoryUnitPack: + Id: "" + UserLabel: "" + VendorUnitFamilyType: "" + VendorUnitTypeNumber: "" + VendorName: "" + SerialNumber: "" + VersionNumber: "" + DateOfManufacture: "" + DateOfLastService: "" + ManufacturerData: "" + PortsInformation: "" + PackPosition: "" + SlotsOccupied: "" + +InventoryUnitHost: + Id: "" + UserLabel: "" + VendorUnitFamilyType: "" + VendorUnitTypeNumber: "" + VendorName: "" + SerialNumber: "" + VersionNumber: "" + DateOfManufacture: "" + DateOfLastService: "" + ManufacturerData: "" + HostPosition: "" + NumberOfCpu: "" + MemSize: "" + HardDiskSize: "" + +InventoryUnitAccessory: + Id: "" + UserLabel: "" + VendorUnitFamilyType: "" + VendorUnitTypeNumber: "" + VendorName: "" + SerialNumber: "" + VersionNumber: "" + DateOfManufacture: "" + DateOfLastService: "" + ManufacturerData: "" + AccessoryPosition: "" + AccessoryType: "" + AddtionalInformation: "" + +UpfFunction: + Id: "" + UserLabel: "" + AdministrativeState: "" + OperationalState: "" + VnfInstanceId: "" + MaxQosFlows: "" + MaxThroughput: "" + +EpRpDynN9Upf: + Id: "" + UserLabel: "" + LocIpAddrList: "" + FarIpSubnetworkList: "" + +EpRpDynN3Upf: + Id: "" + UserLabel: "" + LocIpAddrList: "" + FarIpSubnetworkList: "" + +AmfFunction: + Id: "" + UserLabel: "" + AdministrativeState: "" + OperationalState: "" + VnfInstanceId: "" + Fqdn: "" + +SmfFunction: + Id: "" + UserLabel: "" + AdministrativeState: "" + OperationalState: "" + VnfInstanceId: "" + Fqdn: "" + +UdrFunction: + Id: "" + UserLabel: "" + AdministrativeState: "" + OperationalState: "" + VnfInstanceId: "" + Fqdn: "" + +AusfFunction: + Id: "" + UserLabel: "" + AdministrativeState: "" + OperationalState: "" + VnfInstanceId: "" + Fqdn: "" + +IPResource: + Id: "" + UserLabel: "" + InterfaceType: "" + LocIpV4AddrList: "" + LocIpV6AddrList: "" diff --git a/build/omc/etc/default/4a_agent.yaml b/build/omc/etc/default/4a_agent.yaml new file mode 100644 index 0000000..98de00d --- /dev/null +++ b/build/omc/etc/default/4a_agent.yaml @@ -0,0 +1,14 @@ +http: + ipv4: 0.0.0.0 + ipv6: ::0 + port: 4040 +db: + dbuser: "root" + dbpwd: "1000omc@kp!" + dbip: "127.0.0.1" + dbport: "33066" + dbname: "omc_db" +logger: + file: /usr/local/omc/log/4a/4a_agent.log + level: debug + duration: 90 diff --git a/build/omc/etc/default/crontask.yaml b/build/omc/etc/default/crontask.yaml new file mode 100644 index 0000000..f98d5f8 --- /dev/null +++ b/build/omc/etc/default/crontask.yaml @@ -0,0 +1,44 @@ +# file: log file name +# level: /trace/debug/info/warn/error/fatal, default: debug +# duration: saved days, default is 30 days +logger: + file: /usr/local/omc/log/crontask.log + level: trace + duration: 24 + count: 90 + +omc: + name: RJ_OMC_S001 + hosturi: http://127.0.0.1:3030 + hostno: S001 + province: BJ + netabbr: HX + vendor: RJ + +tasks: + file: /usr/local/omc/etc/tasks.yaml + +database: + type: mysql + user: root + password: 1000omc@kp! + host: 127.0.0.1 + port: 33066 + name: omc_db + backup: /usr/local/omc/database + +# northbound interface, cm/pm +# duration(day): saved days +# zipPeriods(day): periods of zip pm data file +northbound: + cm: + cfgfiledir: /usr/local/omc/etc/cm + xmlfiledir: /opt/omc/ftp/cm + version: V1.0.1 + duration: 30 + pm: + cfgfiledir: /usr/local/omc/etc/pm + xmlfiledir: /opt/omc/ftp/pm + version: V1.0.1 + duration: 30 + zipPeriods: 1 diff --git a/build/omc/etc/default/nbi_agent.json b/build/omc/etc/default/nbi_agent.json new file mode 100644 index 0000000..363de01 --- /dev/null +++ b/build/omc/etc/default/nbi_agent.json @@ -0,0 +1,91 @@ +{ + + "omc_name":"APP-BJ-OMC-002-B-01", + "oss_info": + { + "login_url": "https://172.29.247.106:8080/api/rest/securityManagement/v1/oauth/token", + "handshake_url": "https://172.29.247.106:8080/api/rest/securityManagement/v1/oauth/handshake", + "kpi_report_url": [ + "https://172.29.247.106:8080/api/rest/performanceManagement/v1/kpiReport1" + ], + + "grant_type":"password", + "user_name":"test", + "user_key":"test", + "max_data_len":3200, + "time_out":10 + }, + + "ca":{ + "root_cert":"/usr/local/omc/etc/certs/ca_cert.pem", + "cert":"/usr/local/omc/etc/certs/public_key.pem", + "private_key":"/usr/local/omc/etc/certs/private_key.pem", + "check":true + }, + "syslog":{ + "facility": 16, + "severity": 6, + "vendor": "RJ", + "ne_name": "AGENT_001", + "rm_uid": "1100RJHX1AGENT001", + "ne_type": "omc", + "log_file": [ + { + "table_name": "nbi_operation_log", + "log_path": "/opt/omc/ftp/log/nbi/nbi_operation.log", + "period": 1 + }, + { + "table_name": "nbi_secure_log", + "log_path": "/opt/omc/ftp/log/nbi/nbi_secure.log", + "period": 1 + } + ] + }, + "mysql":"root:1000omc@kp!@tcp(172.25.97.150:33066)/omc_db?charset=utf8mb4&parseTime=True&loc=Local", + "log_dir":"/usr/local/omc/log/nbi", + "log_file":"nbi_agent.log", + "mock_report_api":true, + "web_addr":"0.0.0.0:5050", + "cm":{ + "udm":[ + "ManagedElement", + "UdmFunction", + "UdrFunction", + "AusfFunction", + "IPResource" + ], + "upf":[ + "ManagedElement", + "InventoryUnitRack", + "InventoryUnitShelf", + "InventoryUnitPack", + "InventoryUnitHost", + "InventoryUnitAccessory", + "UpfFunction", + "EpRpDynN9Upf", + "EpRpDynN3Upf", + "AmfFunction", + "SmfFunction", + "UdrFunction", + "AusfFunction", + "IPResource" + ], + "smf":[ + "ManagedElement", + "SmfFunction", + "AddrPool", + "EpRpDynN7Smf", + "EpRpDynN10Smf", + "IPResource" + ], + "amf":[ + "ManagedElement", + "AmfFunction", + "EpRpDynN8Amf", + "EpRpDynN11Amf", + "EpRpDynN12Amf", + "IPResource" + ] + } +} diff --git a/build/omc/etc/default/nbi_alarm.json b/build/omc/etc/default/nbi_alarm.json new file mode 100644 index 0000000..fbac0b9 --- /dev/null +++ b/build/omc/etc/default/nbi_alarm.json @@ -0,0 +1,40 @@ +{ + "channel": [ + { + "tcp_port": 31232, + "bind_flag": "SMF#1101RJHX1SMF01", + "province": "BJ", + "device_code": "0001" + }, + { + "tcp_port": 31233, + "bind_flag": "UDM#1101RJHX1UDM01", + "province": "BJ", + "device_code": "0002" + }, + { + "tcp_port": 31234, + "bind_flag": "AUSF#1101RJHX1AUF01", + "province": "BJ", + "device_code": "0003" + }, + { + "tcp_port": 31235, + "bind_flag": "AMF#1101RJHX1AMF01", + "province": "BJ", + "device_code": "0004" + }, + { + "tcp_port": 31236, + "bind_flag": "UPF#1101RJHX1UPF01", + "province": "BJ", + "device_code": "0005" + } + ], + "mysql": "root:1000omc@kp!@tcp(127.0.0.1:33066)/omc_db?charset=utf8mb4&parseTime=True&loc=Local", + "ftp_root": "/opt/omc/ftp/", + "mame":"nbi alarm agent", + "heartbeat_max": 180, + "log_dir": "/usr/local/omc/log/nbi", + "log_file":"nbi_alarm.log" +} diff --git a/build/omc/etc/default/restconf.yaml b/build/omc/etc/default/restconf.yaml new file mode 100644 index 0000000..a758e11 --- /dev/null +++ b/build/omc/etc/default/restconf.yaml @@ -0,0 +1,111 @@ +# file: log file name +# level: /trace/debug/info/warn/error/fatal, default: debug +# duration: rotation time with xx hours, example: 1/12/24 hours +# count: rotation count of log, default is 30 rotation +logger: + file: /usr/local/omc/log/restagent.log + level: debug + duration: 24 + count: 90 + +# rest agent listen ipv4/v6 and port, support multiple routines +# ip: 0.0.0.0 or ::0, support IPv4/v6 +rest: + - ipv4: 0.0.0.0 + ipv6: + port: 3030 + - ipv4: + ipv6: ::0 + port: 6060 + +database: + type: mysql + user: root + password: 1000omc@kp! + host: 127.0.0.1 + port: 33066 + name: omc_db + backup: /usr/loal/omc/database + +mml: + port: 4100 + sleep: 200 + user: admin + password: admin + +ne: + user: root + etcdir: /usr/local/etc + bindir: /usr/local/bin + omcdir: /usr/local/omc + licensedir: /usr/local/etc/{neType}/license + +# chk2ne: true/false, if put OmcNeConfig parameters to NE +omc: + uriPrefix: /api/rest/oam + neType: OMC + neId: 001 + rmUID: 1100RJHX1OMC001 + neName: OMC + province: BJ + vendor: RJ + dn: 4600 + chk2ne: false + sn: 13750650 + checksign: false + backup: /usr/local/omc/backup + upload: /usr/local/omc/upload + frontUpload: /usr/local/omc/htdocs/front/upload + software: /usr/local/omc/software + license: /usr/local/omc/license + gtpUri: gtp:192.168.2.119:2152 + checkContentType: false + testMode: true + rbacMode: true + +# Alarm module setting +# Forward interface: +# email/sms +alarm: + forwardAlarm: true + email: + smtp: smtp@ruijie.com.cn + port: 25 + user: smtpuser + password: smtpuser@omc + sms: + apiURL: http://smsc.ruijie.com.cn/ + accessKeyID: xxxx + accessKeySecret: xxxx + signName: Ruijie SMSC + templateCode: 1000 + +#User authorized information +# crypt: mysql/md5/bcrypt +# token: true/false to check accessToken +# expires for session, unit: second +# Support single/multiple session of user +auth: + crypt: bcrypt + token: true + expires: 1800 + session: multiple + +# Parameter for limit number +# rmuid_maxnum: the max number of rmUID, default: 50 +# alarmid_maxnum: the max number of AlarmID, default: 50 +# pmid_maxnum: the max number of pmID, default: 50 +# subid_maxnum: the max number of subscription ID, default: 20 +# uri_maxlen: the max length of uri, default: 8192 +# rmuid_regexp: regexp pattern of rmUID +params: + rmuidmaxnum: 50 + alarmidmaxnum: 50 + pmidmaxnum: 50 + subidmaxnum: 20 + urimaxlen: 2100000 + rmuidregexp: "[0-9]{4}[A-Z]{2}[A-Z]{2}[0-9A-Z]{1}[0-9A-Z]{3}[0-9A-Z]{1,16}" + +testConfig: + enabled: true + file: /usr/local/omc/etc/testconfig.yaml \ No newline at end of file diff --git a/build/omc/etc/default/sshsvc.yaml b/build/omc/etc/default/sshsvc.yaml new file mode 100644 index 0000000..0b3e6f9 --- /dev/null +++ b/build/omc/etc/default/sshsvc.yaml @@ -0,0 +1,50 @@ +# file: log file name +# level: /trace/debug/info/warn/error/fatal, default: debug +# duration: rotation time with xx hours, example: 1/12/24 hours +# count: rotation count of log, default is 30 rotation +logger: + file: /usr/local/omc/log/sshsvc.log + level: debug + duration: 24 + count: 30 + +# file: MML log file name +# duration: rotation time with xx hours, example: 1/12/24 hours +# count: rotation count of log, default is 30 rotation +# level: cmd/ret log cmd/log cmd & result +logmml: + file: /usr/local/omc/mmllog/omcmml.log + duration: 24 + count: 30 + level: cmd + +# ssh service listen ipv4/v6 and port, support multiple routines +# ip: 0.0.0.0 or ::0, support IPv4/v6 +# session: single/multiple session for one user +sshd: + listenAddr: 0.0.0.0 + listenPort: 2222 + privateKey: /usr/local/omc/.ssh/id_rsa + maxConnNum: 20 + timeout: 1800 + session: multiple + +database: + type: mysql + user: root + password: 1000omc@kp! + host: 127.0.0.1 + port: 33066 + name: omc_db + +omc: + httpUri: http://127.0.0.1:3030 + userCrypt: bcrypt + +ne: + port: 4100 + sleep: 200 + user: admin + password: admin + + diff --git a/build/omc/etc/default/tasks-1s.yaml b/build/omc/etc/default/tasks-1s.yaml new file mode 100644 index 0000000..f39e93e --- /dev/null +++ b/build/omc/etc/default/tasks-1s.yaml @@ -0,0 +1,129 @@ +# example: +# tasks: +# - name: test # task comment +# uri: # restful uri +# params: # params of url +# interval: 30 # do sometion in the interval +# unit: Seconds #Seconds/Minutes/Hours/Days/Weeks, Monday/Tuesday/.../Sunday, +# at: 00:10:00 # do at time such as xx:xx:xx +# do: HelloWorldTask # (Do what: callback function) +# +# Attention: must restart crontask after modified this file +# +tasks: + - name: test # task comment + status: Active #active/inactive + uri: # restful uri + params: # params of http url + body: # body of http request + interval: 60 # do sometion in the interval + unit: Seconds #Seconds/Minutes/Hours/Days/Weeks, Monday/Tuesday/.../Sunday, + at: 00:10:00 # do at time such as xx:xx:xx when unit such as Day/Days/Mondays... + do: TaskHelloWorld # (Do what: callback function) + - name: clear expired history alarm + uri: /api/rest/databaseManagement/v1/omc_db/alarm + params: WHERE=now()+>+ADDDATE(event_time,+interval+(SELECT+`value`+FROM+config+WHERE+config_tag='historyDuration')+day)+and+alarm_status='0' + interval: 1 + unit: Days + at: 00:10:00 + do: TaskDeleteExpiredRecord + - name: clear deleted custom pm kpi + uri: /api/rest/databaseManagement/v1/omc_db/pm_custom_title + params: WHERE=now()+>+ADDDATE(update_time,+interval+(SELECT+`value`+FROM+config+WHERE+config_tag='keepPMCKpi')+day)+and+status='Deleted' + interval: 1 + unit: Days + at: 00:15:00 + do: TaskDeleteExpiredRecord + - name: update expired user session + uri: /api/rest/databaseManagement/v1/omc_db/session + params: WHERE=NOW()+>+ADDDATE(shake_time,+interval+expires+second)+and+status='online' + body: '{"session":{"status":"offline"}}' + interval: 30 + unit: Seconds + at: + do: TaskUpdateTable + - name: clear expired log + uri: + params: + interval: 1 + unit: Days + at: 00:50:00 + do: TaskDeleteExpiredRecord + - name: Backup measure data + uri: /api/rest/databaseManagement/v1/omc_db/measure_data + params: SQL=select+*+into+outfile+'%s'+fields+terminated+by+','+escaped+by+''+optionally+enclosed+by+''+lines+terminated+by+'\n'+from+(select+'id','date','task_id','ne_name','rm_uid','ne_type','granul_option','kpi_code','kpi_id','kpi_ext','start_time','end_time','value','timestamp'+union+select+id,date,task_id,ne_name,rm_uid,ne_type,granul_option,kpi_code,kpi_id,kpi_ext,start_time,end_time,value,timestamp+from+measure_data)+b + interval: 1 + unit: Days + at: 00:20:00 + do: TaskDBBackupCSVGetBySQL + - name: handshake to NF + status: Active + uri: /api/rest/systemManagement/v1/elementType/%s/objectType/systemState + params: + interval: 1 + unit: Seconds + at: + do: TaskHandShakeToNF + - name: Export CM from NF + uri: /api/rest/systemManagement/v1/elementType/%s/objectType/cm + params: ne_id=%s + interval: 1 + unit: Days + at: 00:15 + do: TaskExportCmFromNF + - name: Generate NRM xml file + uri: + params: + interval: 1 + unit: Day + at: 00:00,06:00,12:00,18:00 + do: GenCmXmlFile + - name: Task of Generate measure threshold alarm + status: Active + uri: /api/rest/faultManagement/v1/elementType/%s/objectType/alarms + params: RJHXEMSPM10200 + interval: 10 + unit: Seconds + at: + do: TaskGenMeasureThresholdAlarm + - name: Task of Generate license alarm + uri: /api/rest/faultManagement/v1/elementType/%s/objectType/alarms + params: RJHXEMSCM10100 + interval: 1 + unit: Days + at: 00:30 + do: TaskGenLicenseAlarm + - name: Task of Generate NE system state alarm + status: Active + uri: /api/rest/faultManagement/v1/elementType/%s/objectType/alarms + params: RJHXEMSSM10000 + interval: 1 + unit: Seconds + at: + do: TaskGenNeStateAlarm + - name: Task of Generate Measure Report Timeout + status: Active + uri: /api/rest/faultManagement/v1/elementType/%s/objectType/alarms + params: RJHXEMSPM10201 + interval: 10 + unit: Seconds + at: + do: TaskGenMeasureReportTimeoutAlarm +# - name: Import CM to NF +# uri: /api/rest/systemManagement/v1/elementType/udm/objectType/cm +# params: ne_id=SZ_01 +# interval: 15 +# unit: Seconds +# at: +# do: TaskImportCmToNF +crontab: +# - name: 每隔1分钟执行 +# tab: 0 */1 * * * ? // crontab: rule like linux crontab +# do: CronHelloWorldTask // function name to call +# params: + - name: Generate PM xml file + status: Active + tab: 5,20,35,50 * * * * + do: GenPmXmlFile + uri: this is uri + params: Generating PM xml file diff --git a/build/omc/etc/default/tasks.yaml b/build/omc/etc/default/tasks.yaml new file mode 100644 index 0000000..f0e6561 --- /dev/null +++ b/build/omc/etc/default/tasks.yaml @@ -0,0 +1,171 @@ +# example: +# tasks: +# - name: test # task comment +# uri: # restful uri +# params: # params of url +# interval: 30 # do sometion in the interval +# unit: Seconds #Seconds/Minutes/Hours/Days/Weeks, Monday/Tuesday/.../Sunday, +# at: 00:10:00 # do at time such as xx:xx:xx +# do: HelloWorldTask # (Do what: callback function) +# +# Attention: must restart crontask after modified this file +# +tasks: + - name: test # task comment + status: Active #active/inactive + uri: # restful uri + params: # params of http url + body: # body of http request + interval: 60 # do sometion in the interval + unit: Seconds #Seconds/Minutes/Hours/Days/Weeks, Monday/Tuesday/.../Sunday, + at: 00:10:00 # do at time such as xx:xx:xx when unit such as Day/Days/Mondays... + do: TaskHelloWorld # (Do what: callback function) + - name: clear expired history alarm + uri: /api/rest/databaseManagement/v1/omc_db/alarm + params: WHERE=now()+>+ADDDATE(event_time,+interval+(SELECT+`value`+FROM+config+WHERE+config_tag='historyDuration')+day)+and+alarm_status='0' + interval: 1 + unit: Days + at: 00:10:00 + do: TaskDeleteExpiredRecord + - name: clear deleted custom pm kpi + uri: /api/rest/databaseManagement/v1/omc_db/pm_custom_title + params: WHERE=now()+>+ADDDATE(update_time,+interval+(SELECT+`value`+FROM+config+WHERE+config_tag='keepPMCKpi')+day)+and+status='Deleted' + interval: 1 + unit: Days + at: 00:15:00 + do: TaskDeleteExpiredRecord + - name: update expired user session + uri: /api/rest/databaseManagement/v1/omc_db/session + params: WHERE=NOW()+>+ADDDATE(shake_time,+interval+expires+second)+and+status='online' + body: '{"session":{"status":"offline"}}' + interval: 30 + unit: Seconds + at: + do: TaskUpdateTable + - name: clear expired log + uri: + params: + interval: 1 + unit: Days + at: 00:50:00 + do: TaskDeleteExpiredRecord + - name: Backup measure data + uri: /api/rest/databaseManagement/v1/omc_db/measure_data + params: SQL=select+*+into+outfile+'%s'+fields+terminated+by+','+escaped+by+''+optionally+enclosed+by+''+lines+terminated+by+'\n'+from+(select+'id','date','task_id','ne_name','rm_uid','ne_type','granul_option','kpi_code','kpi_id','kpi_ext','start_time','end_time','value','timestamp'+union+select+id,date,task_id,ne_name,rm_uid,ne_type,granul_option,kpi_code,kpi_id,kpi_ext,start_time,end_time,value,timestamp+from+measure_data)+b + interval: 1 + unit: Days + at: 00:20:00 + do: TaskDBBackupCSVGetBySQL + - name: Backup operation log + uri: /api/rest/databaseManagement/v1/omc_db/operation_log + params: SQL=select+*+into+outfile+'%s'+fields+terminated+by+','+escaped+by+''+optionally+enclosed+by+''+lines+terminated+by+'\n'+from+(select+'op_id','account_name','op_ip','subsys_tag','op_type','op_content','op_result','begin_time','end_time','vnf_flag','log_time'+union+select+op_id,account_name,op_ip,subsys_tag,op_type,op_content,op_result,begin_time,end_time,vnf_flag,log_time+from+operation_log)+b + interval: 1 + unit: Days + at: 00:26:00 + do: TaskDBBackupCSVGetBySQL + - name: Backup security log + uri: /api/rest/databaseManagement/v1/omc_db/security_log + params: SQL=select+*+into+outfile+'%s'+fields+terminated+by+','+escaped+by+''+optionally+enclosed+by+''+lines+terminated+by+'\n'+from+(select+'id','account_name','account_type','op_ip','op_type','op_content','op_result','op_time'+union+select+id,account_name,account_type,op_ip,op_type,op_content,op_result,op_time+from+security_log)+b + interval: 1 + unit: Days + at: 00:28:00 + do: TaskDBBackupCSVGetBySQL + - name: Backup alarm log + uri: /api/rest/databaseManagement/v1/omc_db/alarm_log + params: SQL=select+*+into+outfile+'%s'+fields+terminated+by+','+escaped+by+''+optionally+enclosed+by+''+lines+terminated+by+'\n'+from+(select+'id','ne_type','ne_id','alarm_seq','alarm_id','alarm_code','alarm_status','event_time','log_time'+union+select+id,ne_type,ne_id,alarm_seq,alarm_id,alarm_code,alarm_status,event_time,log_time+from+alarm_log)+b + interval: 1 + unit: Days + at: 00:30:00 + do: TaskDBBackupCSVGetBySQL + - name: handshake to NF + status: Active + uri: /api/rest/systemManagement/v1/elementType/%s/objectType/systemState + params: + interval: 10 + unit: Seconds + at: + do: TaskHandShakeToNF + - name: Export CM from NF + uri: /api/rest/systemManagement/v1/elementType/%s/objectType/cm + params: ne_id=%s + interval: 1 + unit: Days + at: 00:15 + do: TaskExportCmFromNF + - name: Generate NRM xml file + uri: + params: + interval: 1 + unit: Day + at: 00:00,06:00,12:00,18:00 + do: GenCmXmlFile + - name: Task of Generate measure threshold alarm + status: Active + uri: /api/rest/faultManagement/v1/elementType/%s/objectType/alarms + params: RJHXEMSPM10200 + interval: 10 + unit: Seconds + at: + do: TaskGenMeasureThresholdAlarm + - name: Task of Generate license alarm + status: Inactive + uri: /api/rest/faultManagement/v1/elementType/%s/objectType/alarms + params: RJHXEMSCM10100 + interval: 1 + unit: Days + at: 00:30 + do: TaskGenLicenseAlarm + - name: Task of Generate NE system state alarm + status: Active + uri: /api/rest/faultManagement/v1/elementType/%s/objectType/alarms + params: RJHXEMSSM10000 + interval: 5 + unit: Seconds + at: + do: TaskGenNeStateAlarm + - name: Task of Generate Measure Report Timeout + status: Active + uri: /api/rest/faultManagement/v1/elementType/%s/objectType/alarms + params: RJHXEMSPM10201 + interval: 10 + unit: Seconds + at: + do: TaskGenMeasureReportTimeoutAlarm + - name: Monitor proces list and write system log + uri: /api/rest/databaseManagement/v1/omc_db/system_log + params: + body: + interval: 10 + unit: Seconds + at: + do: TaskWriteSystemLog + - name: Copy log to /opt/omc/ftp/log + uri: + params: cp -rf /usr/local/omc/database/*.csv /opt/omc/ftp/log + interval: 10 + unit: Minutes + at: + do: TaskRunShellCommand +# - name: Import CM to NF +# uri: /api/rest/systemManagement/v1/elementType/udm/objectType/cm +# params: ne_id=SZ_01 +# interval: 15 +# unit: Seconds +# at: +# do: TaskImportCmToNF +crontab: +# - name: 每隔1分钟执行 +# tab: 0 */1 * * * ? // crontab: rule like linux crontab +# do: CronHelloWorldTask // function name to call +# params: + - name: Generate PM xml file + status: Active + tab: 5,20,35,50 * * * * + do: GenPmXmlFile + uri: this is uri + params: Generating PM xml file +# - name: Import CM to NF +# tab: 0 * * * * * +# do: TaskImportCmToNF +# uri: /api/rest/systemManagement/v1/elementType/udm/objectType/cm +# params: ne_id=SZ_01 \ No newline at end of file diff --git a/build/omc/etc/default/testconfig.yaml b/build/omc/etc/default/testconfig.yaml new file mode 100644 index 0000000..1d0b592 --- /dev/null +++ b/build/omc/etc/default/testconfig.yaml @@ -0,0 +1,19 @@ +UDM: + capUsed: 16 + featureEnabled: [N8,N10,N13,N12] +AUSF: + capUsed: 16 + featureEnabled: [N12] +AMF: + capUsed: 16 + featureEnabled: [N1,N2,N8,N11,N12,N14,N15] +SMF: + capUsed: 16 + featureEnabled: [N4,N7,N10,N11] +UPF: + capUsed: 16 + featureEnabled: [N3,N4,N6,N9] +OMC: + capUsed: 0 + featureEnabled: [] + diff --git a/build/omc/etc/schema/cm-schema.xsd b/build/omc/etc/schema/cm-schema.xsd new file mode 100644 index 0000000..5e7e46c --- /dev/null +++ b/build/omc/etc/schema/cm-schema.xsd @@ -0,0 +1,76 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/build/omc/etc/schema/pm-schema.xsd b/build/omc/etc/schema/pm-schema.xsd new file mode 100644 index 0000000..bb01840 --- /dev/null +++ b/build/omc/etc/schema/pm-schema.xsd @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/build/systemd/4a_agent.service b/build/systemd/4a_agent.service new file mode 100644 index 0000000..6adecef --- /dev/null +++ b/build/systemd/4a_agent.service @@ -0,0 +1,16 @@ +[Unit] +Description=4A agent daemon +After=network-online.target + +[Service] +Type=simple +LimitNOFILE=65535 + +Restart=always +ExecStart=/usr/local/omc/run/4a_agent -c /usr/local/omc/etc/4a_agent.yaml +RestartSec=2 +RestartPreventExitStatus=1 +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target \ No newline at end of file diff --git a/build/systemd/crontask.service b/build/systemd/crontask.service new file mode 100644 index 0000000..941d2bf --- /dev/null +++ b/build/systemd/crontask.service @@ -0,0 +1,16 @@ +[Unit] +Description=Cron task daemon +After=network-online.target + +[Service] +Type=simple +LimitNOFILE=65535 + +Restart=always +ExecStart=/usr/local/omc/bin/crontask -c /usr/local/omc/etc/crontask.yaml +RestartSec=2 +RestartPreventExitStatus=1 +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target \ No newline at end of file diff --git a/build/systemd/nbi_agent.service b/build/systemd/nbi_agent.service new file mode 100644 index 0000000..2a74b46 --- /dev/null +++ b/build/systemd/nbi_agent.service @@ -0,0 +1,16 @@ +[Unit] +Description=NBI agent daemon +After=network-online.target + +[Service] +Type=simple +LimitNOFILE=65535 + +Restart=always +ExecStart=/usr/local/omc/run/nbi_agent -c /usr/local/omc/etc/nbi_agent.json +RestartSec=2 +RestartPreventExitStatus=1 +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target \ No newline at end of file diff --git a/build/systemd/nbi_alarm.service b/build/systemd/nbi_alarm.service new file mode 100644 index 0000000..fb76494 --- /dev/null +++ b/build/systemd/nbi_alarm.service @@ -0,0 +1,16 @@ +[Unit] +Description=NBI alarm agent daemon +After=network-online.target + +[Service] +Type=simple +LimitNOFILE=65535 + +Restart=always +ExecStart=/usr/local/omc/run/nbi_alarm -c /usr/local/omc/etc/nbi_alarm.json +RestartSec=2 +RestartPreventExitStatus=1 +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target \ No newline at end of file diff --git a/build/systemd/restagent.service b/build/systemd/restagent.service new file mode 100644 index 0000000..c44fe65 --- /dev/null +++ b/build/systemd/restagent.service @@ -0,0 +1,16 @@ +[Unit] +Description=REST agent daemon +After=network-online.target + +[Service] +Type=simple +LimitNOFILE=65535 + +Restart=always +ExecStart=/usr/local/omc/bin/restagent -c /usr/local/omc/etc/restconf.yaml +RestartSec=2 +RestartPreventExitStatus=1 +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target \ No newline at end of file diff --git a/build/systemd/sshsvc.service b/build/systemd/sshsvc.service new file mode 100644 index 0000000..662941e --- /dev/null +++ b/build/systemd/sshsvc.service @@ -0,0 +1,16 @@ +[Unit] +Description=SSH MML service daemon +After=network-online.target + +[Service] +Type=simple +LimitNOFILE=65535 + +Restart=always +ExecStart=/usr/local/omc/run/sshsvc -c /usr/local/omc/etc/sshsvc.yaml +RestartSec=2 +RestartPreventExitStatus=1 +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target \ No newline at end of file diff --git a/debbuild/DEBIAN/control b/debbuild/DEBIAN/control new file mode 100644 index 0000000..27a5f6e --- /dev/null +++ b/debbuild/DEBIAN/control @@ -0,0 +1,7 @@ +Package: OMC +Version: 1 +Section: AGrandTech +Prioritt: optional +Architecture: amd64 +Maintainer: Simon Zhangsz +Description: OMC diff --git a/debbuild/DEBIAN/postinst b/debbuild/DEBIAN/postinst new file mode 100644 index 0000000..0dce485 --- /dev/null +++ b/debbuild/DEBIAN/postinst @@ -0,0 +1,17 @@ +# !/bin/sh +echo "" +echo "* To start/stop/restart rest agent service run:" +echo " sudo systemctl start/stop/restart restagent.service" +echo " sudo systemctl start/stop/restart crontask.service" +echo "" + +systemctl enable restagent.service +systemctl enable crontask.service +systemctl daemon-reload +if ! id -u omc >/dev/null 2>&1 ; then + useradd -d /opt/omc -m -s /bin/bash -p1000ftp@kp omc; + mkdir -p /opt/omc/ftp +else + echo "user omc exist"; +fi + diff --git a/debbuild/DEBIAN/postrm b/debbuild/DEBIAN/postrm new file mode 100644 index 0000000..f9480e8 --- /dev/null +++ b/debbuild/DEBIAN/postrm @@ -0,0 +1,9 @@ +# !/bin/bash +systemctl stop nginx.service +systemctl stop restagent.service +systemctl stop crontask.service +#rm -rf /usr/local/omc +rm -rf /etc/nginx/conf.d/omc.conf +systemctl disable restagent.service +systemctl disable crontask.service +systemctl daemon-reload \ No newline at end of file diff --git a/debbuild/usr/local/omc/etc/omc/default/restconf.yaml b/debbuild/usr/local/omc/etc/omc/default/restconf.yaml new file mode 100644 index 0000000..cbfe1b1 --- /dev/null +++ b/debbuild/usr/local/omc/etc/omc/default/restconf.yaml @@ -0,0 +1,16 @@ + +logger: + file: /usr/local/omc/log/restagent.log + level: debug + +rest: + addr: 0.0.0.0 + port: 3030 + +database: + type: mysql + user: root + password: 1000omc@kp! + host: 127.0.0.1 + port: 33066 + name: omc_db diff --git a/rpmbuild/SPECS/omc.spec b/rpmbuild/SPECS/omc.spec new file mode 100644 index 0000000..68079b5 --- /dev/null +++ b/rpmbuild/SPECS/omc.spec @@ -0,0 +1,122 @@ +%define __check_files %{nil} +%define __spec_build_pre %{nil} +%define __arch_install_post %{nil} + +Name: OMC +Summary: Ruijie 5GC OMC +Version: 5GC16.1.1 +Release: 20230531 +Vendor: RuijIe Network +URL: https://www.ruijie.com.cn/ +License: commercial +Group: Applications/Communications +#BuildRoot: $PWD/rpmoutput +%description +Ruijie's 5GC OMC + +%prep +mkdir -p ${RPM_BUILD_ROOT} +cd ${RPM_BUILD_ROOT} +mkdir -p usr/local/omc/ +mkdir -p etc/nginx/conf.d +mkdir -p lib/systemd/system/ + +cd ${RPM_BUILD_DIR} +cp -rf omc/.ssh ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/mmllog ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/mmlhome ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/bin ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/run ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/etc ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/htdocs ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/log ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/backup ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/upload ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/software ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/license ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -rf omc/database ${RPM_BUILD_ROOT}/usr/local/omc/ +cp -f nginx/omc.conf ${RPM_BUILD_ROOT}/etc/nginx/conf.d/ +cp -f systemd/restagent.service ${RPM_BUILD_ROOT}/lib/systemd/system/restagent.service +cp -f systemd/crontask.service ${RPM_BUILD_ROOT}/lib/systemd/system/crontask.service +cp -f systemd/sshsvc.service ${RPM_BUILD_ROOT}/lib/systemd/system/sshsvc.service +cp -f systemd/nbi_alarm.service ${RPM_BUILD_ROOT}/lib/systemd/system/nbi_alarm.service +cp -f systemd/nbi_agent.service ${RPM_BUILD_ROOT}/lib/systemd/system/nbi_agent.service +cp -f systemd/4a_agent.service ${RPM_BUILD_ROOT}/lib/systemd/system/4a_agent.service + +%build +#cd %{buildroot}/.. +#make + +# 安装完成后执行 +%post +if ! id -u omc >/dev/null 2>&1 ; then useradd -d /opt/omc -m -s /bin/bash -p1000ftp@kp omc; else echo "user omc exist"; fi +mkdir -p /opt/omc/ftp +mkdir -p /opt/omc/ftp/log +chmod +rx /usr/local/omc +chmod +rx /usr/local/omc/* +chmod +x /usr/local/omc/run/* +chmod -R 755 /usr/local/omc/htdocs/front +systemctl daemon-reload +systemctl enable restagent.service +systemctl enable crontask.service +systemctl enable sshsvc.service +systemctl enable nbi_alarm.service +systemctl enable nbi_agent.service +systemctl enable 4a_agent.service +systemctl enable nginx.service +systemctl restart nginx.service + +# 卸载时执行 +%postun +if [ "$1" = "0" ] ; then +systemctl stop nginx.service +systemctl stop restagent.service +systemctl stop crontask.service +systemctl stop sshsvc.service +systemctl stop nbi_alarm.service +systemctl stop nbi_agent.service +systemctl stop 4a_agent.service +#rm -rf /usr/local/omc +rm -rf /etc/nginx/conf.d/omc.conf +systemctl disable restagent.service +systemctl disable crontask.service +systemctl disable sshsvc.service +systemctl disable nbi_alarm.service +systemctl disable nbi_agent.service +systemctl disable 4a_agent.service +systemctl daemon-reload +else +systemctl daemon-reload +systemctl restart nginx.service +systemctl restart restagent.service +systemctl restart crontask.service +systemctl restart sshsvc.service +systemctl restart nbi_alarm.service +systemctl restart nbi_agent.service +systemctl restart 4a_agent.service +fi + +# 规定那些文件必须放入安装程序中,如果没有就报错 +%files +%defattr(-,root,root) +/usr/local/omc/.ssh +/usr/local/omc/mmllog +/usr/local/omc/mmlhome +/usr/local/omc/bin +/usr/local/omc/run +/usr/local/omc/etc +/usr/local/omc/htdocs +/usr/local/omc/log +/usr/local/omc/backup +/usr/local/omc/upload +/usr/local/omc/software +/usr/local/omc/license +/usr/local/omc/database +/etc/nginx/conf.d/omc.conf +/lib/systemd/system/restagent.service +/lib/systemd/system/crontask.service +/lib/systemd/system/sshsvc.service +/lib/systemd/system/nbi_alarm.service +/lib/systemd/system/nbi_agent.service +/lib/systemd/system/4a_agent.service +