同样使用OBD快速部署,配置文件mini-distributed-with-obproxy-example.yaml: 根据实际情况在官网下载: https://gitee.com/oceanbase/...2.1检查OBD离线RPM安装包 通过官网去下载离线包上传到自己服务器 [root@oceanbase1 ~]# cd /opt [root@oceanbase1 opt]# ll ob-deploy...-1.0.2-2.el7.x86_64.rpm 2.2本机安装OBD [root@oceanbase1 opt]# rpm -ivh ob-deploy-1.0.2-2.el7.x86_64.rpm...远程获取安装的remote文件改个名,让obd执行时候不走外网的镜像,走本地的镜像 mv /root/.obd/mirror/remote /root/.obd/mirror/remotebak 3.4...https://mirrors.aliyun.com/oceanbase/OceanBase.repo [root@oceanbase1 ~]# yum install -y ob-deploy 4.obd
要获取更多Jerry的原创文章,请关注公众号"汪子熙"
但中国最多的智能汽车玩家莫过于OBD智能产品。2007年1月1日,中国所有出厂车辆都被强制要求加装OBDII接口,这一决定让汽车已普遍拥有OBD接口。...而智能与信息密不可分,因此真正的车联网或者智能汽车必然会用到OBD接口。...OBD接口打破汽车信息孤岛 OBD全称为车载诊断系统,其最初服务对象自然是维修技师,他们通过专用设备接入OBD设备并查阅诊断码便可快速定位故障,甚至提前发现故障隐患。...这些数据成为智能OBD设备的输入,经过处理之后便成为有价值的信息,甚至形成新的模式。...OBD智能设备玩家不同思路 OBD智能设备的玩家有着不同的思路,解决用户不同的问题,也有不同更多模式。
) { // 进入obd_process_config函数实际调用osd_process_config obd_process_config(......client_obd_setup(obd, lcfg) // lustre端mgc的log初始化 mgc_llog_init(NULL, obd) { llog_setup...的obd用来发送quota和查询fld....->obd_kset, obd->obd_debugfs_entry); } } } } // osd端mgc的设置 server_mgc_set_fs...) { obd_set_info_async(...
*obd; obd = class_name2obd(mgcname); // obd_set_info_async 实际是调用 mgc_obd_ops中的mgc_set_info_async...rc = obd_set_info_async(NULL, obd->obd_self_export, strlen(KEY_MGSSEC), KEY_MGSSEC, strlen(...(NULL, &exp, obd, uuid, data, NULL); out: lsi->lsi_mgc = obd; } ll_fill_super函数 // lustre文件系统名称的最大长度...(sbi); // 客户端连接mds,实际调用的是osc_obd_ops中的o_connect函数 err = obd_connect(NULL, &sbi->ll_md_exp, sbi->ll_md_obd...= class_name2obd(dt); // 客户端连接osc,实际调用的是osc_obd_ops中的o_connect err = obd_connect(NULL, &sbi->ll_dt_exp
MGC是整个lustre文件系统中第一个初始化的OBD设备。...OBD的数据和元数据操作是通过obd_ops和md_ops的结构来定义。MGC中仅仅涉及数据的操作。...仅仅涉及到OBD的数据操作,其中通过定义mgc_obd_ops函数操作表来操作MGC的涉及到的操作。...来注册lustre的MDC OBD.class_setup函数来设置MDC的OBD.这里class_setup实际调用的是mgc_setup....OBD通信方式 lustre中每个OBD会有import和export.比如2个OBD通信,import是负责发送请求和接受响应;export负责接受请求和发送响应。
还支持CAN-TP、OBD-II、UDS多种上层协议的通信。针对CAN总线协议设备的模糊测试及漏洞挖掘而言,CANard无疑是一个功能完整的基础平台。...CANard 工具套件是一个Python库,目标是让我们与CAN网络的交互更为简单方便。...*远程请求标志(Remote Request Flag) *标示符扩展标志(Extended ID Flag) -数据长度码:4比特位 -数据域:0至8字节的数据 CANard库把CAN帧封装成Python...4.2 OBD-II OBD-II标准常用于车辆基本的诊断。该标准使用CAN-TP协议的一个子集。虽然OBD-II协议在读取车辆的基本数据上非常有用,但除此之外,它不能提供更多的功能。...CANard库提供的协议实现类:ObdInterface,实现了发送OBD-II协议数据的请求与接收响应的功能。
~]# 或者 离线安装 OBD 1....下载 OBD 离线 RPM 安装包。 2. 运行以下命令安装 OBD。...mirror Manage a component repository for OBD....update Update OBD....# 查看obd管理的集群列表 [root@obs ~]# obd cluster list +----------------------------------------------------
(NULL, &exp, obd, uuid, data, NULL); } lustre_start_simple函数是设置和初始化mgc obd的服务,期间会做初始化mgc obd的obd_import...(obd, &obd->obd_uuid); // obd的注册到客户端本地内核中 rc = class_register_device(obd); } } } /...obd_setup(obd, lcfg) { mgc_setup(obd,lcfg) { // 设置mgc obd的obd_import的链接 client_obd_setup...) { // 设置lustre 客户端log处理函数 llog_setup(env, obd, &obd->obd_olg,LLOG_CONFIG_REPL_CTXT, obd,&llog_client_ops...*exp, struct obd_device *obd, struct obd_uuid *cluuid, struct obd_connect_data *data, void
// mgc的obd_ops定义的函数,class_process_config 根据命令调用对对应的函数 static const struct obd_ops mgc_obd_ops = {...obd = class_name2obd(mgcname); // 设置mgc obd的信息,调用mgc_set_info_async rc = obd_set_info_async(NULL...rc = obd_connect(NULL, &exp, obd, uuid, data, NULL); } lustre_start_simple :根据配置注册、申请、初始化mgc的struct obd_device...mgc的OBD会经历LCFG_ATTACH->LCFG_SETUP,其中class_process_config是处理整个逻辑的核心 /**************** OBD start ******...{ exp = class_new_export_self(obd, &obd->obd_uuid); rc = class_register_device(obd); obd->obd_attached
三、CAN协议 OBD-II接口 下次,当你坐在司机位时,看看你左膝盖周围,你会找到类似于上图的接口,这就是OBD-II接口。...通过使用OBD-II访问模块,你可以读取参数ID(PID),其包含了汽车的状态信息。维基百科有一篇很好的文章来介绍OBD-II模块和PIDs....这里我们不谈论OBD-II的细节(请看维基百科的详细说明),我们讨论一下它的大哥UDS. 1.统一诊断服务(UNIFIED DIAGNOSTIC SERVICES) 虽然许多汽车爱好者对OBD-II都非常熟悉...这是让人遗憾的,因为OBD-II只是UDS的一个子集。OBD-II只允许了一些有限的服务,而UDS却是厂商和技术人员所使用的协议,它提供了所有的服务,包含诊断、校准、固件更新。...该开源硬件工具让你可以使用Python脚本来收发消息。
Try `obd --help` for more information....env Environment variables for OBD mirror Manage a component repository for OBD....To disable OBD telemetry, run the `obd env set TELEMETRY_MODE 0` command....To enable OBD telemetry data printing, run `obd env set TELEMETRY_LOG_MODE 1`....-v, --verbose Activate verbose output. obd cluster list 可以查看部署了哪些 OceanBase 集群,obd cluster display可以查看指定集群的拓扑结构
参考资料《XX市重型柴油车OBD远程在线监控平台系统需求规格说明书》《XX市重型柴油车OBD远程在线监控平台设计原型》总体设计 范围该文档是借助于当前系统的逻辑模型导出目标系统的逻辑模型,解决整个项目系统的...3DPF故障DPF故障菜单统计车辆DPF故障次数,当OBD发送的信息中的DPF压差大于等于设定的阈值时,DPF故障次数统计一次4NOx排放超标NOx排放超标菜单统计车辆NOx超标次数,OBD发送的信息中的...8在线/离线监控统计所有安装过OBD的车辆信息在线情况,在线时间可选24小时,3天,7天,根据选择的时间可统计所有车辆在查询时间范围内的在线离线情况9车辆管理统计所有安装过OBD的车辆信息,点击企业信息...16查询统计OBD数据查询柴油车安装OBD,联网成功后,发送车辆信息到平台,记录车辆的状态,可通过发送的信息判断NO值、DPF压差、经纬度等各类数值是否正常17OBD诊断信息柴油车安装OBD,联网成功后...,OBD诊断信息发送到平台,记录OBD设备的状态,可通过发送的信息中的MIL状态,判断OBD故障情况18里程统计对车辆的行驶里程数进行统计,包括开始里程、结束里程、累计里程以加强形成对车辆驶管理19油耗统计对车辆油耗进行统计
OceanBase 提供了多种部署方式,我们这里采用命令行部署,官方提供了集群管理工具OBD(俗称黑屏部署)。...[ob@localhost ~]$ which obd ~/.oceanbase-all-in-one/obd/usr/bin/obd [ob@localhost ~]$ which obclient...When a depends exists, OBD gets this value from the oceanbase-ce of the depends....When a depends exists, OBD gets this value from the oceanbase-ce of the depends....: [ob@localhost ~]$ obd cluster list [ob@localhost ~]$ obd cluster display obtest 操作集群 前面启动集群的时候已经打印出了连接集群的方式
最后是在OBD环节的一些安全措施,比如说防篡改。...系统启动的时候自己会检查整个软件的完备性,如果说你要是篡改了代码,它是不工作的,有好多这样的技术,譬如说像TEE,可信运营环境,这是我认为将来在OBD里面应该说是很重要的一个技术。...这些相关的安全技术我认为已经不缺了,或者说是会不会因为OBD、因为车联网再创造出一些新的安全技术,至少当前这些技术在应用时是可以优先考虑的。因为这些技术跟摄像头安全技术的要求基本上是一致的。
数据结构(这个数据结构是客户端通过obd_import发送请求到lustre的服务端)中维护struct ptlrpc_connection结构来维护lustre服务端的链接。...其中obd_import->imp_state维护了enum lustre_imp_state定义的链接状态. struct obd_import { // 引用计数 refcount_t...->imp_sending_list struct list_head imp_sending_list; // delayed队列obd_import->imp_delayed_list struct...device for this import */ struct obd_device *imp_obd; struct ptlrpc_sec *imp_sec; rwlock_t...(NULL, imp->imp_obd->obd_self_export, obd, &obd->obd_uuid, &ocd, NULL) } } } ptlrpc_reconnect_import
zone2 OB Server2 lhrob3 172.72.8.13 2881 28813 zone3 OB Server3 lhrobproxy 172.72.8.14 2883 28814 用于OBD...根据这个yaml文件即可自动创建集群 cat > /tmp/obd_observer_obproxy.yaml <<"EOF" ## Only need to configure when remote...初始化集群 sh /etc/profile.d/obd.sh obd cluster deploy lhrob311cluster -c /tmp/obd_observer_obproxy.yaml...-f obd cluster list obd cluster display lhrob311cluster obd cluster start lhrob311cluster -- 修改参数...obd cluster edit-config lhrob311cluster 执行过程: [root@lhrobproxy soft]# obd cluster deploy lhrob311cluster
许多汽车车主为了实现汽车原本非自带的功能,会选择接入一些外接设备,其中比较常见的外接设备是OBD盒子。...车主通过安装OBD盒子,可以实时获得汽车内部的车辆诊断信息,部分OBD盒子还可实现导航、抬头显示(HUD)等功能。...海特实验室在测试过程中发现,市面上绝大多数的OBD盒子均存在严重的安全隐患,攻击者可通过OBD盒子向汽车内部网络发送攻击指令。 ?
OBD根据这个yaml文件即可自动创建集群。...安装集群 sh /etc/profile.d/obd.sh obd cluster deploy lhrob312cluster -c /tmp/obd_observer_obproxy.yaml -...f obd cluster list obd cluster display lhrob312cluster -- 集群初始化 obd cluster start lhrob312cluster...mariadb-devel 执行过程: [root@lhrobproxy ~]# obd cluster deploy lhrob312cluster -c /tmp/obd_observer_obproxy.yaml...[root@lhrobproxy ~]# obd cluster deploy obagent-only -c /tmp/obd_obagent_only.yaml Download obagent-
领取专属 10元无门槛券
手把手带您无忧上云