Clisoft SOS设置Server和Project

Clisoft SOS设置Server和Project

一、关于SOS Servers、Clients、Projects和Work Areas

以下三个图是官方文档中介绍的三种情况

图1:带有两个客户端的SOS服务器
![[SOS_Admin-07.png]]

图2:使用本地缓存服务器
在这里插入图片描述

图3:远程设计团队的缓存服务器
![[SOS_Admin-09.png]]

因为SOS软件需要频繁的读写许多文件,因此使用网络存储可能会遇到延迟。
为了获得最佳性能,可以将项目仓库和缓存设置在本地硬盘上,而不是使用网络存储。
如果用户必须使用网络存储作为工作区,并且工作区很大,可以将SOS_STARTUP_USE_TMP设置为1优化启动过程,这种优化允许SOS客户端在读取之前将工作区数据库文件复制到本地机器的/tmp目录。

当所有数据都位于网络存储设备上,下图是官方文档中建议的目录结构,其中nfs代表网络存储。
在这里插入图片描述

二、使用SOSAdmin应用程序

  • 使用管理员账户启动sosadmin
[bhlu@master ~]$ sosadmin
# sosadmin help 获取命令列表
# sosadmin help command 获取指定命令的详细帮助

![[sos-01.png]]

服务状态值,Running一列

描述
SOS软件版本号服务器正在正常运行。
no服务器不在运行。
空白没有为此主服务器定义缓存服务器。
??服务器已定义,但SOSAdmin尚未确定服务器状态。

SOSAdmin窗口命令

命令描述
New创建一个新的SOS主服务器或缓存服务器。
Edit更新SOS服务器的设置。
Delete永久删除一个SOS服务器。删除服务器不会删除项目仓库。
Startup启动一个未运行的SOS服务器。
Shutdown停止一个正在运行的SOS服务器。
Reread Config读取服务器配置文件中的更改。
Ping检查选定的主服务器和缓存服务器的状态。
Ping All检查所有服务器的状态并更新运行状态列。
Projects创建或管理项目。
Project Map定义参考项目的服务器,这些项目的文件可能在其他项目中使用。
Clients查看谁已连接,向连接的客户端发送消息,在关闭服务器之前,关闭与客户端的连接,或退出客户端。
Exit退出。

三、配置Primary Server和Cache Server

  1. 在 SOSAdmin 窗口中,点击New
    在这里插入图片描述
  2. 按照下列建议配置新服务器(按图上的即可)
    1. Symbolic name中输入SOS服务器名称
    2. 选择Set up a new primary server
    3. 点击Recommend,会自动选择有效的Host NameHost Port(如果你在不同的主机上启动了SOSAdmin,推荐可能不正确)
    4. 点击Repository Path旁边的Browse,指定项目仓库的父目录。
    5. Repository Backup指定一个用于存储PostgreSQL连续备份的位置。
    6. (可选)Client Authentication Required配置客户端认证,这里一般选择No,如需配置,可以查看官方文档。
    7. (可选)Use SSL指定使用SSL加密服务器之间的通信
    8. 选择Set up a new cache server
    9. 点击Recommend,会自动选择有效的Host NameHost Port
    10. Cache Path指定项目仓库的缓存目录。
    11. Cache Backup指定项目仓库的缓存目录备份位置。
    12. Update Mode
      • 如果您的多个站点位于相近的时区,请选择Immediate(立即)
      • 如果您只有一个站点,请选择On Demand(按需)
      • 如果您有多个分布在广泛时区的站点,请选择 Every并指定一个60分钟的间隔。
  3. 点击OK
  4. 然后在 SOSAdmin 窗口中点击选中新建的 Server ,然后点击Startup,再弹出的窗口中点击Yes即可。

关于Primary/Cache Advanced Setting...
在这里插入图片描述

高级设置的默认值适用于一个主服务器和一个远程缓存服务器,可容纳50名用户。对于更多或更少的用户,请使用下表中的值:

每个守护进程的最大用户数102550100200300500
设置
最大数据库连接数203560110210310510
共享缓冲区 (MB)128128128128256384640
线程数(主服务器)8122450100150250
线程数(缓存服务器)12183675150225375

想要修改已创建的 Server 高级配置,必须先关闭 Server
在 SOSAdmin 窗口中选中 Server ,点击Edit,然后进行修改即可。修改之后再启动 Server 即可。
或者可以使用sosadm_edit_server_settings.sh调整(本人还没有试过)

  • 设置开启自启SOS服务器
vim /etc/rc.local
# 添加下面几行即可

# Start SOS Servers
CLIOSOFT_DIR=path_to_SOS_software
export CLIOSOFT_DIR
echo "Starting SOS Server server_name"
su owner_of_sos_server -c "$CLIOSOFT_DIR/bin/sosadmin startup server_name" >/dev/null 2>&1

四、配置Project

  1. 选中创建的 Server ,然后点击Project,出现项目窗口。
    ![[Clisoft SOS设置Server和Project-03.png]]
  2. 点击New,创建新项目对话框打开。
    在这里插入图片描述
  3. 点击Create即可
  4. 配置相关(以下主要是解释为主,大家根据实际情况配置)
# 每个project都有一个对应的sosd.cfg,默认的sosd.cfg在$CLIOSOFT_DIR/data/sosd.cfg
[bhlu@master ~]$ vim /sos/project/repo/trinity.rep/trinity/setup/sosd.cfg
# 以下内容 -- 代表注释

OPEN_WORLD yes;    -- yes代表服务器的用户都可以访问,no代表仅配置文件中声明的管理员、成员、访客和其他角色的用户访问,默认是yes

-- 全局定义(开始) --
ADMIN bhlu, lulu;  -- 管理员:可以读取、写入、删除任何文件,以及更改文件的所有权,不受文件权限的限制
MEMBER test01, test02, test03;  -- 成员:可以读取和写入文件,除非个别文件具有更严格的权限限制。
GUEST rajeevm;  -- 访客:可以读取数据,除非个别文件具有更严格的权限限制,但他们不能进行更改。

-- 定义角色VERIF_ENGR并为之分配权限,COMMAND后面跟的命令可以执行
ROLE VERIF_ENGR {
	COMMAND definetag, tag, snapshot;
}

-- 为角色分配用户
VERIF_ENGR johnc, richarg;

-- 项目默认访问权限控制,访问属性:owner(自己),group(),world(所有)
ACL {
	READ world;      -- 读,如history,diff命令
	WRITE group;     -- 写,如tag,snapshot,modattr命令
	MODIFY_ACL yes;  -- 控制用户是否可以修改他们创建的文件和目录的访问控制
}

-- 全局定义(结束) --


-- 组定义(开始) --
-- "design" 组定义
GROUP design {
	MEMBER test01, bhlu;  -- 组成员
	VERIF_ENGR narayanm;  -- 组角色成员
}

-- "layout" 组定义
GROUP layout {
	MEMBER test02, lulu;  -- 组成员
	VERIF_ENGR renoir;  -- 组角色成员
	-- 定义 "layout" 的默认访问控制,解释上面已经有了
	ACL {
		READ world;
		WRITE owner;
		MODIFY_ACL yes; 
	}
}
-- 组定义(结束) --


-- 用户特定定义(开始) --
USER bhlu {
	DEFAULT_GROUP design;  -- 定义bhlu的默认组,design组必须在这之前定义好
}

USER lulu {
	DEFAULT_GROUP all_my_groups;  -- 定义lulu的默认组,all_my_groups代表lulu所在所有组都有相同的权限
}
-- 用户特定定义(结束) --
  1. 以下是我配置示例
[bhlu@master ~]$ vim /sos/project/repo/trinity.rep/trinity/setup/sosd.cfg

ADMIN bhlu;
OPEN_WORLD no;
MEMBER lulu, qcsong, jpchen, yjiang;

ACL {
	READ world;
	WRITE owner;
	MODIFY_ACL yes;
}

GROUP analog {
	MEMBER yjiang;
	ACL {
		READ world;
		WRITE owner;
		MODIFY_ACL yes;
	}
}

GROUP design {
	MEMBER bhlu, qcsong; 
	ACL {
		READ world;
		WRITE owner;
		MODIFY_ACL yes;
	}
}

GROUP layout {
	MEMBER lulu, jpchen;
	ACL {
		READ world;
		WRITE group;
		MODIFY_ACL yes;
	}
}
  1. 读取配置,SOSAdmin 窗口选中 thinity 这个 Server ,然后点击Reread Config,在弹出的对话框中点击Yes,如果哪边填写错误,会有提示。

  • 在安装目录中,也有相关模板可作参考

服务器配置文件模板:$CLIOSOFT_DIR/data/templates/sosd.cfg

模板特性
functional_groups示例:将用户组织成功能组,如模拟设计工程师、版图工程师和RTL工程师。
定义访问权限的示例,以便用户只能修改他们组拥有的单元格和文件。
predefined_rso_and_populate设置默认修订搜索顺序的示例,以及指定自动填充新工作区的目录。
redefine_member_privilege指定用户可以运行哪些命令的示例。
use_reference_projects指定参考项目及其默认修订搜索顺序的示例。
use_trac_issue_tracking配置SOS与TRAC问题跟踪系统服务器通信的示例。

客户端配置文件模板:$CLIOSOFT_DIR/data/templates/sos.cfg

模板特性
add_exclude_patterns添加新文件后缀模式到排除文件列表的示例。
email_notification文件检入、检出或标签修改时生成电子邮件通知的触发器示例。
set_group_by_cadence_view_name基于视图名称设置新创建或添加的DFII cellviews组所有权的触发器示例。

五、SOSAdmin命令行快速参考

不带任何参数时,sosadmin命令会打开SOSAdmin图形用户界面。要使用命令行界面,请将下表中显示的参数添加到命令行中。

命令描述
clients列出连接到服务器的客户端,向客户端发送命令,关闭与客户端的连接,或退出客户端。
create创建一个新的服务器。
createproject为指定的SOS服务器创建一个新项目。
deleteproject删除一个现有的项目。
getcfg打印项目的配置文件。
help打印帮助。
info获取关于SOS服务器的信息。
list列出已定义的服务器。
lockproject在仓库上放置一个锁。
unlockproject移除仓库上的锁。
listconsumers打印关于指定服务器和项目的引用报告。
ping测试服务器是否正在运行。
projects列出服务器管理的项目。
purgeaudit清除项目审计跟踪日志文件直到指定的时间段。
putcfg为项目安装新的配置文件。
query在没有工作区的情况下获取工作区和项目特定信息。
readcfg重新读取服务器配置文件。
shell在服务器上运行程序或脚本。
showdiffs生成关于两个RSO之间差异的报告。
showlabels显示与指定标签匹配的仓库中所有修订版本。
shutdown关闭服务器。
startup启动服务器。

要获取任何命令的更多信息,请输入:
sosadmin help command_name

例如,要列出所有已定义的服务器:
sosadmin list

要检查服务器PRJ_SRV是否正在运行:
sosadmin ping PRJ_SRV

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/951736.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Windows 安装 Docker 和 Docker Compose

🚀 作者主页: 有来技术 🔥 开源项目: youlai-mall ︱vue3-element-admin︱youlai-boot︱vue-uniapp-template 🌺 仓库主页: GitCode︱ Gitee ︱ Github 💖 欢迎点赞 👍 收藏 ⭐评论 …

深入理解plt和got表

前言 plt表和got表是和链接过程相关的表。我们知道,一个可执行文件的生成过程需要经过预处理,编译,汇编,链接四个过程。链接又分为静态链接和动态链接。静态链接是发生在程序执行之前,动态链接是发生在程序执行中。 …

深入学习RocketMQ

参考&#xff1a;RocketMQ从从入门到精通_rocketmq入门到精通-CSDN博客 1、消息的类型 普通消息 顺序消息 延时消息 批量消息 事务消息 2、在java中使用 2.1、pom.xml中加入依赖 <dependency><groupId>org.apache.rocketmq</groupId><artifactId…

renben-openstack-使用操作

管理员操作 (1)上传一个qcow2格式的centos7镜像 (2)管理员------>云主机类型------>创建云主机类型 名称&#xff1a;Centos7 VCPU数量&#xff1a;1 内存&#xff1a; 1024 根磁盘&#xff1a; 10G 其他的默认 点击创建云主机类型即可 界面会显示如下 创建公网络 (1)创建…

电脑硬盘系统迁移及问题处理

一、系统迁移准备 1、确认你的电脑主板是否支持安装两块硬盘,如电脑主板有多个M2硬盘接口,我们将新硬盘安装到主板上,原来的老硬盘安装在第二个接口上,主板只有一个M2接口的话可以使用移动硬盘盒。 2、新硬盘安装好后,我们进入原来的系统,在 此电脑–右键–管理–磁盘管…

PySide6-UI界面设计

导论&#xff1a; PySide6和PyQt都是Python对Qt框架的绑定&#xff0c;允许开发者使用Qt创建平台的GUI应用程序。如果你正在开发商业项目&#xff0c;或者需要使用最新的QT6特性&#xff0c;PySide6是一个更好的选择。如果你更倾向于一个成熟的社区和丰富的资源&#xff0c;Py…

ExplaineR:集成K-means聚类算法的SHAP可解释性分析 | 可视化混淆矩阵、决策曲线、模型评估与各类SHAP图

集成K-means聚类算法的SHAP可解释性分析 加载数据集并训练机器学习模型 SHAP 分析以提取特征对预测的影响 通过混淆矩阵可视化模型性能 决策曲线分析 模型评估&#xff08;多指标和ROC曲线的目视检查&#xff09; 带注释阈值的 ROC 曲线 加载 SHAP 结果以进行下游分析 与…

Banshee Stealer新变种正借Apple XProtect加密技术躲避杀毒软件

网络安全研究人员发现了一种针对 macOS 的新型信息窃取恶意软件变种&#xff0c;隐蔽性更强&#xff0c;名为Banshee Stealer。 Check Point Research 在2024 年 9 月底检测到了这一新版本&#xff0c;并在最新的分析报告中表示&#xff1a;2024年底该恶意软件源代码泄露后&…

GoLand下载安装教程

一、goland环境配置 1.下载地址 https://golang.google.cn/dl/ 2.下载安装 3.添加环境变量 4.测试环境变量 输出Hello,World! 说明环境配置成功 二、goland安装 1.下载安装 https://www.jetbrains.com/go/download/download-thanks.html 2.激活使用 SFXUSA86FM-eyJsaWNlbnNl…

C语言:枚举类型

一、枚举类型的声明 枚举顾名思义就是一一列举。我们可以把可能的取值一一列举。比如我们现实生活中&#xff1a; 星期一到星期日是有限的7天&#xff0c;可以一一列举 &#xff1b;性别有&#xff1a;男、女、保密&#xff0c;也可以一一列举 &#xff1b;月份有12个月&#x…

宝塔安装mongodb后,写脚本监控运行状态,关闭后自动重启

最近项目用上了mongodb&#xff0c;但是每天晚上 mongodb都回自动关闭&#xff0c;没办法 只能写个监视服务的脚本 在关闭的话就直接重启&#xff0c;创建个计划任务&#xff0c;每三分钟执行一次 # 检查mongo是否还在进程中 countps aux|grep mongo| grep -v grep |wc -l echo…

蓝桥杯嵌入式速通(1)

1.工程准备 创建一文件夹存放自己的代码&#xff0c;并在mdk中include上文件夹地址 把所有自身代码的头文件都放在headfile头文件中&#xff0c;之后只需要在新的文件中引用headfile即可 headfile中先提前可加入 #include "stdio.h" #include "string.h"…

Apache Hop从入门到精通 第一课 揭开Apache Hop神秘面纱

一、Apache Hop是什么&#xff1f; 1、Apache Hop&#xff0c;简称Hop&#xff0c;全称为Hop Orchestration Platform&#xff0c;即Hop 工作编排平台&#xff0c;是一个数据编排和数据工程平台&#xff0c;旨在促进数据和元数据编排的所有方面。Hop让你专注于你想要解决的问题…

会员制营销与门店业绩提升:以开源AI智能名片S2B2C商城小程序为例的深度剖析

摘要&#xff1a;在数字化时代&#xff0c;会员制营销已成为企业提升门店业绩、增强客户黏性的重要策略。然而&#xff0c;仅仅将会员制营销视为提升业绩的手段&#xff0c;显然过于笼统&#xff0c;缺乏精准性。本文基于“业绩客量客单回头次数”的公式&#xff0c;深入探讨了…

Idea-离线安装SonarLint插件地址

地址&#xff1a; SonarQube for IDE - IntelliJ IDEs Plugin | Marketplace 选择Install Plugin from Disk..&#xff0c;选中下载好的插件&#xff0c;然后重启idea

高斯函数Gaussian绘制matlab

高斯 约翰卡尔弗里德里希高斯&#xff0c;&#xff08;德语&#xff1a;Johann Carl Friedrich Gau&#xff0c;英语&#xff1a;Gauss&#xff0c;拉丁语&#xff1a;Carolus Fridericus Gauss&#xff09;1777年4月30日–1855年2月23日&#xff0c;德国著名数学家、物理学家…

vscode支持ssh远程开发

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 一、生成ssh使用的公钥/密钥对二、使用vscode通过ssh连接服务器1.安装插件2.配置文件3.连接服务器4.新建文件夹&#xff0c;存放不同的任务 三、使用scp命令与服务器…

微信原生小程序自定义封装组件(以导航navbar为例)

封装 topnav.js const App getApp(); Component({// 组件的属性列表properties: {pageName: String, //中间的titleshowNav: { //判断是否显示左上角的按钮 type: Boolean,value: true},showHome: { //判断是否显示左上角的home按钮type: Boolean,value: true},showLocat…

生物医学信号处理--常见的随机过程及联合特征

典型随机过程 &#xff08;&#xff11;&#xff09;白噪声过程 &#xff11;&#xff09;理想白噪声 &#xff12;&#xff09;限带白噪声 &#xff08;2&#xff09;高斯过程 &#xff08;3&#xff09;高斯-马尔科夫过程 理想白噪声 若N(t)为一个具有零均值的平稳随机过程…

安卓硬件加速hwui

安卓硬件加速 本文基于安卓11。 从 Android 3.0 (API 级别 11) 开始&#xff0c;Android 2D 渲染管道支持硬件加速&#xff0c;这意味着在 View 的画布上执行的所有绘图操作都使用 GPU。由于启用硬件加速所需的资源增加&#xff0c;你的应用程序将消耗更多内存。 软件绘制&am…