简介《BES9.5.2集群版图形化安装-单主机.pdf》面向中间件运维人员、系统管理员及需要搭建企业级应用服务器的技术学习者聚焦在单台主机上以图形化方式完成BES9.5.2集群版部署这一实际任务帮助读者梳理从环境准备到实例创建的完整操作路径。整份资料为1个PDF文件压缩包约2.26MB内容以图文步骤和配置说明为主适合作为安装现场的操作手册或学习时的对照材料。文档覆盖安装前准备、集群版安装、license导入、补丁升级、控制台启动以及配置数据库初始化、控制台进程内存参数调优等环节后半部分还延伸到默认模板修改、新建主机与节点、节点JVM内存设置、节点补丁升级和独立实例创建目录模块清晰便于按阶段查阅。已有904人学习可作为运维人员实施单主机集群部署时的流程参考与排错对照。1. 一台机器装完整个集群BES9.5.2 图形化安装最容易出错的地方在装之前很多人以为 BES9.5.2 集群版的图形化安装难点在于控制台里该点哪个按钮。真正装过一遍就知道出问题几乎都发生在打开浏览器之前JDK 版本没对上、hosts 里留着一条 127.0.1.1、open files 还是 1024控制台能起来节点却装不上。单主机部署控制台、节点、实例全压在一台 192.168.6.111 上安装目录 /data/BES952看着最省事实际上是把所有依赖集中到一台机器上任何一项没配好都会在后面的新建节点、打补丁环节集中爆发。这篇记录写给第一次上手这套环境的人也写给装过一次、被“节点安装失败”折腾过的人。2. 环境准备JDK、hosts、limits 与 SSH 四项硬指标BES9.5.2 的控制台、节点、实例是三个各自独立的 JVM 进程它们对操作系统的要求高度一致有可用的 JDK、主机名能解析到自己、文件句柄够用、控制台能通过 SSH 登录到目标机。这四项里任意一项没达标症状都不会出现在安装那一刻而是延后到控制台点“安装节点”时才报错。所以我把它们放在解压安装包之前一次性做完做完再往下走。2.1 JDK 版本选择与 JAVA_HOME 的落地写法BES9.5.2 要求 JDK1.7 或更高版本。这条要求不算苛刻但实际踩过的坑是“版本越高越好”和“服务器上现成的那个凑合用”两种极端。我一般选 1.8 系列的较新小版本稳定且社区资料多如果机器上已经装了别的 JDK先确认它不是精简过的运行时只有 jre 没有 jdk缺 tools.jar 那类运行时控制台启动会报奇怪的类找不到。环境变量的写法有两种改全局/etc/profile或者只改当前用户的.bash_profile、.bashrc。全局改的好处是后续用同一个用户跑控制台、节点、实例都能读到坏处是写错了影响整机。我习惯单独落一个 profile 片段出问题直接删文件不用去几百行里找那一行# /etc/profile.d/bes.sh —— 单独文件比直接改 /etc/profile 好回滚 export JAVA_HOME/usr/local/jdk1.8.0_202 export PATH$JAVA_HOME/bin:$PATH写完执行source /etc/profile.d/bes.sh然后做两步验证echo $JAVA_HOME看路径是否指向 JDK 根目录不是 bin 目录java -version看输出是否就是刚配的那个版本。PATH 必须把$JAVA_HOME/bin放在前面否则系统自带的旧 java 会先命中出现“配了环境变量但版本没变”的假象。提示控制台和节点如果以 systemd 服务方式开机自启服务进程不读/etc/profile和.bashrc。这时候要么在 service 文件里补Environment要么在创建节点时把 JAVA_HOME 明确填上别指望登录 shell 的环境变量能继承过去。2.2 hosts 解析与那条 127.0.1.1 的注释控制台连节点走的是“主机名/IP”这一栏很多默认配置里带的是主机名而不是 IP。主机名解析不到正确地址后面 ping 测试就会一直失败。先把对应关系写进/etc/hosts# /etc/hosts 192.168.6.111 besnode01 # 127.0.1.1 besnode01 # 有这行就注释掉它会抢在真实 IP 前面解析之所以专门提 127.0.1.1是因为部分发行版默认把主机名映射到回环地址。当它和真实 IP 同时在文件里时解析顺序不确定结果是控制台自己连自己都连不通而ping 192.168.6.111又明明是通的排查起来特别费时间。改完执行ping -c 2 besnode01返回的必须是 192.168.6.111 而不是 127.0.0.1这一步别省。2.3 limits.conf 与 20-nproc.conf改完为什么必须重连BES 的每个进程都要维持大量连接和线程默认的 1024 文件句柄在实例一多就不够用典型症状是控制台日志里偶发“Too many open files”或者是节点启动到一半卡住。用 root 改/etc/security/limits.conf在文件最后追加# /etc/security/limits.conf 末尾追加 * soft nofile 65535 * hard nofile 65535 * soft nproc 65535 * hard nproc 65535soft是默认生效值hard是上限两个都写是为了避免进程自己调不上去。接着还要改/etc/security/limits.d/20-nproc.conf把里面的 nproc 值也改成 65535# /etc/security/limits.d/20-nproc.conf * soft nproc 65535原因是 limits.d 目录下的文件会在 limits.conf 之后加载同名条目后加载的覆盖先加载的只改主文件等于白改。改完必须退出当前 SSH 会话重新连接因为 limits 是在登录时对会话生效的不断开重连ulimit -a里看到的还是旧值。重连后执行ulimit -a确认open files和max user processes两行都是 65535 才算完成。2.4 独立用户、SSH 与防火墙控制台要替你去连别的机器建议给 BES 单独建一个运行用户别用 root 跑业务进程也别和别的中间件共用账号。安装目录提前 chown 给这个用户后续解压、启动、打补丁都用它操作权限问题能少一大半。控制台的图形化安装节点本质是控制台所在主机通过 SSH 把介质传到目标机再解压。所以目标机必须满足sshd 已启动、端口可达、主机管理里填的用户名密码能登录。先在服务器上验证ssh 用户名192.168.6.111能进再谈控制台里的操作。端口方面下面几个是必须放开的端口用途说明6900控制台 Web 访问浏览器访问 http://IP:6900/console3100节点管理端口同机多节点时必须改成不同端口22SSH控制台向节点传介质、下发指令测试环境为了省事常常直接关掉防火墙生产环境按上表放行即可。这一步不做后面所有“连接超时”的报错都会指向这里。3. 介质落地与激活tar.gz 解压、license 导入、补丁三类前缀分清环境过了关接下来是把安装介质、授权文件和补丁包三样东西放到正确位置。这三样东西放错目录是新手最常见的失误介质解压错层、license 路径写相对路径、补丁包丢进安装目录里每一个都会让后面某一步莫名其妙失败。3.1 创建安装目录并解压介质安装介质是 tar.gz 压缩包。先建目录再上传再解压顺序别反。这里的经验是目录名尽量带上版本号比如/data/BES952因为以后升级到 9.5.3 时两套目录能并存回滚只要切目录不用重装。# 建安装目录交给 bes 用户 mkdir -p /data/BES952 chown -R bes:bes /data # 上传介质后解压介质名以实际拿到的包为准 cd /data/BES952 tar -zxvf /data/soft/BES9.5.2_cluster.tar.gz -C /data/BES952解压完用ls确认bin、lib、media、logs这些目录直接在/data/BES952下而不是多套了一层BES9.5.2/。如果多套一层后面所有基于安装目录的路径全要改./lmadm、./patch都找不到。3.2 导入 license两条命令看结果BES 的 License 是文本文件文件名bes.lic.txt。把它上传到服务器任意目录这里放/data/BES952/bin。进入 bin 目录执行导入注意--sourcepath要用绝对路径cd /data/BES952/bin # 导入授权文件 ./lmadm import-lic --sourcepath/data/BES952/bin/bes.lic.txt # 查看当前授权状态 ./lmadm view-licimport-lic只负责把文件读进配置库不做校验提示真正判断是否可用要看view-lic的输出里有没有授权类型和过期时间。测试版临时授权会明确给出到期日比如原厂示例里的 20210331正式授权用同样的命令导入不需要换参数。养成习惯导完立刻view-lic看一眼别等到实例起不来才发现是授权过期。注意license 与硬件信息、授权容量绑定换机器或者扩容后旧文件会失效重新申请后再导入一次不需要重装整套环境。3.3 补丁包的三类前缀与 media 目录约定补丁以 zip 形式发布解压到 BES 安装目录以外的位置这点很关键放进安装目录里一旦打补丁失败会污染主目录回滚都难。示例放在/data/bes952_patches。补丁按前缀分三类作用对象完全不同前缀作用对象落地方式BESCLUSTER控制台命令行./patch -jar直接打BESNODE节点复制到安装目录/media/nodepatchBES9.5.2.xxxx实例复制到安装目录/media/instancepatch控制台补丁在 bin 目录下用命令打多个补丁从小到大依次执行cd /data/BES952/bin # 按补丁号从小到大逐个执行 ./patch -jar /data/bes952_patches/BESCLUSTER9.5.2.4469.001.T001.zip节点和实例的补丁不是命令行打而是先把 zip 复制到对应的 media 子目录再在控制台的“系统管理 → 升级维护”里选节点应用。如果当前版本本身没有补丁这一步可以跳过但目录约定先记住等到真要升级时不用临时查文档。4. 控制台起来之后initstore、内存参数、模板、主机、节点、实例一条线装完介质、导完授权真正的图形化操作才开始。控制台是整套环境的管理入口它自己也是一个 JVM 进程和一个普通应用一样需要初始化配置库、需要设置内存、需要判断启动成功的标志。控制台没稳稳起来后面新建节点、创建实例全是空谈。4.1 initstore 初始化配置库与启动成功的标志BES9.5.2 依赖数据库保存配置信息安装包自带了一个配置库第一次启动控制台前必须先初始化否则控制台会因为读不到配置表直接退出cd /data/BES952/bin # 初始化自带配置库创建数据表并写入初始数据 ./initstore # 启动控制台 ./startManagement # 另开一个窗口看启动日志 tail -f /data/BES952/logs/server.loginitstore只需要执行一次重复执行会覆盖配置装了实例之后千万别再跑。startManagement本身已经用 nohup 方式后台启动并把日志重定向好了不需要再套一层nohup ./startManagement 套了反而会多出莫名其妙的父子进程停的时候停不干净。判断是否启动成功只看日志里这一行Admin server listen on [0.0.0.0:6900]。出现这行说明控制台已监听浏览器可以访问http://192.168.6.111:6900/console默认用户名admin密码B#2008_2108#es。日志目录就是安装目录下的 logs控制台的日志文件名固定server.log出问题第一现场永远在这里。4.2 setenv.conf 里的 -Xmx512m 该不该改控制台进程的内存参数在 bin 目录的setenv.conf里默认只设了堆最大值# /data/BES952/bin/setenv.conf JAVA_OPTS-Xmx1024m $JAVA_OPTS默认值是 512m够用来跑演示但控制台管理的实例一多界面刷新和状态采集都会变慢。我的取舍是测试环境不动生产环境按实例数量改到 1G 以上同时保证服务器物理内存留足给节点和实例。改完要重启控制台才生效改之前确认机器剩余内存别把控制台调到 2G结果节点起不来。4.3 先改模板再建节点defaultNodeConf 与 default图形化安装里最省时间的一步是在创建任何节点和实例之前先把模板改好。模板管理里有两个关键模板defaultNodeConf是节点模板default是实例模板。分别点进去在 JVM 选项里设好堆大小和元空间保存即可。这么做的价值在于“一次设置批量继承”用节点模板创建出来的节点直接带上设置好的 JVM 参数不用逐个点开改用实例模板创建的实例或集群也一样。反过来如果先建了一堆节点再想起改参数就得一个一个进节点详情里改节点少还好十个节点就是十次重复劳动还容易漏。4.4 主机管理里那次 ping决定后面所有操作主机管理是控制台认识“目标机器”的地方添加时要填的信息不少每一项都影响后续连接字段填法常见问题名称建议直接用 IP只是个显示名但重名会分不清主机名/IP建议填 IP填主机名时依赖 hosts 解析操作系统Linux/Unix 或 Windows选错影响路径处理远程登录方式用户名密码、证书、免登录免登录需手工在目标机装节点SSH 端口默认 22改过端口必须同步用户名/密码目标机系统账号密码错是最常见的失败原因保存后不要急着建节点先点主机列表里的主机名称进入编辑状态再点左下角的 ping。ping 成功说明控制台能通过 SSH 连上目标机配置是对的ping 失败就回头查用户名、密码、端口、sshd 状态别带着问题往下走。这一步相当于一次预检能省掉后面“节点安装到一半失败”的大量排查时间。4.5 节点新建、安装、启动与 JVM 设置节点管理里点新建需要填节点名称同样建议用 IP、所属主机、管理端口、节点目录、JAVA_HOME。管理端口默认 3100同一台主机上建多个节点时必须改成不同端口否则第二个节点起不来。JAVA_HOME 一般留空直接继承操作系统的环境变量如果系统里有多套 JDK就明确指到要用那套的根目录。新建完的节点状态是“未安装”选中它点安装。安装过程是控制台通过 SSH 把节点介质传到目标机再解压所以目标机不需要手工建目录、手工传包。安装成功后点启动节点进程起来。节点的日志在节点目录/节点名称/logs/server.log节点目录在节点列表的路径栏能直接看到示例里是/data/BES952/192.168.6.111。节点本身也是独立 JVM需要单独设内存。点节点名称进入详情JVM 选项里能设堆大小、元空间还能加自定义属性配回收策略。多个节点参数一致时回头改节点模板更省事。开机自启动分两种情况。root 用户直接在控制台选中节点点“注册服务”就行非 root 用户要先改节点目录下bin/service文件在[Service]段下面补两行# 节点目录/bin/service 的 [Service] 段 Userbes Groupbes改完切到 root进节点 bin 目录执行./service systemd会在/etc/systemd/system下生成besnode95_192.168.6.111.service。控制台的注册方式完全一样生成的文本文还有配套的精品资源点击获取