当前位置: 首页 > news >正文

公司的服务器怎么个事,服务器是什么东西

通俗讲:服务器=公司里专门“干活/提供服务”的电脑。和你笔记本一样也是计算机,但更稳定、一直开机、通常在机房/云上,给内部同事或系统用。

一张脑内地图

你电脑 →(VPN / 跳板机)→ 登录服务器 → 运行脚本/任务
服务器再去连:数据库、存储(HDFS/MinIO/NAS)、消息(Kafka/Redis)、计算集群(Spark/YARN/K8s)、调度器(DolphinScheduler)

服务器都有哪些“形态”

  • 物理机(裸金属):真正的一台大电脑(机房里的铁盒子)。

  • 虚拟机(VM):在物理机上“切”出来的多台逻辑机器(常见:KVM/VMware)。

  • 容器:更轻量的运行环境(Docker/K8s 里跑的一个进程组)。

  • 云服务器:公有云提供的 VM/容器(本质还是上面几种)。

常见“角色”

  • 应用/任务节点:跑你的脚本、DolphinScheduler 的 worker、API 等。

  • 数据库:MySQL/Postgres/ClickHouse,用来存表、查 SQL。

  • 大数据计算:Spark/YARN/Presto/Flink,做分布式算子。

  • 存储:HDFS、MinIO、NAS(共享盘)。

  • 消息与缓存:Kafka、RabbitMQ、Redis。

  • 监控与日志:Prometheus/Grafana、ELK(Elastic+Kibana)。

你如何跟它打交道(跟你现在工作强相关)

  1. 进得去:先连 VPN,再过 跳板机/堡垒机,再 ssh user@host 到目标服务器。

  2. 身份与权限

    • 系统层:Linux 用户/组、sudo、目录读写(ls -l 看权限)。

    • 应用层:Dolphin 权限、数据库账户、对象存储桶权限等。

  3. 跑任务的几种方式

    • DolphinScheduler:你点“运行”,它会在 某个 worker 节点 以指定 Linux 用户拉起你的 SQL/Shell/Spark 任务。日志在 /data/dolphinscheduler/.../logs/...(你截图里那种路径)。

    • SQL 节点:只需要能连上对应 数据库,不需要 Spark。

    • Spark 节点:需要机器上有 JAVA_HOMESPARK_HOME、集群配置(YARN/K8s/Standalone)。如果你用的是 Spark 任务类型而那台机器没装/没配好 Spark,就会跑不起来。

  4. 怎么看“到底在哪台机、什么环境”(30 秒自检):

    hostname -f # 我在哪台主机 whoami # 我是谁 pwd # 我在哪个目录 cat /etc/os-release # 系统版本 java -version # 有没有 Java(跑 Spark 必备) spark-submit --version # 有没有 Spark(若报错=可能未装/未入 PATH) which python && python -V echo $PATH

  5. 传文件/拿日志scp/rsync,或挂载共享盘。

  6. 会话别掉线:长任务用 tmux/screen,即使断网也不丢进程。

  7. 资源自查htopfree -hdf -hnproculimit -a

为啥“我数据源是 SQL,却有人让装 Spark?”

  • 只有当你选择了 Spark/Flink 这类“分布式计算节点” 才需要装并配置它们。

  • 纯 SQL 节点 不需要 Spark,但需要能连上对应 数据库实例(host、port、账号、库、表权限)。

  • 很多公司的“公共脚本”/模板可能默认用 Spark,如果你套用了,就会依赖 Spark 环境(即便只是在里头做了点简单转换)。

环境与权限的三层理解

  • OS 层:能不能登录、能不能读写某个目录、能不能 sudo

  • 网络层:能不能从这台机连到那台库(端口是否放行、是否需要走代理)。

  • 应用层:Dolphin 的项目/任务可见性、数据库的 SELECT/INSERT 权限、对象存储桶的读写策略。

你在公司常会遇到的坑

  • 以为“服务器=一台机器”,实际是一片集群(登上登录机≠跑任务的执行机)。

  • 环境不一致:登录机有 python3.10,worker 节点只有 3.8;你本地能跑,线上不行。

  • 路径/权限:把输出写到你没权限的目录,任务就“成功但没数据”。

  • 没用虚拟环境:系统 Python 被全员共享,依赖打架。

  • 日志看错地方:Dolphin 的“任务成功”只是 Shell 返回码 0;SQL 本身如果没查到数据、或者你用 sleep(...) 之类规避了错误,调度也会判成功。

速查:你现在就能用的小命令

# 1) 我现在这台机有哪些关键信息 hostname -f && whoami && pwd && date # 2) 看任务日志(按你的习惯路径) ls -ltr /data/dolphinscheduler/dpsdata/worker-server/logs | tail tail -n 200 <具体日志文件> # 3) 确认有没有 Spark / Java(仅当你跑 Spark 任务才需要) java -version spark-submit --version # 4) 资源与磁盘 htop # 或 top free -h df -h

http://www.lryc.cn/news/622149.html

相关文章:

  • 数据结构初阶(15)排序算法—交换排序(快速排序)(动图演示)
  • [ CSS 前端 ] 网页内容的修饰
  • sqlsever的sql转postgresql的sql的方言差异
  • SQL182 连续两次作答试卷的最大时间窗
  • 优化网络ROI:专线复用,上云出网一“线”牵!
  • OSCP - Proving Grounds - CVE-2024-25180
  • 技术解读 | 搭建NL2SQL系统需要大模型么?
  • python re正则模块
  • Redis 缓存和 Redis 分布式锁
  • Spring中存在两个相同的Bean是否会报错?
  • PyTorch 训练神经网络模型,并集成到springboot项目中
  • STM32L051同时处理Alarm A和Alarm B中断
  • 朗空量子与 Anolis OS 完成适配,龙蜥获得抗量子安全能力
  • Nginx反向代理Tomcat实战指南
  • 测控一体化闸门驱动灌区信息化升级的核心引擎
  • C++设计模式:类间关系
  • 自定义数据集(pytorchhuggingface)
  • cut、tr、sort 和 uniq 生产典型示例
  • 微服务的编程测评系统11-jmeter-redis-竞赛列表
  • Nginx反向代理与缓存实现
  • 【论文解读】DDRNet:深度双分辨率网络在实时语义分割中的结构与原理全面剖析
  • 51单片机-驱动蜂鸣器模块教程
  • 开源数据发现平台:Amundsen Frontend Service 安装 开发者指南
  • debian13 安装过程 root配置
  • 从 LLM 到自主 Agent:OpenCSG 打造开源 AgenticOps 生态
  • Linux网络基础概念
  • 【RTOS】RT-Thread 进程间通信IPC源码级分析详解
  • [Pyro] 基础构件 | 随机性sample | 可学习参数param | 批量处理plate
  • 【3D图像技术分析及实现】3DGS与深度学习网络结合以实现跨场景迁移的研究调研
  • 电力系统之常见基础概念