首页
人工智能
网络安全
手机
搜索
登录
搜索
golden81
累计撰写
154
篇文章
累计收到
0
条评论
首页
栏目
首页
人工智能
网络安全
手机
包含标签 【服务器】 的文章
2025-4-27
春节前H100称王天下,今库存断裂;超微10台8卡仅19X万,低门槛定金轻松抢先机
在当今大模型蓬勃发展的时代,算力成为了企业竞争的关键要素。谁拥有强大且稳定的算力,谁就能在这场激烈的角逐中占据先机。而超微的 Supermicro AS - 8125GS - TNHR 服务器,以其不到 200 万的价格和卓越的性能,成为了企业在大模型训练与推理领域的高性价比王炸配置。 市场背景:政策与供需下的算力困局 2025 年 4 月,全球算力市场风云变幻。“川普”时期朝令夕改的国家政策,使得金融市场如同坐过山车一般起伏不定,同时也给算力市场带来了巨大的波动。中美之间的加税、反制、豁免等政策频繁变动,H20 芯片作为中国专供产品,经历了传闻禁售、解除传闻等一系列波折。H20 虽“松口”,但不能用于训练;H200 虽性能强大,却成本太高。政策的不稳定加上芯片供需的失衡,让每个市场节点都成为了价格起落的“刹车点”。在这样的背景下,企业对于能够满足大模型训练和推理需求,同时价格适中的算力设备需求愈发迫切。 超微 AS - 8125GS - TNHR:性价比之选 超微的 Supermicro AS - 8125GS - TNHR 服务器正是在这样的市场环境中脱颖而出。它配备了 8 张 NVIDIA H100 SXM5 80GB(FP8/Transformer Engine)GPU、2 颗 AMD EPYC 9754(128 核 256 线程)CPU、24 条 DDR5 - 4800 内存(合计 768GB)、15.3TB NVMe 数据盘 + 1.9TB 系统盘,以及 2×100G + 8×400G 的网络接口,拥有第 4 代 NVLink 全连接拓扑的互联结构。这样的配置不仅涵盖了大模型运行所需的各个关键硬件要素,而且价格不到 200 万,对于众多企业的 CTO 和实验室来说,无疑是一个极具吸引力的选择。 性能卓越:多核、高频、稳定的算力保障 这台服务器的性能表现堪称卓越。首先,其核心的 8 张 H100 SXM5 GPU 是性能的关键所在。SXM5 版本并非徒有其表,相较于 PCIe 版,它的速度更快,支持 FP8 精度,在大模型微调时不会出现内存爆炸的情况,推理过程中也能保持同步不卡顿。这使得服务器在处理大模型任务时能够更加高效地运行,为企业节省了大量的时间和成本。 其次,AMD EPYC 9754 CPU 的表现也十分出色。双路 AMD EPYC 9754 提供了超高的并发处理能力,128 核 256 线程的规格能够稳稳支持多卡模型的分布式训练。在实际的 QPS(每秒查询率)测试中,其表现几乎与 Intel 持平,但整机成本却能减少 15% - 20%。这意味着企业在获得同等性能的同时,能够以更低的成本投入来构建自己的算力基础设施。 再者,高速的互联结构和存储系统也是服务器性能的重要保障。400G 高速互联能够有效应对大模型 I/O 高压,避免了模型加载带宽成为瓶颈。在大模型训练中,一个权重文件就可能达到几十 GB,只有盘快和网快相结合,才能真正实现“生产力”的提升。同时,大容量的内存和存储也为大模型的运行提供了充足的空间。 供应稳定:让企业下单无忧 除了性能优势外,超微 AS - 8125GS - TNHR 在供应方面也具有明显的优势。AMD 芯片的供应相对稳定,客户反馈“交期短、不溢价、价格稳”。在当前芯片供需失衡的市场环境下,这一点尤为重要。企业无需担心因为芯片供应问题而导致项目延迟,也不用担心价格的大幅波动增加成本。这使得企业在选择这台服务器时能够更加放心地下单,专注于自身的业务发展。 适配性强:DeepSeek 部署的理想选择 对于 DeepSeek 等大模型的部署,超微 AS - 8125GS - TNHR 服务器也具有得天独厚的优势。其强大的性能能够满足 DeepSeek 模型训练和推理的各种需求,多核、高频、稳定的特点使得模型能够更加高效地运行。同时,服务器的高性价比也使得企业在部署 DeepSeek 时能够降低成本,提高资源利用率。 在大模型竞争日益激烈的今天,硬件已经成为了竞争的第一性原理。企业如果没有足够的算力支持,就很可能被竞争对手超越。超微的 Supermicro AS - 8125GS - TNHR 服务器以其卓越的性能、稳定的供应和高性价比,为企业提供了一个理想的算力解决方案。无论是在大模型的训练还是推理方面,它都能够发挥出强大的作用,帮助企业在这场激烈的竞争中脱颖而出。相信随着越来越多的企业认识到这台服务器的优势,它将成为大模型时代企业算力部署的首选。
2025年-4月-27日
7 阅读
0 评论
网络安全
2025-4-27
模型并行之Embedding表
模型并行之Embedding表 Embedding在推荐模型中承担着将用户、物品及上下文信息映射为低维稠密向量的核心任务,通过捕捉潜在语义关联和协同过滤信号,为推荐系统提供可计算的特征表达基础。其向量化表征能力不仅解决了高维稀疏数据难以直接建模的问题,更能通过隐式关系挖掘支撑用户兴趣建模和相似度计算,这种稠密向量空间的连续性特征为后续针对不同行为序列、场景维度或兴趣簇的Embedding切片分析提供了可行性,例如基于时间衰减、行为类型或属性聚类的切片方式可进一步细化用户意图的动态表征。 接下来以一个案例为例介绍有关Embedding表的5种切分方式: Table Wise**、Column Wise、Row Wise、Table Wise&Row Wise、网格切分**。(前提:假设用户有128个特征,每个特征的Dim是128,注:下图中Devicexx表示不同的主机或服务器,Rankx****x表示同一个主机上的不同卡) Table Wise切分:表示将所有embedding表放置在一个同一个device上的同个Rank上,其余的Rank和Device不放置。 Row Wise****切分:表示将Embedding 表按照key的维度进行切分。注意::图右方的Device一般指的是不同的服务器,也可根据表的大小与需要进行设置到同一个Device。 Column Wise****切分:表示将Embedding 表按列(Embedding Dim)切分到不同的Rank上,一个Embedding Dim维度为128均分切到4张卡上变成[0~31, 3263,6495,96~127]。也就是每一个Rank分别获取每个特征的{[0, 31],[32, 63], [64, 95], [96, 127]}。注意:图中上方的Device一般指的是不同的服务器,也可根据表的大小与需要进行设置到同一个Device。 Table Wise&Row Wise :组合切分方式,将Table Wise与Row Wise进行结合,其表示将表放置在一个主机上,在该主机上的 rank 之间进行行式拆分。 网格切片:其组合了Table Wise、Row Wise 和Column Wise三种,表示先将Embedding表按照Column Wise切片,然后再将CW 分片后的结果以TWRW方式放置在主机上。 4:数据并行并行之Embedding表:数据并行表示每个Rank中都保留整个表的副本。
2025年-4月-27日
7 阅读
0 评论
人工智能
2025-4-27
开源堡垒机JumpServer的日志接入到Graylog并实现钉钉机器人告警
关于JumpServer的日志如何进行Syslog外发参考如下两个链接 https://docs.jumpserver.org/zh/v3/guide/storages/?h=syslog#31-syslog https://kb.fit2cloud.com/?p=123 (图片点击放大查看) 一、Graylog日志接入配置简单介绍 1、新建用于存JumpServer日志的Indices索引 (图片点击放大查看) (图片点击放大查看) 2、新建Syslog UDP类型的Inputs (图片点击放大查看) (图片点击放大查看) (图片点击放大查看) firewall-cmd --permanent --znotallow=public --add-port=2514/udp firewall-cmd --reload 3、创建JumpServer单独的Stream Index Set要选上面创建的存JumpServer日志的Indices索引 要勾选Remove matches from ‘Default Stream’ (图片点击放大查看) Stream Rules 选择Type为 match input (图片点击放大查看) (图片点击放大查看) 二、JumpServer后台开启Syslog 1、修改 JumpServer 的配置文件 JumpServer 的配置文件的默认存储位置位于:/opt/jumpserver/config/config.txt JumpServer 中需要添加的配置项如下所示: #配置 syslog SYSLOG_ENABLE=true SYSLOG_ADDR=192.168.31.194:2514 # Syslog 服务器的IP以及端口 SYSLOG_FACILITY=local2 #根据 Syslog 配置文件的配置 2、重启 JumpServer 修改 JumpServer 配置文件后需要重启 JumpServer 以加载配置项。 jmsctl restart 3、登录 JumpServer 服务生成一条登录日志,查看 Syslog 服务器中是否有输出 (图片点击放大查看) (图片点击放大查看) (图片点击放大查看) (图片点击放大查看) 三、配置Graylog Extractor实现字段提取 1、在Stream日志查询界面,message右键Create Extractor 类型可以为Split&Index Split by 设置为 - { Target Index 1 Store as field :jumpserver_log_type (图片点击放大查看) (图片点击放大查看) (图片点击放大查看) (图片点击放大查看) (图片点击放大查看) 2、同样再创建一个Split&Index类型的Extractor 用于提取后半段json格式日志 (图片点击放大查看) 效果如下 (图片点击放大查看) 3、接下来针对提取到的日志进行json格式的提取 jumpserver_log_jsonmessage字段进行json提取 (图片点击放大查看) (图片点击放大查看) (图片点击放大查看) (图片点击放大查看) (图片点击放大查看) 效果如下 (图片点击放大查看) (图片点击放大查看) 四、配合PrometheusAlert实现钉钉告警 场景如下:例如执行rm -rf 这样的命令虽然已经堡垒机使用命令过滤的方式拦截掉了,这时如果能钉钉告警通知运维管理人员这样更高效 运维管理员不用实时去审计台查看命令审计情况 (图片点击放大查看) 配置步骤就不详细截图了 PrometheusAlert上的告警模板内容,可以参考解决 ## [堡垒机告警信息](.check_result.Event.Source) ### <font color=#FF0000>告警描述:{{.event_definition_description}}</font> {{ range $k,$v:=.backlog }} ##### <font color=#67C23A>告警产生时间</font>:{{GetCSTtime $v.timestamp}} ##### <font color=#67C23A>告警详细描述</font>:<font color=#FF0000>堡垒机账号:{{$v.fields.user}} </font>登录服务器<font color=#FF0000>{{$v.fields.asset}}</font>执行了可能为高危的命令,若为正常操作,请忽略此条告警! ##### <font color=#67C23A>用户登录IP</font>:<font color=#FF0000>{{$v.fields.remote_addr}}</font> ##### <font color=#67C23A>具体操作命令</font>:<font color=#FF0000>{{$v.fields.input}}</font> ##### <font color=#67C23A>堡垒机采取的动作</font>:<font color=#FF0000>{{$v.fields.risk_level_label}}</font> ##### <font color=#67C23A>告警服务器名称</font>:<font color=#FF0000>{{$v.fields.asset}}</font> ##### <font color=#67C23A>告警原始日志</font>:{{$v.fields.jumpserver_log_jsonmessage}} {{end}} (图片点击放大查看) (图片点击放大查看) (图片点击放大查看) 最终钉钉机器人的告警效果如下 (图片点击放大查看)
2025年-4月-27日
6 阅读
0 评论
网络安全
2025-4-24
生产环境部署mysql8.0.28 主从同步
资源规划 IP 系统 资源 主机规划 备注 192.168.116.145 centos7.9 2C4G master 192.168.116.135 centos7.9 2C4G slave 环境部署 修改主机名 #修改主机名 hostnamectl set-hostname master hostnamectl set-hostname slave 关闭防火墙和内核安全机制 #关闭防火墙和selinux systemctl stop firewalld && systemctl disable firewalld sed -i '/^SELINUX=/s/enforcing/disabled/' /etc/selinux/config setenforce 0 清理环境 #删除mariadb数据库,mariadb是mysql的孪生兄弟 rpm -qa | grep mariadb #删除mysql8的冲突包 rpm -e --nodeps mariadb-libs #查看是否安装过mysql rpm -qa | grep -i mysql #如果安装过mysql需要删除mysql并备份数据 find / -name mysql # 查询是否存在二进制文件 whereis mysql #如果安装过需要删除配置文件 rm /etc/my.cnf #确认是否全部删除mysql rpm -qa |grep -i mysql 时间同步和资源信息查询 #时间同步 chronyc sources |grep '*' #查看服务的x86_64架构还是arm架构 uname -m #或者用这个查看 arch #创建mysql用户 useradd -M -s /sbin/nologin mysql #安装依赖包 yum -y install gcc vim wget net-tools lrzsz libaio 部署mysql8 #上传mysql-8.0.28-el7-x86_64.tar.gz并解压数据包 tar zxvf mysql-8.0.28-el7-x86_64.tar.gz #移动二进制文件并重命名为mysql mv mysql-8.0.28-el7-x86_64 /usr/local/mysql #创建挂在目录 mkdir /data 获取初始密码 #为创建的目录给用户权限 chown -R mysql:mysql /data #切换到mysql的执行文件目录中 cd /usr/local/mysql/bin #初始化mysql数据库,最后会有随机密码 ./mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/data --initialize 继续另外一台msyql8 #写配置文件 cat>/etc/my.cnf<<EOF [client] socket=/data/mysql.sock [mysqld] socket=/data/mysql.sock bind-address = 0.0.0.0 skip-name-resolve port = 3306 basedir=/usr/local/mysql datadir=/data max_connections=2048 character-set-server=utf8 default-storage-engine=INNODB lower_case_table_names=0 max_allowed_packet=16M log-bin=master-bin binlog_format=MIXED server-id=$(openssl rand -base64 4|cksum |cut -c 1-8) EOF #设定systemctl管理脚本 cat>/lib/systemd/system/mysqld.service<<'EOF' [Unit] Description=mysqld After=network.target [Service] Type=forking ExecStart=/etc/rc.d/init.d/mysqld start ExecReload=/etc/rc.d/init.d/mysqld restart ExecStop=/etc/rc.d/init.d/mysqld stop PrivateTmp=true [Install] WantedBy=multi-user.target EOF #设定环境变量 echo 'export PATH=$PATH:/usr/local/mysql/bin'>> /etc/profile #创建mysql的执行文件 cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld #给执行文件添加可执行权限 chmod +x /etc/rc.d/init.d/mysqld #添加到config文件中 chkconfig --add mysqld #刷新环境变量 source /etc/profile #启动mysql systemctl start mysqld && systemctl enable mysqld #创建软连接 ln -s /usr/local/mysql/bin/mysql /usr/local/bin/ 数据库修改密码 #初始化密码 #登录数据库 mysql -uroot -p #修改密码为123456 alter user 'root'@'localhost' identified with mysql_native_password by '123456'; #查看密码 use mysql; # 查看用信息 select host,user,authentication_string from user; #创建远程登录数据权限本地登录数据库 use mysql; #授权root远程登录 update user set host = '%' where user = 'root'; #查看权限 select host,user from user; #刷新表 flush privileges; 主从备份 #主节点,远程同步用户 CREATE USER 'master'@'192.168.116.%' IDENTIFIED WITH mysql_native_password BY '123456'; GRANT REPLICATION SLAVE ON *.* TO 'master'@'192.168.116.%'; #刷新库 flush privileges; # 查看binlog名字和位置编号 show master status; 从节点 CHANGE MASTER TO MASTER_HOST='192.168.116.145', # 主服务器IP MASTER_USER='master', # 主服务器用户 MASTER_PASSWORD='123456', # 主服务器用户密码 MASTER_LOG_FILE='master-bin.000001', # 主服务器 MASTER_PORT=3306, # 端口号默认3306 MASTER_LOG_POS=1156; # 位置 CHANGE MASTER TO MASTER_HOST='192.168.116.145', MASTER_USER='master', MASTER_PASSWORD='123456', MASTER_LOG_FILE='master-bin.000001', MASTER_PORT=3306, MASTER_LOG_POS=1328; # 互为主从 CHANGE MASTER TO MASTER_HOST='192.168.116.136', MASTER_USER='master', MASTER_PASSWORD='123456', MASTER_LOG_FILE='master-bin.000001', MASTER_PORT=3306, MASTER_LOG_POS=1749; #查看集群状态 show slave status\G # 启动主从 start slave; #查看binlog的编号 show variables like 'server_id'; #修改binlog的编号 set global server_id=2; #此处的数值和my.cnf里设置的一样就行 插入测试数据 create database sqw ;
2025年-4月-24日
12 阅读
0 评论
网络安全