微服架构基础设施环境平台搭建 -(一)基础环境准备

article/2025/10/4 19:37:52

微服架构基础设施环境平台搭建 -(一)基础环境准备

通过采用微服相关架构构建一套以Kubernetes+Docker为自动化运维基础平台,以微服务为服务中心,在此基础之上构建业务中台,并通过Jekins自动构建、编译、测试、发布的自动部署,形成一套完整的自动化运维、发布的快速DevOps平台。


本文为了搭建Kubernetes集群而准备的服务器以及针对服务器基础环境配置。

文章的操作过程大部分参照【基于青云LB搭建高可用的k8s集群】

微服架构基础设施环境平台搭建 系列文章


微服架构基础设施环境平台搭建 -(一)基础环境准备
微服架构基础设施环境平台搭建 -(二)Docker私有仓库Harbor服务搭建
微服架构基础设施环境平台搭建 -(三)Docker+Kubernetes集群搭建
微服架构基础设施环境平台搭建 -(四)在Kubernetes集群基础上搭建Kubesphere平台
微服架构基础设施环境平台搭建 -(五)Docker常用命令

目录

  • 微服架构基础设施环境平台搭建 -(一)基础环境准备
  • 一、采用的技术架构
  • 二、微服架构基础设施平台网络规划
  • 三、部署架构
  • 四、修改主机名和hosts文件
    • 1. 修改主机名(各服务器分别修改主机名)
    • 2. 修改hosts文件 # 添加机器ip与主机名映射
  • 五、 关闭防火墙、selinux、关闭交换分区(每台服务器都执行)
  • 六、免密登录(每台服务器都执行)
  • 七、升级系统内核
    • 1、导入public key
    • 2、安装epel源
    • 3、查看可用版本内核
    • 4、选择安装lt最新版本
    • 5、查看系统上可以用的内核
    • 6、设置内核启动顺序
    • 7、重新创建内核配置
    • 8、重启验证
  • 八、修改内核参数
    • 1、加载br_netfilter模块
    • 2、修改内核参数
  • 九、配置yum源(采用阿里云repo源)
  • 十、配置安装k8s组件需要的阿里云的repo源
  • 十一、配置时间同步
    • 方式一、采用ntpdate命令
    • 方式二、chronyd
  • 十二、配置IPVS

一、采用的技术架构

序号技术框架说明
1Kubernetes
2KubesphereKubernetes编排器,管理平台
3Dockers
4HarborDocker私有仓库
5GitLab源码库
6Jekins自动编译、测试、发布平台
7Spring Cloud AlibabaSpring Cloud Alibaba微服体系架构
8NacosApi网关、服务注册发现配置管理中心
9Sentinel限流溶断安全中心
10Seata分布式事务管理框架
11Redis分布式缓存服务
12ElasticSearch/Solr数据检索服务
13Mysql结构化数据存储
14Grafana监控平台
15Nginx服务代理、Web服务

二、微服架构基础设施平台网络规划

序号IPHostName操作系统K8s角色说明
1192.168.1.141ks-m1CentOS7_x64控制节点Kubernetes Master
2192.168.1.142ks-m2CentOS7_x64控制节点Kubernetes Master高可用节点,如果不需要高可用,可不部署此服务器
3192.168.1.143ks-m3CentOS7_x64控制节点Kubernetes Master高可用节点,如果不需要高可用,可不部署此服务器
4192.168.1.144ks-n1CentOS7_x64工作节点Kubernetes Worker
5192.168.1.145ks-n2CentOS7_x64工作节点Kubernetes Worker
6192.168.2.146ks-harborCentOS7_x64工作节点Harbor服务+NFS文件服务

三、部署架构

在这里插入图片描述

四、修改主机名和hosts文件

1. 修改主机名(各服务器分别修改主机名)

使用hostnamectl命令修改主机名,执行该命令后立即生效,代码如下

#在192.168.1.141上执行如下:
[root@localhost ~]# hostnamectl set-hostname ks-m1

其余的机器也使用hostnamectl命令修改主机名,示例如下:

## 在192.168.1.142上执行如下:
[root@localhost ~]# hostnamectl set-hostname ks-m2#在192.168.1.143上执行如下:
[root@localhost ~]# hostnamectl set-hostname ks-m3#在192.168.1.144上执行如下:
[root@localhost ~]# hostnamectl set-hostname ks-n1#在192.168.1.145上执行如下:
[root@localhost ~]# hostnamectl set-hostname ks-n2#在192.168.2.146上执行如下:
[root@localhost ~]# hostnamectl set-hostname ks-harbor

2. 修改hosts文件 # 添加机器ip与主机名映射

[root@localhost ~]# vim /etc/hosts
192.168.1.141  ks-m1
192.168.1.142  ks-m2
192.168.1.143  ks-m3
192.168.1.144  ks-n1
192.168.1.145  ks-n2
192.168.2.146  ks-harbor

五、 关闭防火墙、selinux、关闭交换分区(每台服务器都执行)

# 关闭防火墙
systemctl stop firewalld.service
# 禁止防火墙开机启动
systemctl disable firewalld.service
# 永久关闭selinux 注:重启机器后,selinux配置才能永久生效
sed -i 's/enforcing/disabled/' /etc/selinux/config
# 临时关闭selinux   执行getenforce   显示Disabled说明selinux已经关闭
setenforce 0
# 永久关闭交换分区swap 注:重启机器后,才能永久生效
sed -ri 's/.*swap.*/#&/' /etc/fstab
# 临时关闭交换分区swap
swapoff -a

六、免密登录(每台服务器都执行)

# 生成密钥对
ssh-keygen -t rsa   ## 一路回车即可
# 进入.ssh目录,如果目录不存在则创建
cd ~/.ssh
# 将公钥导入至authorized_keys
cat id_rsa.pub >> authorized_keys
# 修改文件权限
chmod 700 ~/.ssh
chmod 600 authorized_keys

在ks-m1上执行以下命令,使主节点能免密访问其他俩从节点:

# 配置主从互相免密登陆
cat ~/.ssh/id_rsa.pub | ssh root@ks-m2 'cat - >> ~/.ssh/authorized_keys'
cat ~/.ssh/id_rsa.pub | ssh root@ks-m3 'cat - >> ~/.ssh/authorized_keys'
cat ~/.ssh/id_rsa.pub | ssh root@ks-n1 'cat - >> ~/.ssh/authorized_keys'
cat ~/.ssh/id_rsa.pub | ssh root@ks-n2 'cat - >> ~/.ssh/authorized_keys'
cat ~/.ssh/id_rsa.pub | ssh root@ks-harbor 'cat - >> ~/.ssh/authorized_keys'

其它服务器参照上面命令依次每台服务器上执行免密登录命令

七、升级系统内核

在升级内核十分重要,低版本的内核下k8s集群不稳定,且对插件的兼容性不好,例如3.10版本的内核不支持网络插件Calico3.23版本等。
共有两种开机引导模式:bios和uefi,其中uefi引导模式下需要关闭安全引导,否则无法正常开机。

1、导入public key

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

2、安装epel源

yum install https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm -y

3、查看可用版本内核

yum --disablerepo="*" --enablerepo="elrepo-kernel" list available

4、选择安装lt最新版本

$ yum --enablerepo=elrepo-kernel install kernel-lt -y

5、查看系统上可以用的内核

说明:
首先需要确定Linux系统开机引导模式是BIOS还是UEFI,可以通过命令 [ -d /sys/firmware/efi ] && echo UEFI || echo BIOS 来确定系统开机引导模式

  • 如果输出是BIOS就是BIOS;
  • 如果是 UEFI ,则是UEFI

执行命令:

[ -d /sys/firmware/efi ] && echo UEFI || echo BIOS

1)、BIOS模式执行下面命令:

awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg

2)、UEFI模式执行下面命令:

awk -F\' '$1=="menuentry " {print i++ " : " $2}' /boot/efi/EFI/centos/grub.cfg

6、设置内核启动顺序

grub2-set-default 0

7、重新创建内核配置

1)、BIOS模式执行下面命令:

$ grub2-mkconfig -o /boot/grub2/grub.cfg

2)、UEFI模式执行下面命令:

$ grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg

8、重启验证

内核升级完成后需要重新启动系统才能生效

1)、重启系统执行命令:

reboot

2)、查看系统内核执行命令:

uname -r

在这里插入图片描述

八、修改内核参数

1、加载br_netfilter模块

# 加载br_netfilter模块
modprobe br_netfilter
# 验证模块是否加载成功
lsmod | grep br_netfilter

2、修改内核参数

1)、修改配置文件

cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
vm.swappiness = 0
EOF

说明
禁止使用swap空间,只有当系统OOM时才允许使用它
vm.swappiness = 0

2)、生效执行命令:

sysctl --system
# 或 
sysctl -p /etc/sysctl.d/k8s.conf

说明
以下3项为必须参数,其他参数可根据需要添加

  • net.bridge.bridge-nf-call-iptables:开启桥设备内核监控(ipv4)
  • net.ipv4.ip_forward:开启路由转发
  • net.bridge.bridge-nf-call-ip6tables:开启桥设备内核监控(ipv6)

九、配置yum源(采用阿里云repo源)

# 下载常用的软件
yum clean all && yum makecache  && yum repolist
yum install -y vim net-tools  bash-completion wget lrzsz     
# 配置国内阿里云docker的repo源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

十、配置安装k8s组件需要的阿里云的repo源

cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpghttp://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF

十一、配置时间同步

方式一、采用ntpdate命令

# 安装ntpdate命令
yum install ntpdate -y
# 跟网络源做同步
ntpdate cn.pool.ntp.org
# 把时间同步做成计划任务
crontab -e
# 填入一下内容
* */1 * * * /usr/sbin/ntpdate   cn.pool.ntp.org
# 重启crond服务
service crond restart

方式二、chronyd

# 安装chronyd
yum install -y chronyd
# 启动chronyd及加入开机自启
systemctl start chronyd && systemctl enable chronyd 
# 修改/etc/chrony.conf配置文件,同步服务器地址为阿里云,增加一行(server ntp1.aliyun.com iburst,其余服务地址注释了)
server ntp1.aliyun.com iburst

十二、配置IPVS

yum install  -y ipvsadm ipset sysstat conntrack libseccomp  
cat > /etc/sysconfig/modules/ipvs.modules <<EOF
#!/bin/bash
ipvs_modules="ip_vs ip_vs_lc ip_vs_wlc ip_vs_rr ip_vs_wrr ip_vs_lblc ip_vs_lblcr ip_vs_dh ip_vs_sh ip_vs_fo ip_vs_nq ip_vs_sed ip_vs_ftp nf_conntrack ip_tables ip_set xt_set ipt_set ipt_rpfilter ipt_REJECT ipip "
for kernel_module in \${ipvs_modules}; do/sbin/modinfo -F filename \${kernel_module} > /dev/null 2>&1if [ $? -eq 0 ]; then/sbin/modprobe \${kernel_module}fi
done
EOF  
chmod 755 /etc/sysconfig/modules/ipvs.modules 
sh /etc/sysconfig/modules/ipvs.modules 
lsmod | grep ip_vs

说明
dummy0网卡和kube-ipvs0网卡:在安装k8s集群时,启用了ipvs的话,就会有这两个网卡。(将service的IP绑定在kube-ipvs0网卡上)

至此服务器的基础配置全部完成,下一篇将安装Docker的K8s集群


http://chatgpt.dhexx.cn/article/OwjQTYO7.shtml

相关文章

微服架构基础设施环境平台搭建 -(四)在Kubernetes集群基础上搭建Kubesphere平台

微服架构基础设施环境平台搭建 -&#xff08;四&#xff09;在Kubernetes集群基础上搭建Kubesphere平台 通过采用微服相关架构构建一套以KubernetesDocker为自动化运维基础平台&#xff0c;以微服务为服务中心&#xff0c;在此基础之上构建业务中台&#xff0c;并通过Jekins自动…

微服架构简介

什么是微服务&#xff1f; 专业解释&#xff1a; 微服务架构是一种架构模式&#xff0c;它提倡将单一应用程序划分成一组小的服务&#xff0c;服务之间互相协调、互相配合&#xff0c;为用户提供最终价值。每个服务运行在其独立的进程中&#xff0c;服务与服务间采用轻量级的…

微服架构基础设施环境平台搭建 -(五)Docker常用命令

微服架构基础设施环境平台搭建 -&#xff08;五&#xff09;Docker常用命令 本文主要列出了Docker常用的命令 微服架构基础设施环境平台搭建 系列文章 微服架构基础设施环境平台搭建 -&#xff08;一&#xff09;基础环境准备 微服架构基础设施环境平台搭建 -&#xff08;二&am…

微服务简介

文章目录 微服务&#xff08;micro services&#xff09;简介一 什么是微服务&#xff1f;二 微服务这个概念的由来三 微服务和单体式架构区别3.1 单体式架构缺点3.2 微服务架构的解决方案3.3 微服务缺点3.4 微服务优点3.5 单体式和微服务对比 微服务&#xff08;micro service…

微服务什么是以及微服务框架

微服务&#xff08;microservice&#xff09; 微服务是分布式架构的一种&#xff0c;分布式架构其实就是要把服务做一个拆分&#xff0c;而springcloud只是解决了拆分过程中的服务治理问题。 在单体架构中&#xff0c;我们把所有的服务都写在一起&#xff0c;随着业务的复杂代…

微服篇01——微服务的发展

01——微服务的发展 1&#xff1a;Monolith&#xff08;整体架构&#xff09; 服务所对应的代码由多个项目所组成&#xff0c;最终合并在一起形成一个WAR包&#xff0c;再部署到Web容器。 负载与扩容&#xff1a; 2&#xff1a;微服务(Microservice)架构模式 Microservic…

配置不同网段的dhcp服务器

dhcp中继设置 试题4&#xff1a;DHCP实验 背景&#xff1a; 某公司新建了局域网&#xff0c;要求网内地址采用DHCP分配&#xff0c;DHCP服务器地址为172.16.1.5/24&#xff0c;请建立172.16.1.128/25的域为局域网用户分配置IP地址&#xff0c;域中DNS地址为&#xff1a;202.97.…

Linux服务器配置(详细版)

本来就很麻烦&#xff0c;如果错了一个很有可能从新再来&#xff0c;非常麻烦所以要细心 请省略这段部分 --------------------------------------------------------------------------------------------------------------------------------------------- Linux命令 1.进…

银河麒麟服务器修改ip,银河麒麟配置DNS服务器

银河麒麟配置DNS服务器 内容精选 换一换 MindInsight为MindSpore提供了简单易用的调优调试能力。在训练过程中,可以将标量、张量、图像、计算图、模型超参、训练耗时等数据记录到文件中,通过MindInsight可视化页面进行查看及分析。MindInsight组件为MindStudio的独立组件,请…

查看服务器sftp用户信息,linux查看sftp服务器配置

linux查看sftp服务器配置 内容精选 换一换 为加强对系统数据的容灾管理,云堡垒机支持配置日志备份,提高审计数据安全性和系统可扩展性。本小节主要介绍如何在系统配置FTP/SFTP服务器参数,将日志远程备份至FTP/SFTP服务器。开启远程备份后,系统默认在每天零点备份前一天的系…

访问量100万的网站服务器,100万访问量 服务器配置

100万访问量 服务器配置 内容精选 换一换 弹性负载均衡有不同的负载均衡,分别是共享型负载均衡和独享型负载均衡,便于用户根据不同的应用场景和功能需求选择合适的负载均衡器类型。共享型负载均衡:适用于访问量较大的web业务,提供基于域名和URL的路由均衡能力,实现更加灵活…

思科模拟器企业网站服务器配置,cisco模拟器配置域名web服务器

cisco模拟器配置域名web服务器 内容精选 换一换 防护域名开启WEB基础防护之后,访问网站如果出现500,502,504等报错,并且显示Web应用防火墙和网站连接失败,如图1所示。可能的原因比较多,如防火墙拦截、源站配置错误、HTTPS/WebSockets采用不安全的协议版本、后端服务器性能…

hpe服务器稳定性,hpe服务器安装与配置

hpe服务器安装与配置 内容精选 换一换 Ceph集群可采用TaiShan服务器和x86服务器混合部署的方式和全TaiShan服务器的非混合部署方式。在混合部署场景下&#xff0c;三个Ceph节点中&#xff0c;两台为TaiShan 200服务器(型号2280)&#xff0c;一台为Fusion Server服务器(型号2288…

曙光服务器Raid配置

前言 这几天一直在某单位做信息化项目&#xff0c;这几天接触的国产化服务器&#xff0c;当然服务器型号是定制的&#xff0c;官网是没有这个型号的&#xff0c;并且系统也是国产化的。下面附上几幅工作照片&#xff01; 一、曙光服务器Raid配置说明 1.1、Raid配置途径 适用…

家用 NAS 服务器(1)| 配置选择及准备

家用 NAS 服务器&#xff08;1&#xff09;| 事前准备及配置选择 原文地址&#xff1a;CSDN 博文 后文链接&#xff1a;家用 NAS 服务器&#xff08;2&#xff09;| Hyper-V的Winserver 2022和Ubuntu 22.04双系统 文章目录 家用 NAS 服务器&#xff08;1&#xff09;| 事前准…

ensp服务器配置文件,ensp中服务器的基本配置

ensp中服务器的基本配置 内容精选 换一换 用户云服务器基本网络功能异常,无法完成基本通信。从弹性云服务器内部ping所在子网的网关,无法ping通,则需首先排查二三层网络问题。本问题请按照以下思路进行排查处理。检查弹性云服务器是否获取到IP:检查弹性云服务器是否获取到I…

家用服务器配置清单,供君参考

从零玩转服务器&#xff0c;小白搞机&#xff0c;走起&#xff01; 硬件选择 1、CPU。做服务器用的话&#xff0c;肯定intel家的&#xff0c;如果想作为家用服务器&#xff0c;既当普通电脑&#xff0c;又当服务器&#xff0c;那不仅核心要多&#xff0c;主频还要高。这样的C…

1000并发的系统服务器配置,1000人并发服务器配置

1000人并发服务器配置 内容精选 换一换 多个用户同时通过ssh登录堡垒机管理下的任一服务器时,允许登录的帐号数有上限,当登录的帐号数超出上限值时,必须退出一个帐号才能再登录一个账号。该问题是由于并发数限制导致的。云堡垒机支持100、200、500、1000、2000、5000资产规格…

创业公司如何搭建服务器配置方案?

1.省钱之道:初创企业应用为先 “工欲善其事,必先利其器。”IT采购不仅是帮助内部提高工作效率与节约成本,同时合理IT设备能够帮助获得更大的收益,特别是初创企业拼的就是服务。当下在互联网+的大背景下,可谓全民谈创业,人人当老板,但知易行难几乎是所有创业的共识。作为…

PHP通常用哪种web服务器,常见的几种WEB服务器配置方案分享

在众多专用服务器中&#xff0c;WEB服务器应该是我们最为熟知和常用到的了&#xff0c;根据不同的建站及WEB需求&#xff0c;WEB服务器有着好几种常见的环境配置方案&#xff0c;这里就总结分享一下&#xff1a; 当前比较流行的配置就是跑php一般就是&#xff0c;php运行的肯定…