川大ATC维护

适配参数维护注意事项:
1、低高告警抑制区设置:
RDP服务器的MRDP进程负责目标低高告警抑制功能的处理判断,FDP服务器的RDM进程负责数据同步并将抑制区的开关状态通知给MRDP,这两个进程都需要更新适配参赛重启才能生效!
假如只在RDM更新重启,SDD可以设置告警抑制区的开关,并且也显示抑制区地图,但是抑制区不生效!低高告警抑制区打开后SDD显示的地图颜色可以在sdd.ini配置文件定义修改。
2、对于“危险区DAN”,告警判断与目标相关与否没有关系,即不管是否相关都告警;RES和DAN与是否在管制扇区没有关系,与是否在太原空域也没有关系。
3、在SDD---info---“auto handle”中可以设置在冲突、低高告警判断时,选择目标条件是“相关的目标“还是“雷达目标——不管是否相关”。
4、RDM进程正常运行时,主态RDM会根据SDD操作如席位划分,告警抑制区开关设置等操作实时更新本机rdm适配参数内容,并同步更新到从态RDM的rdm适配参数内容,所以更新RDM适配参数,为了避免旧的实时数据相互同步影响新分发的实时数据的有效性,需要同时关闭主备FDP服务器的RDM进程后,再分发参数,然后启动一个RDM进程——这样就保证读取的是新分发的适配参数的数据,不会受另一个RDM(此时为关闭状态)同步的影响,运行三五分钟后启动另一个。
5、SDD上的标牌标注和移交操作是由FDP进程完成。
6、LINUX6.5日志:守护进程rsyslogd。lsof -p PID列出进程pid所打开的所有文件;  fuser -v /var/log/boot.log显示打开文件boot.log的进程信息,显示plymouthd进程(開機過程的訊息傳遞與動畫執行:使用plymouthd 服務搭配plymouth 指令來傳遞動畫與訊息)打开boot.log而不是rsyslogd进程。打开 /boot/grub/menu.lst , 去掉 “rhgb quiet”这两个参数 ,然后重启,可以关闭plymouthd运行——测试不行,程序还在?,这样boot.log就不会无限量增加(实际中达到44G,引起根目录空间占用率达到100%)
*:boot.log里记录mca.linux运行的日志,即SDD运行时ctrl+alt+f1显示的内容会记录到boot.log 
*:新安装的系统root登录,plymouth未运行,创建atc用户后登录plymouth也未运行。                            
7、dbm.linux进程根据参数配置(UTC18:30即北京时间24:30)从各个服务器和席位读取日志存入数据库,完成后清除本机上的日志文件 ,并在凌晨4点生成统计室记账数据。   
8、虚拟化中,从模板克隆出来的虚拟机网卡都会被命名为eth1,而有些程序或者脚本,涉及到网卡的,默认写的是eth0,这时就存在要将eth1改为eth0的问题:在配置文件/etc/udev/rules.d/70-persistent-net.rules中将表示新网卡的行注释掉,然后将表示老网卡的行中mac地址改成新网卡的mac地址,重启即可。
9、service NetworkManager stop服务关闭后,系统-首选项-网络连接(nm-connection-editor):网卡配置功能被禁止。 注通过nm-connection-editor配置的网卡名称为:ifcfg-Auto_eth0。
10、 root登录后通过系统-管理-打印可以调出打印机配置工具,对应的命令是:system-config-printer,需要root权限才能打开。
11、RHEL6.5操作系统安装后,根目录/默认为50G,系统运行一段时间检查发现/usr/log/boot.log文件持续增大,后台服务器大于40G,导致根目录使用率达到100%,原因是川大的应用程序不断往boot.log写日志,FSDP/RDP/SDP服务器一天超过1G。禁止boot.log变大的方法: gedit /etc/logrotate.d/syslog, 在文本最后添加下面的内容:

/var/log/boot.log

{   rotate 0

   size 1k   

gedit /home/atc/.bashrc

在文本最后添加下面内容:

sudo /usr/sbin/logrotate–f /etc/logrotate.conf
但是这样也无效,plymouth进程日志记录原来在/var/log/boot.log,现在转到/var/spool/plymouth/boot.log,还是使用空间持续增大。通过 在/home/atc/.bashrc添加sudo /usr/bin/plymouth --quit ;将该进程退出自然就没日志问题了。
12、ctrl+c和ctrl+z都是中断命令,ctrl+c是强制中断程序的执行,而ctrl+z的是将任务中断,但是此任务并没有结束,只是维持挂起的状态,用户可以使用fg/bg操作继续前台或后台的任务,fg命令重新启动前台被中断的任务,bg命令把被中断的任务放在后台执行。
13、二所ATC自动拍法DEP报,通过转报机到川大ATC接收处理后,在动态(计划)中填写起飞时间并完成相关。二所ATC系统拍发DEP报,假如FPL报有DOF项(DOF/160713:包含年月日)则DEP也有,若FPL报没有DOF项,则DEP也没有(该项位置填写:-0),这样在北京时间8点,即UTC时间0点会存在跨日的问题:如FPL报在16年7月13日8点之前(假如07::50),它的DOF为DOF/160713,实起时间08:01,则二所自动派发DEP报的DOF项为DOF/160713,但实际已经是UTC时间14号了,这样处理是符合规范的,但是川大ATC系统不能正确处理DEP报:在动态(计划)中填写起飞时间并完成相关。需核实。
14、在HP Z640安装RHEL6.5操作系统,选择“install or upgrade an existing  system”会停在detect hardware处,选择“install system with basic video driver”就OK。
15、关于MSAW马赛克低高告警:二所ATC系统按定义马赛克区域的4个坐标计算告警,川大是以左上角的坐标依次向右向下递增4KM计算马赛克区域的告警。
16、FDO启动需要连接数据库,否则无法启动,数据库IP在/home/atc/zzzz/fdo/bin/resource/config/setting_sys.properties中配置:
db_ip=168.192.11.67  //实验室没有集群IP为168.192.11.65
17、DPR数据维护,文本文件导入数据库时(例如马赛克区域数据)必须是Unix文本格式,每行结尾只有“<换行>”,即"\n",否则导入会失败!——Windows系统里面,每行结尾是“<换行><回车 >”,即“\n\r——”回车”Carriage Return)和“换行”(Line Feed)。现象是Windows里的文件在Unix/Mac下打开的话,在每行的结尾可能会多出一个^M符号。使用命令unix2dos filename或dos2unix filename互相转换。
18、川大ATC两项告警(STCA/MSAW)及预告警 (PSTCA/PMSAW)只有在有管制扇区的席位告警,另可以在SDD席位的INFO-AutoHandle中点选"Coupled Alert" 设置是否只有相关couple的目标才告警。在SDD席位上“SET UP”-"RADAR"为MRT时告警,单雷达MONO时也会告警( 得有DUPE告警时才会出现STCA/MSAW )。STCA告警会自动连测量线实时显示距离(但预告警PSTCA不会)。
19、FDO进程在配置文件setting_sys.properties中:mess_consult_type=0  //报文值班处理结果以用户分级还是部门分级:0用户分级,1部门分级
设置为用户分级后,站调2个FDO需以不同的用户登录,这样才能各个用户分别处理报文而互不影响。
20、FDP/SMPC/DPR需要安装ORACLE数据库客户端,安装过程中需要安装光盘Packages目录下的以下rpm包(64位):

libaio-devel-0.3.107-10.el6.x86_64.rpm

sysstat-9.0.4-22.el6.x86_64.rpm

unixODBC-2.2.14-12.el6_3.x86_64.rpm

unixODBC-devel-2.2.14-12.el6_3.x86_64.rpm

运行dbm.linux程序会提示替换2个包,64位替换为32位,因为FDP程序是32位的。"libclntsh.so.11.1",还需要在/home/atc/.bash_profile加环境变量:
umask 022
export ORACLE_SID=atc
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/client_1
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/u01/app/oracle/product/11.2.0/client_1/lib:/usr/local/bin:/lib64:
/home/atc/zzzz/lib/linux:/home/atc/zzzz/scmpub/lib/linux:/home/atc/zzzz/hmipub/lib/linux
export LD_LIBRARY_PATH
export PATH=$ORACLE_HOME/bin:$PATH
ulimit -c unlimited
21 、FDD上的收发报时间记录的是DB服务器本身的时间,不是转报机的收报时间;而且 SMPC监控时钟守护进程正常只是表明进程在运行,并不能据此判断系统对时正常与否

参考资料    http://blog.csdn.net/iloli/article/details/6431757
在打开NTP服务之前先要手动运行同步ntpdate 168.192.11.63,因为:
1). 因为根据NTP的设置,如果你的系统时间比正确时间要“”快“”的话那么NTP是不会帮你调整的,所以要么你把时间设置回去,要么先做一个手动同步;(DB-1出现过该问题,快了4分钟,导致不对时)
2). 当你的时间设置和NTP服务器的时间相差很大的时候,NTP会花上较长一段时间进行调整.所以手动同步可以减少这段时间。
*配置文件中的driftfile是什么?
我们每一个system clock的频率都有小小的误差,这个就是为什么机器运行一段时间后会不精确. NTP会自动来监测我们时钟的误差值并予以调整.但问题是这是一个冗长的过程,所以它会把记录下来的误差先写入driftfile.这样即使你重新开机以后之前的计算结果也就不会丢失了。
然后启动服务service ntpd start;chkconfig --level 35 ntpd on
启动了NTP的服务,如何判断系统时间到底和服务器同步了没有呢? NTP提供了一个查看工具: ntpq (NTP query)
运行ntpq命令来监测服务器的运行.使用watch命令来查看一段时间内服务器各项数值的变化:watch ntpq -p
其中:
remote: 它指的就是本地机器所连接的远程NTP服务器;
    * 它告诉我们远端的服务器已经被确认为我们的主NTP Server,我们系统的时间将由这台机器所提供
    + 它将作为辅助的NTP Server和带有*号的服务器一起为我们提供同步服务. 当*号服务器不可用时它就可以接管
    - 远程服务器被clustering algorithm认为是不合格的NTP Server
    x 远程服务器不可用    
offset: 这是个最关键的值, 它告诉了我们本地机和服务器之间的时间差别. offset越接近于0,我们就和服务器的时间越接近。

通过ntpstat 查看每次更新间隔、时间校正情况,如:

# ntpstat

synchronised to NTP server (168.192.11.63) at stratum 2    #本NTP服务器层次为2,已向210.72.145.44 NTP同步过

   time correct to within 93 ms                                               #时间校正到相差93ms之内

   polling server every 1024 s                                                 #每1024秒会向上级NTP轮询更新一次时间

另外需注意:

1)概念:计算机有两个时钟:一个称之为硬件时间时钟(RTC),还有一个称之为系统时钟(System Clock)

硬件时钟是指嵌在主板上的特殊的电路, 它的存在就是平时我们关机之后还可以计算时间的原因;

系统时钟就是操作系统的kernel所用来计算时间的时钟. 它从1970年1月1日00:00:00 UTC时间到目前为止秒数总和的值 在Linux下系统时间在开机的时候会和硬件时间同步(synchronization),之后也就各自独立运行了;

*那么既然两个时钟独自运行,那么时间久了必然就会产生误差了。

LINUX的NTP服务器必须记得将从上级NTP更新的时间从系统时间写到硬件里去:# hwclock --systohc 

     NTP一般只会同步system clock. 但是如果我们也要同步RTC(hwclock)的话那么只需要把下面的选项打开就可以了

      代码:

      # vi /etc/sysconfig/ntpd

      SYNC_HWCLOCK=yes

2)客户端的日期必须要设置正确,不能超出正常时间24小时,不然会因为安全原因被拒绝更新。其次客户端的时区必须要设置好,以确保不会更新成其它时区的时间。

3)ts.linux的配置文件timeserver.ini,目前设置为收到连续的 10 个时间值(秒)没有跳变,就对系统进行对时,而不管时间偏差有多大,二所ATC是超过3秒不对时,并报错:GPSERR。存在FDP服务器时间跳变(不能管制移交、掉相关、不能挂CFL高度,不能发报)的分险,措施1,增加参数,时间偏差超过设定值报错提示,不对时(已采纳:在timeserver.ini增加参数NoReviseMaxSpan=50);措施2,建议将TS进程放到DB服务器,这样分险小些。

22、IP地址设置子网掩码必须为255.255.255.0,例如:ifcfg-bong0配置文件NETMASK=255.255.255.0,误输入为NETMAS T, 则子网掩码默认 设为255.255.0.0,虽然网络通,但监控室主机是灰色的。
23、刀片服务器的网卡是逻辑虚拟的,MAC地址从VC模块得到,即刀片服务器插在刀箱不同的槽位,需先通过VC完成该槽位的网卡设置,操作系统启动后网卡的MAC地址不一样。所以换了槽位后需要删除:/etc/udev/rules.d/ 70-persistent-net.rules 文件,在LINUX重启时,/lib/udev/write_net_rules程序会自动根据新的MAC地址生成该文件,目的是为了按需求完成不同MAC地址的网卡和逻辑名称eth*的配对,并按需求完成网卡绑定。
24、川大多雷达融合内部参数:FalseTrackGate=13km,FalseTrackAltitudeGate=280m:超出该设置值会当成野值不参与融合,新单雷达坐标与融合雷达航迹相距越远,融合权重按比例降低,防止跳变。
25、川大SDD假如20秒没有收到雷达数据,会删除显示的目标。
26、RHEL6.8手动运行FDO:      java -jar FDO.jar
27、假如没有生成“ 次日计划 ”、“ 今日动态 ”和“ 最新动态 ”,通过PL/SQL工具连接数据库打开“ SQL窗口 ”执行以下 脚本
            begin
                  proc_plan_generator('2017-08-15','1','FAG');
            end;
28、FDA程序菜单栏的显示选择配置,修改/fda/bin/resource/config/user.properties配置文件:tabItems=1,2,3,4,5,7例如不显示最后一个菜单栏就删除7。
29、升级后(2017-8-16)川大ATC系统可配置SSR=2000和空白的航班不自动打印进程单,但二所系统还打印SSR为空白的进程单。
30、在航空公司表里设置了“签派代理”,系统派发AFTN格式的DEP/ARR报还会代理该航空公司发一份SITA格式的AD/AA报文。
31、假如rdm_data.ini配置文件有问题,会造成系统实时数据相关功能失效,如:炮射点不能在其它席位同步显示,告警区/抑制区失效等问题。
32、席位间手动移交失效,在SDD上 移交 操作后,标牌没有提示,对方席位也没有 提示 接收,其它功能均正常,将FDP进程从FDP2切换到FDP1后恢复,后重启FDP2的FDP进程,测试几架飞机后又出现前述线性,操作系统重启后恢复正常。
33、一分钟内连续在FDP1/2服务器切换FDP进程的主备状态,同步过程异常,造成FDP丢失300多条动态(丢失的动态在SDD本地存储(为了提高相关性能)和FDD(存储在数据库)中还在),收到DEP后由于FDP中对应动态已丢失,DEP生成新动态,但是在FDD和SDD上出现两条动态,出现和FDP服务进程维护的动态不一致的异常情况。
34、SDD本地存储的TAG LIST和FPL LIST计划动态与FDP不一致的处理方法1、重启SDD会重新从FDP服务进程同步动态;2、同时关闭主备FDP进程,SDD已相关的目标保持相关,新起飞的目标未相关,先启一个FDP进程,FDP进程会删除所有SDD本地存的动态(FPL LIST/TAG LIST为空),SDD上所有目标掉相关,然后开始逐步向SDD同步动态,SDD上目标逐步开始相关,大约5-8分钟全部完成相关,在期间还未相关的目标不能手动相关,也不能挂件标牌,稍等一会儿FDP会自动相关。
35、川大是报文发送/接收FDP都要处理(二所处理接收报文)。但是FDP对发送/接收两个方向报文的处理逻辑不是完全一样:如下案例(2017-11-9):

 

ZCZC GRD3077 090716 
FF ZBYNZXZX
090715 ZBYNZPZX
 (CHG-YLKSH-ZBYN0600-ZLIC-DOF/171109
-13/ZBYN0730
-15 /K0750S0780 OMKAK B215 MIMOK
-16/ZLIC0125 ZLLL)
NNNN

由于有-15编组的原因,该CHG报在站调发送FDP能处理,且正常关联计划;但是 接收FDP 不处理 ,且在FDP日志里没有任何记录,但是在FDD上发送/接收报文都能收到,只是 由于接收FDP不处理 ,在FDD上没有关联计划。删掉-15编组,发送/接收均能正常处理。已联系修正。
36、FDP服务器的fdoagent进程产生的LOG文件不自动清理,能到到13G
37、修改RES限制区的高度参数,需生成dan_res_airspace.adp和res.rd两个二进制参数,分发dan_res_airspace.adp至SDP服务器生效后,修改后的告警参数已生效,假如不生成res.rd的话,SDD对应DAIW的高度值不改变,需将res.rd分发至FDP,重启RDM后,SDD上的显示值才会更新。
38、在FDD上运行SDD添加席位代码:通过DPR在“席位主机表”(该表导出2个二进制文件:RD文件sec_assign.rd;ADP文件posassign.adp)增加一行:ACC1a/区域管制席1a/167(ACC1ip31是166,ip32是167)//ACC,“二进制文件导出”RD-扇区分配表(sec_assign.rd)分发至RDM (先关闭RDM,删除RD目录,分发适应性数据至FDP然后启动RDM进程,RDM进程不需要ADP二进制参数)。SMPC监控ACC-FDO-1增加SDD监控项,在process.ini增加对应席位(席位17:ACC-FDO-1)的SDD进程配置。
39、FDP服务器启动SwitchAgent失败原因之一:SwitchAgent引用库文件的环境变量(/home/atc/.bash_profile)按顺序依次找库文件,避免旧的库文件路径排在前面。
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/client_1
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/u01/app/oracle/product/11.2.0/client_1/lib:/usr/local/bin:/lib64:/home/atc/zzzz /lib/linux :/home/atc/zzzz/ scmpub/lib/linux :/home/atc/zzzz/hmipub/lib/linux

(FDP和SMPC服务器需要配置PATH:/home/atc/.bash_profile)
40、 SITA报文解码匹配的正则表达式: regularexpression.xml (regularexp.xml)
41、RD适应性数据增加表34:系统各项实时控制参数表(sys_parameters.rd),RDM进程使用sys_parameters.rd参数文件,对应在数据库中也需添加该表,表列要一致;列不一致会出现管制移交出去又退回管制状态,即使在SDD开启“Coupled Alert”不相关目标在限制区告警不能屏蔽等问题。

42、device.ini中[TCPSVR]
SERVER3=MH_FDP_TYPE,MH_RDM_TYPE,MH_FDPTEL_TYPE //运行在SERVER3上的TCP服务进程,各进程间以逗号分隔
SERVER4=MH_FDP_TYPE,MH_RDM_TYPE,MH_FDPTEL_TYPE //运行在SERVER4上的TCP服务进程,各进程间以逗号分隔
其中SERVER3=168.192.11.63    SERVER4=168.192.11.64
表示在fdp服务器上MH_FDP_TYPE,MH_RDM_TYPE,MH_FDPTEL_TYPE三个进程使用TCP方式,将其删除则使用UDP方式,重启对应FDP/RDM/FDPTEL进程即使用UDP方式,可提高效率(最好也更新SDD的device.ini并重启SDD):如SDD中FPL LIST通过UDP方式从FDP服务进程获取,升级后FPL LIST包含昨日今日和明日的计划,条数较以前大约1600,增加到3200,使用UDP方式优化速度,但是实际使用中还是慢,有时移交操作可达8秒,通过优化,删除 预计起飞时间(如有实际起飞时 间则使用该时 )+15小时 (如fdp.ini中没有该配置项的 默认值 )之前的计划( FDP和SDD的FPL LIST完全一致 );进一步优化,可以针对FIN(结束)状态的计划,单独设置时间参数,如可以设置为删除结束状态超过“3小时”的计划。计划条数少了可明显改善移交和相关的速度。
43、假如FDD主机的绑定网卡名称不是bond0,需要修改setting_sys_local.properties参数文件中ip_networkInterfaceName=bond0,例如改为ip_networkInterfaceName=br0,否则启动FDO提示获取IP错误。
44、18年1月24号问题,在SDD上更换31/13跑道,造成FDP进程异常,系统长达4-10分钟不能移交、挂CFL高度、FDO不更新报文,且FDP进程无法进行手动主备切换。FDP日志记录系统自动给大量的航班(SDD中FPL LIST的计划)挂CFL高度(RunWay=31/2100 13/1800:fdp.ini中起飞航班自动挂的CFL设置高度),导致fdp进程无法响应席位的移交挂CFL高度等操作,4-10分钟后自己恢复,系统所有功能正常。通过优化,切换跑道集中更新必要的(SDD中FPL LIST处于预激活/控制状态,且没有收到起飞/落地报)的计划的CFL(处于未来状态和收到起飞/落地报的计划不改),测试使用正常,但是在刚切换完跑道,不能手动切换fdp进程主备状态,约1分钟后可以。——所以关键是干预的计划少就不会造成FDP进程卡阻的现象。
45、出区域航班AIDC移交完成,还是绿色管制状态,只是AIDC状态显示“F”,飞出区域5分钟去相关。假如改为AIDC移交完成,标牌变为棕色非管制状态,SDD按下UCtrl不显示。
46、fdp进程崩溃,gdb  core.18175   
Core was generated by `/home/atc/zzzz/fdp/bin/fdp.linux'.
Program terminated with signal 11, Segmentation fault.
#0  0x0805472a in ?? ()

signal 11 - SIGSEGV   引用空指针成员

47、配置文件/fdo/bin/resource/config/setting_sys.properties中udp_sendPort=22222,udp_broadcastAddress=168.192.11.255,在fdo发报:
tcpdump udp port 22222
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on bond0, link-type EN10MB (Ethernet), capture size 65535 bytes
07:01:14.710070 IP ACC-FDO-1.22222 > 168.192.11.255.10086: UDP, length 255

说明FDO发报使用UDP广播方式。
48、配置文件/fdo/bin/resource/config/setting_sys.properties中plan_next2CurrentHour=4,是次日计划提前4小时显示在今日动态里;plan_yesKeepHour=4,是(跨日)过了北京时24点最新动态里保留预计起飞时间在4小时之内的计划。

49、太原川大ATC系统设计容量是限制SDD席位不能大于50个,不限制主机节点数。
50、DPR、FDO重新连接数据库提示密码过期,需重设密码才能连上。但是之前已连接的不会断开,但现象是FDO的最新报文不更新。
51、在sdd.ini中[GENERAL]加上
//TA高度设置
TALOW=2700
TAMIDDLE=3000
TAHIGH=3300
作用只是在SDD界面显示TA值, QNH<=979时 ,过渡高度TA显示值为2700; QNH>=1031时 ,过渡高度 TA显示值为3300;两者之间显示3000。并不参与计算和修正,真正使用的参数在adp_qnh_airspace配置文件中(目前设置在ZBYNQNH区域内低于3550就采用QNH做高度修正,而且不会根据QNH值加减300米)。

52、主用ATC系统RUNMODE切换在SMPC完成,由fdp服务器的RDM进程实现,假如失效的话关闭RDM删除RD适配数据,恢复默认值。

53、在sdd.ini[GENERAL]加上参数ShowSpeedZ=1    标牌显示上升下降率。
54、SDD单雷达回放的数据记录的是RDP处理后的数据。



2018-7-23


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7970627/viewspace-2120900/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/7970627/viewspace-2120900/

你可能感兴趣的:(川大ATC维护)