查看操作系统环境
Linux存在不同的操作系统,按照流行度排序:
- Ubuntu:基于Debian的Linux发行版,易于使用且广泛采用。
- CentOS:基于Red Hat Enterprise Linux(RHEL)的免费开源版本,广泛用于服务器环境。
- Debian:稳定、安全且广泛使用的Linux发行版,被许多其他发行版作为基础。
- Fedora:由Red Hat赞助的社区驱动的发行版,用于桌面和服务器环境。
- Arch Linux:面向技术用户的滚动更新发行版,提供最新的软件包和灵活的配置选项。
- openSUSE:由SUSE Linux GmbH开发的发行版,注重易用性和稳定性。
- Kali Linux:专为安全测试和网络安全而设计的发行版,包含了大量的安全工具。
- Gentoo:源代码驱动的发行版,用户需要从源代码构建和配置系统。
- Manjaro:基于Arch Linux的用户友好发行版,提供易用性和稳定性。
- Linux Mint:基于Ubuntu的发行版,注重易用性和用户体验。
这只是一小部分常见的Linux操作系统,还有许多其他发行版可供选择,每个发行版都有其特定的目标和特点。选择适合您需求的发行版时,可以考虑其稳定性、易用性、软件包支持和社区支持等因素。
使用cat
命令查看/etc/centos-release
文件的内容
cat /etc/centos-release
这将显示CentOS的版本信息,例如:
CentOS Linux release 7.9.2009 (Core)
使用lsb_release
命令(需要先安装redhat-lsb-core
软件包)
lsb_release -a
这将显示包括CentOS版本在内的系统信息,例如:
LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.9.2009 (Core)
Release: 7.9.2009
Codename: Core
使用uname
命令查看内核版本
uname -r
这将显示内核版本,通常与CentOS版本相关。例如:
3.10.0-1160.11.1.el7.x86_64
Linux不同发行版操作会有区别
CentOS 和 Ubuntu 软件包管理
- CentOS 使用 YUM(Yellowdog Updater, Modified)作为其主要软件包管理工具。通过使用 YUM,可以轻松地安装、更新和删除软件包。例如,要安装一个软件包,可以使用
yum install package_name
命令。 - Ubuntu 使用 APT(Advanced Package Tool)作为其主要软件包管理工具。APT 提供了一组命令,用于管理软件包。例如,要安装一个软件包,可以使用
apt install package_name
命令。
因此在 CentOS 和 Ubuntu 系统上安装软件时,需要使用不同的安装命令,避免在使用过程中出现报错的情况
配置宿主机之间时间同步
确认是否已安装ntp
systemctl status ntpd
如果NTP服务已安装并正在运行,您将看到类似以下输出:
● ntpd.service - Network Time Service
Loaded: loaded (/usr/lib/systemd/system/ntpd.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2021-09-20 10:00:00 UTC; 1h ago
Docs: man:ntpd(8)
Main PID: 12345 (ntpd)
CGroup: /system.slice/ntpd.service
└─12345 /usr/sbin/ntpd -u ntp:ntp -g
如果NTP服务未安装,您将看到类似以下输出:
Unit ntpd.service could not be found.
请注意,上述命令需要以root用户或具有sudo权限的用户身份运行。
安装ntp
yum –y install ntp
配置ntp服务
首先需要确定好Linux集群之间,那台集群当主节点,那台当同步节点
配置主节点
vi /etc/ntp.conf
【内容】在server部分添加一下部分,并注释掉server 0 ~ n
server <主节点IP>
Fudge <主节点IP> stratum 10
请将上面的 <主节点IP> 替换成真实的主节点IP地址
配置同步节点
vi /etc/ntp.conf
【内容】在server部分添加如下语句,将server指向主节点。
server <同步节点IP>
Fudge <同步节点IP> stratum 10
请将上面的 <同步节点IP> 替换成真实的同步节点IP地址,如果有多个同步节点,请重复执行上面的操作
启动ntp服务、查看状态
启动ntp服务
systemctl start ntpd
设置ntp开机自启
systemctl enable ntpd
检查NTP服务状态
systemctl status ntpd
重启NTP服务
systemctl restart ntpd
手动同步时间
ntpdate -u <NTP服务器主节点IP>
# 例:
ntpdate -u 192.168.1.100
配置NTP时间同步的原因
一致性和协调性
在一个服务器集群中,各个服务器之间需要保持时间的一致性,以确保它们在执行任务和处理数据时能够协调工作。如果服务器的时间不同步,可能会导致数据不一致、任务执行错误或者其他不可预测的问题。
日志和故障排查
时间同步对于日志记录和故障排查非常重要。当服务器集群中的服务器时间不同步时,日志的时间戳可能会混乱,使得故障排查变得困难。通过配置时间同步,可以确保日志的时间戳是准确的,从而更容易追踪和分析问题。
安全性
时间同步对于安全性也很重要。许多安全协议和机制依赖于时间来验证和保护数据的完整性和安全性。如果服务器的时间不同步,可能会导致安全问题。
如SSL/TLS协议,SSL(Secure Sockets Layer)和其继任者 TLS(Transport Layer Security)是用于加密和保护网络通信的协议。在 SSL/TLS 握手过程中,服务器和客户端会交换证书,其中包含了证书的有效期。如果服务器的时间不正确,证书的有效期可能会被误判,导致安全问题或无法建立安全连接。
调度和任务管理
在服务器集群中,可能会有一些需要按照特定时间表执行的任务和调度。如果服务器的时间不同步,这些任务和调度可能会出现错误或者无法按时执行。
如在集群任务调度中,通常会使用定时任务来触发任务的执行。如果服务器的时间不一致,定时任务的触发时间可能会出现偏差,导致定时任务失效或者在不正确的时间触发。
因此,为了确保服务器集群的正常运行和协调工作,配置时间同步是非常重要的。可以使用网络时间协议(NTP)来实现时间同步,NTP 可以通过与时间服务器进行通信,自动调整服务器的时间,以保持一致性和准确性。