GBase 8a 开发与技术支持 - 环境
type: channel
link: https://8atech.gbasedbt.com/index.php/环境/
items: 8a集群默认使用的端口号以及防火墙开放端口策略
items: 如何使用RHEL7 service和chkconfig命令整合为systemctl命令
items: linux模拟网络延迟、丢包等问题处理
items: tcp_max_tw_buckets参数介绍
items: RedHat Linux本地yum源配置
items: GBase 8a目前支持的服务器和操作系统以及小型机
items: Red Hat linux 如何增加swap空间
items: linux系统安装好之后，发现swap划分的太小，如何动态调整？
items: Suse Linux如何关闭防火墙
items: 服务器Swap安装操作系统时设置过小，如何增加swap大小？

8a集群默认使用的端口号以及防火墙开放端口策略
type: item
date: 2020-10-23T19:33:00+08:00
description: 86集群默认使用的端口号以及修改原则见下表。另外，rmt远程导出功能需要使用导出客户端所在机器的16066 – 16165端口范围作为导出服务的临时端口。使用远程导出功能前请先确认该端口范围正常开放，且未被占用，否则可能导致远程导出失败。如果防火墙为开启状态，则需要开放以上端口。

如何使用RHEL7 service和chkconfig命令整合为systemctl命令
type: item
date: 2020-10-23T19:17:00+08:00
description: RHEL7 service和chkconfig命令整合为systemctl命令 启动一个服务：systemctl start postfix.service 关闭一个服务：systemctl stop postfix.service 重启一个服务：systemctl restart postfix.service 显示一个服务的状态：systemctl status postfix.service 在开机时启用一个服务：systemctl enable postfix.service 在开机时禁用一个服务：systemctl disable postfix.service 查看服务是否开机启动：systemctl is-enabled postfix.service 查看已启动的服务列表：systemctl list-unit-files|grep enabled 查看启动失败的服务列表：systemctl --failed

linux模拟网络延迟、丢包等问题处理
type: item
date: 2020-10-23T19:15:00+08:00
description: 按照如下方式解决：[shrinks title="(1)netem与tc：" checked="checked"]netem是Linux2.6及以上内核版本提供的一个网络模拟功能模块。该功能模块可以用来在性能良好的局域网中，模拟出复杂的互联网传输性能，诸如低带宽、传输延迟、丢包等等情况。使用Linux2.6(或以上)版本内核的很多发行版Linux都开启了该内核功能，比如Fedora、Ubuntu、Redhat、OpenSuse、CentOS、Debian等等。tc是Linux系统中的一个工具，全名为traffic control（流量控制）。tc可以用来控制netem的工作模式，也就是说，如果想使用netem ，需要至少两个条件，一个是内核中的netem 功能被包含，另一个是要有tc 。需要注意的是：这里介绍的流控只能控制发包动作，不能控制收包动作，同时，它直接对物理接口生效，如果控制了物理的eth0，那么逻辑网卡（比如eth0:1）也会受到影响，反之，如果您在逻辑网卡上做控制，该控制可能是无效的。（注：虚拟机中的多个网卡可以在虚拟机中视为多个物理网卡）。查看规则队列 #tc qdisc show dev eth0 #tc -s qdisc ls dev eth0 #tc qdisc show 删除规则 #tc qdisc del dev eth0 root[/shrinks][shrinks title="(2)模拟延迟传输" checked="checked"]# tc qdisc add dev eth0 root netem delay 100ms 该命令将eth0网卡的传输设置为延迟100毫秒发送。更真实的情况下，延迟值不会这么精确，会有一定的波动，我们可以用下面的情况来模拟出带有波动性的延迟值：# tc qdisc add dev eth0 root netem delay 100ms 10ms 该命令将eth0网卡的传输设置为延迟100ms±10ms（90 ~ 110 ms之间的任意值发送。 还可以更进一步加强这种波动的随机性：# tc qdisc add dev eth0 root netem delay 100ms 10ms 30% 该命令将eth0网卡的传输设置为100ms同时，大约有30%的包会延迟±10ms发送。[/shrinks][shrinks title="(3)模拟网络丢包：" checked="checked"]# tc qdisc add dev eth0 root netem loss 1% 该命令将eth0网卡的传输设置为随机丢掉1%的数据包。也可以设置丢包的成功率：# tc qdisc add dev eth0 root netem loss 1% 30% 该命令将eth0网卡的传输设置为随机丢掉1%的数据包，成功率为30%。[/shrinks][shrinks title="(4)模拟包重复：" checked="checked"]# tc qdisc add dev eth0 root netem duplicate 1% 该命令将eth0网卡的传输设置为随机产生1%的重复数据包。[/shrinks] [shrinks title="(5)模拟数据包损坏：" checked="checked"]# tc qdisc add dev eth0 root netem corrupt 0.2% 该命令将eth0网卡的传输设置为随机产生0.2%的损坏的数据包(内核版本需在2.6.16以上）。[/shrinks][shrinks title="(6)模拟数据包乱序：" checked="checked"]# tc qdisc change dev eth0 root netem delay 10ms reorder 25% 50% 该命令将eth0网卡的传输设置为:有25%的数据包（50%相关）会被立即发送，其他的延迟10秒。 新版本中，如下命令也会在一定程度上打乱发包的次序:# tc qdisc add dev eth0 root netem delay 100ms 10ms [/shrinks]

tcp_max_tw_buckets参数介绍
type: item
date: 2020-10-23T18:58:00+08:00
description: tcp_max_tw_buckets系统同时处理的最大time-wait sockets数目。如果超过这个数字，time-wait socket会被立即砍除并且显示警告信息。之所以要设定这个限制，是为了抵御那些简单的DOS攻击，千万不要人为地降低这个限制。如果网络条件需要比默认值更多，则可以提高它（或许还要增加内存）。[shrinks title="排查步骤：" checked="checked"]1）查看服务器网络连接情况 [root@mail ~]# netstat -pant |awk '/^tcp/ {++state[$6]}END {for(key in state) printf("%-10s\t%d\n",key,state[key]) }'2）查看内核参数 vi /etc/sysctl.conf 将net.ipv4.tcp_max_tw_buckets = 5000改为：net.ipv4.tcp_max_tw_buckets = 10000 3）使更改的内核参数生效 sysctl -p4）再次查看服务器网络连接情况[/shrinks]

RedHat Linux本地yum源配置
type: item
date: 2020-10-23T18:56:00+08:00
description: 按照如下进行配置：[root@larrywen yum.repos.d]#mkdir /iso [root@larrywen yum.repos.d]# cp rhel-source.repo iso.repo [root@larrywen yum.repos.d]# cat iso.repo #yun源的名字，做到全局唯一不重复 [rhel-iso] #注释信息 name=Red Hat Enterprise Linux $releasever - $basearch - Source #yum源的路径，支持三种协议：http、ftp、file，其中file表示本地文件，/iso才是真实路径 baseurl=file:///iso #1表示启用，0表示禁用 enabled=1 #指纹校验，为0表示不校验 gpgcheck=0 #校验参考的文件 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release 本地需要挂载，使用mount命令即可[root@larrywen yum.repos.d]# mount /home/Wentasy/software/rhel-server-6.1-x86_64-dvd.iso /iso -o loop 可以测试是否配置成功，还可以进入iso查看是否有文件[root@larrywen yum.repos.d]# yum grouplist|grep Devel Additional Development Desktop Platform Development Development tools Server Platform Development mount后重启失效，要想永久生效，添加此句话[root@localhost yum.repos.d]# echo "mount /dev/cdrom /iso" >> /etc/rc.local [root@localhost yum.repos.d]# cat /etc/rc.local #!/bin/sh # # This script will be executed *after* all the other init scripts. # You can put your own initialization stuff in here if you don't # want to do the full Sys V style init stuff. touch /var/lock/subsys/local mount /dev/cdrom /iso

GBase 8a目前支持的服务器和操作系统以及小型机
type: item
date: 2020-10-23T18:50:00+08:00
description: 可支持如下：[shrinks title="GBase 8a产品支持的64位Linux 操作系统" checked="checked"]GBase 8a支持CentOS、Red Hat Enterprise Linux、SUSE、 IBM PowerLinux、中标麒麟（NeoKylin）等系统。[/shrinks][shrinks title="GBase 8a产品支持的芯片" checked="checked"]GBase 8a产品支持的芯片：x86处理器架构、安腾处理器（浪潮K1）、申威处理器、Power处理器、龙芯处理器。[/shrinks][shrinks title="GBase 8a产品支持的服务器" checked="checked"]GBase 8a产品支持的服务器：基于64位的x86架构处理器架构、安腾处理器和Power处理器架构的所有PC服务器，包括浪潮、华为、曙光、IBM、HP、Dell等厂商的PC服务器，如浪潮K1、Power、申威等。目前GBase 8a还没有在小型机上做过兼容性测试。UNIX服务器，也就是中国业内习惯上说的小型机，在服务器市场中处于中高端位置。UNIX服务器具有区别X86服务器和大型主机的特有体系结构，基本上，各厂家UNIX服务器使用自家的UNIX版本和处理器。比如IBM公司采用Power处理器和IBM AIX操作系统，美国Sun、日本Fujitsu（富士通）公司采用SPARC处理器架构和Sun Solaris操作系统，HP公司采用PA-RISC架构（现在转向于安腾处理器）和HP－Unix操作系统；过去的Compaq公司（已经被并入HP）处理器架构采用Alpha。[/shrinks]

Red Hat linux 如何增加swap空间
type: item
date: 2020-10-23T18:48:00+08:00
description: 通过如下方法完成：第一步：确保系统中有足够的空间来用做swap交换空间，我使用的是KVM,准备在一个独立的文件系统中添加一个swap交换文件，在/opt/image中添加2G的swap交换文件第二步：添加交换文件并设置其大小为2G，使用如下命令[root@sense image]# dd if=/dev/zero of=/opt/image/swap bs=1024 count=2048000 过段时间就返回如下结果：2048000+0 records in2048000+0 records out2097152000 bytes (2.1 GB) copied, 272.867 seconds, 7.7 MB/s 第三步：创建（设置）交换空间，使用命令mkswap[root@sense image]# mkswap /opt/image/swap Setting up swapspace version 1, size = 2097147 kB 第四步：检查现有的交换空间大小，使用命令free[root@sense image]# free –m total used free shared buffers cached Mem: 1011 989 21 0 1 875 -/+ buffers/cache: 112 898 Swap: 1027 0 1027 或者检查meminfo文件grep SwapTotal /proc/meminfo 第五步：启动新增加的2G的交换空间，使用命令swapon[root@sense image]# swapon /opt/image/swap第六步:确认新增加的2G交换空间已经生效，使用命令free[root@sense image]# free -m total used free shared buffers cached Mem: 1011 995 15 0 4 877 -/+ buffers/cache: 113 897 Swap: 3027 0 3027 或者检查meminfo文件grep SwapTotal /proc/meminfo 第七步：修改/etc/fstab文件，使新加的2G交换空间在系统重新启动后自动生效，在文件最后加入：/opt/image/swap swap swap defaults 0 0

linux系统安装好之后，发现swap划分的太小，如何动态调整？
type: item
date: 2020-10-23T18:43:00+08:00
description: 通过如下方法完成动态调整：bs 是扇区大小 bs=1024 指大小为1K，count为扇区数量。dd if=/dev/zero of=/home/swap bs=1024 count=500000 表示创建一个大小为500M 的文件 /home/swap 用空值填充。如果要创建一个16G则可以1 dd if=/dev/zero of=/home/swap bs=1024 count=4096000 //创建文件2 mkswap /home/swap //制作成swap file3 swapon /home/swap //激活4 swapon -s //检验是否加上这样重启会没，所以要加到/etc/fstab中，增加如下一行:/home/swap none swap sw,pri=300

Suse Linux如何关闭防火墙
type: item
date: 2020-10-23T18:42:00+08:00
description: 通过如下命令完成chkconfig --level 2345 SuSEfirewall2_setup offchkconfig --level 2345 SuSEfirewall2_init off

服务器Swap安装操作系统时设置过小，如何增加swap大小？
type: item
date: 2020-10-23T18:41:00+08:00
description: 需要手工来增加Swap大小：bs 是扇区大小 bs=1024 指大小为1K，count为扇区数量dd if=/dev/zero of=/home/swap bs=1024 count=500000表示创建一个大小为500M 的文件 /home/swap 用空值填充。如果要创建一个16G则可以1 dd if=/dev/zero of=/home/swap bs=1024 count=4096000 //创建文件 2 mkswap /home/swap //制作成swap file 3 swapon /home/swap //激活 4 swapon -s //检验是否加上 这样重启会失效，所以要加到/etc/fstab中，增加如下一行：/home/swap none swap sw,pri=300