[阿里云使用k8s技术部署微服务]

news2024/11/15 23:37:37

1.1 检查CPU/内存/网络设置
对虚拟机的要求(必须):
CPU:最少2核
内存:master >=4G,node >=3G
网络:NAT模式
操作系统版本:
Docker 要求 CentOS 系统的内核版本必须高于 3.10。 如果内核版本为3.10,则发行编号最好能升级到1127, 即:3.10.0-1127。
我们可以通过uname -r 命令查看当前系统的内核版本:

[root@sq ~]# uname -r
3.10.0-1127.19.1.el7.x86_64

我这个也是符合的
在这里插入图片描述
1.2 设置固定IP地址
阿里云上可以忽略这一步
用xshell或者SecureCRT连接阿里云服务器之后记得要ping通百度
1.3 设置主机名

vi /etc/hostname

在这里插入图片描述
这一步我们在创建实例的时候就已经设置好了,
在这里插入图片描述
我们需要改一个node00------------>master

hostnamectl set-hostname master

改了以后查看vi /etc/hostname发现里面也已经成功改为了master
为保险起见,阿里云也要修改主机名,并且重启,否则vi /etc/hosts里面仍然是node00
在这里插入图片描述

1.4 设置解析hosts值(三台设置相同)
当有多个服务器需要安装相同的软件服务时,每个服务都需要去执行相同的命令很繁琐,而且可能会在某台执行时漏掉点什么。所以同步执行命令很重要
链接: SecureCRT同步执行命令

vi /etc/hosts

追加内容如下(阿里云用私网):

172.21.188.188 master  master
172.21.188.189 node1  node1
172.21.188.190 node2  node2
151.101.108.133 raw.githubusercontent.com

1.5 关闭防火墙
检查防火墙的状态

systemctl status firewalld

临时关闭防火墙

systemctl stop firewalld

开机禁用防火墙

systemctl disable firewalld

1.6 关闭swap和关闭selinux
运行以下命令,关闭swap空间

swapoff -a && sed -i '/swap/ s$^\(.*\)$#\1$g' /etc/fstab

kubelet 在 1.8 版本以后强制要求 swap 必须关闭。 运行以下命令,关闭selinux

setenforce 0 && sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config

1.7 修改docker配置文件(不存在请新增)

vi /etc/docker/daemon.json
{
	"registry-mirrors":
["https://v2c6fjn8.mirror.aliyuncs.com"],
    "exec-opts":
["native.cgroupdriver=systemd"],
	"log-driver": "json-file",
	"log-opts": {
    	"max-size": "100m"
	},
	"storage-driver": "overlay2"
}

在这里插入图片描述
参数说明如下:
registry-mirrors,阿里云镜像加速地址
exec-opts, 由于安装kubernetes的过程中,会出现 文件驱动默认由systemd改成cgroupfs, 而我们安装 的docker使用的文件驱动是systemd, 造成不一致, 导致镜像无法启动。所以需要修改。第一种方式是修 改docker,另外一种方式是修改kuberatis。附:使用 docker info查看
log-driver , 日志文件格式
log-opts 的max-size,日志文件,最大100M storage-driver 存储驱动程序
1.8 配置k8s的镜像加速
安装kubernetes的时候,需要安装kubelet, kubeadm等 包,但k8s官网给的yum源是 packages.cloud.google.com,国内访问不了,因此我们可以使用阿里云的yum仓库镜像。
先查看一下是否存在:

cat /etc/yum.repos.d/kubernetes.repo

如果不存在,则运行(注意前面的行号,一行完了再回车换行,否则会报语法错误):

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

在这里插入图片描述
参数说明如下:
enable 是否启用该仓库,1表示启用
gpgcheck 是否验证从该仓库获得程序包的合法性 1 为验证
repo_gpgcheck 是否验证元数据的合法性 元数据就 是程序包列表 1为验证
1.9 安装k8s并启动
运行以下代码,安装kubelet、kubeadm、kubectl三大组

yum install -y kubelet-1.18.0 kubeadm-1.18.0 kubectl-1.18.0 --disableexcludes=kubernetes

参数说明:
disableexcludes选项:禁掉除kubernetes这个之外的 别的仓库
执行结果图下图所示:
在这里插入图片描述
运行以下代码,设置kubelet开机启动,同时启动kubelet

systemctl enable kubelet && systemctl start kubelet

在这里插入图片描述
1.10 修改网络配置
设置iptables 网桥参数,添加内核参数文件 :

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

运行以下命令,使上述设置生效:

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

1.11 修改配置后,重启kubelet服务

systemctl restart kubelet

1.12 修改通讯协议(如果是Centos8,请修 改)
注意Centos8 才修改,Centos7请忽略该步骤。

vi /etc/crypto-policies/back- ends/opensslcnf.config

把:MinProtocol = TLSv1.2 改为 MinProtocol = TLSv1.1
修改后如下所示:

CipherString = @SECLEVEL=2:kEECDH:kRSA:kEDH:kPSK:kDHEPSK :kECDHEPSK:- aDSS:-3DES:!DES:!RC4:!RC2:!IDEA:- SEED:!eNULL:!aNULL:!MD5:-SHA384:- CAMELLIA:-ARIA:-AESCCM8
Ciphersuites = TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1 305_SHA256:TLS_AES_128_GCM_SHA256:TLS_AES _128_CCM_SHA256
MinProtocol = TLSv1.1
MaxProtocol = TLSv1.3

1.13 安装NFS
NFS(network file system)网络文件系统,类似于 Windows中的共享文件夹。我们在部署mysql数据库或 者其他服务时,可能需要在多台服务器之间共享数据, 因此,我们这里需要安装nfs-utils工具。
Centos7操作系统:

yum install nfs-common nfs-utils -y

Centos8操作系统:

dnf install nfs-utils nfs4-acl-tools

这里仅安装,后面用到时再做设置。
1.14 安装Docker

安装Docker是必须的,有关Docker的安装,我们再其他 教程中已经介绍过,这里不再赘述。以下仅列出关键的 安装步骤
centos7下,安装Docker的步骤主要有以下七步:

yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-
ce/linux/centos/docker-ce.repo
yum makecache fast
yum -y install docker-ce
systemctl start docker
systemctl enable docker
docker version

注意,如果虚拟机以前安装过Docker,此步骤可以省 略
总结:以上的所有操作,Master节点和Node节点都是需 要设置的

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/658389.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

1000*B. Keep it Beautiful

input 3 9 3 7 7 9 2 4 6 3 4 5 1 1 1 1 1 5 3 2 1 2 3output 111110010 11111 11011 解析&#xff1a; 如果数据不小于前一个数据&#xff0c;则一直为美丽序列&#xff1b; 当碰到第一个小于末尾的数据时&#xff0c;1. 如果他比首数据大&#xff0c;则不符题意。2. 小于等…

【ARMv8 SIMD和浮点指令编程】NEON 移动指令——精通 MOV?

移动指令主要涉及 MOV 和 MVN&#xff0c;它们分别是移动和求反移动。如果你认为仅仅两条指令&#xff0c;还是太小看设计者了&#xff01; 1 MOV (element) 将向量元素移动到另一个向量元素。该指令将源 SIMD&FP 寄存器的向量元素复制到目标 SIMD&FP 寄存器的指定向…

短视频seo系统源码私有化部署分享

短视频seo矩阵系统源码部署需要以下步骤&#xff1a; 确定系统环境要求&#xff1a;账号矩阵系统需要服务器环境支持PHP和MySQL数据库&#xff0c;因此需要确保服务器环境符合要求&#xff0c;并安装好相应的软件。例如&#xff0c;可以使用XAMPP或WAMP等软件包来快速安装PHP和…

中国唯一 一家Linux 基金会金牌会员 落户阿里云

导读2 月 20 日&#xff0c;全球知名非营利性组织 Linux 基金会宣布&#xff0c;阿里云正式成为 Linux 基金会金牌会员。阿里云表示将持续加大对开源项目的支持&#xff0c;并发挥自己的力量。 2 月 20 日&#xff0c;全球知名非营利性组织 Linux 基金会宣布&#xff0c;阿里云…

pyqt6安装

1、安装pyqt6和pyqt6-tools包 注意&#xff1a;pyqt6-tools目前仅支持python3.9版本&#xff0c;3.9版本后的安装部成功。&#xff08;截止2022.11.20&#xff09; 1.1 安装pyqt6和pyqt6-tools 安装pyqt和pyqt6-tools可以使用conda和pip进行安装 &#xff08;1&#xff09;…

【备战秋招】每日一题:2023.05-B卷-华为OD机试 - 报文回路

为了更好的阅读体检&#xff0c;可以查看我的算法学习博客报文回路 输入描述 第一行抓到的报文数量&#xff0c;后续C行依次输入设备节点D1和D2&#xff0c;表示从D1到D2发送了单向的报文&#xff0c;D1和D2用空格隔开 输出描述 组播通路是否“正常”&#xff0c;正常输出T…

SQL语言的四大组成部分——DCL(数据控制语言)

1️⃣前言 SQL语言中的DCL&#xff08;Data Control Language&#xff09;是一组用于控制数据库用户访问权限的语言&#xff0c;主要包括GRANT、REVOKE、DENY等关键字。 文章目录 1️⃣前言2️⃣DCL语言3️⃣GRANT关键字4️⃣REVOKE关键字5️⃣DENY关键字6️⃣总结附&#xff1…

从零搭建完整python自动化测试框架(UI自动化和接口自动化 )——持续更新

一、总体框架 总体框架如下图&#xff1a; 用例扫描、测试结果反馈&#xff0c;如要和其它项目管理系统或是用例管理系统对接&#xff08;比如testlink&#xff09;&#xff0c;就需要单独出来进行处理。 对于大型的产品&#xff0c;用例数特别多的话&#xff0c;需要建设一个…

AIGC提示(prompt)工程之开宗明义篇

大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的学生进入到算法…

VMware公司成为Linux基金会金牌会员

导读VMware是云基础架构和企业移动性的全球领导者&#xff0c;多年来一直积极参与开源开发。VMware通过Linux基金会项目(如ONAP&#xff0c;Cloud Native Computing Foundation(CNCF)&#xff0c;Cloud Foundry&#xff0c;Open vSwitch等)稳步提高其开源参与度。它刚刚成为了金…

HDFS初认识

HDFS初认识 文章目录 HDFS初认识HDFS是什么&#xff1f;HDFS的假想和设计目标HDFS的优缺点优点缺点 HDFS的架构组成客户端NameNodeDataNodeSecondary NameNode职责checkpoint机制 参考 HDFS是什么&#xff1f; Hadoop分布式文件系统&#xff08;HDFS&#xff09;是一个分布式文…

Websocket+protobuf怎么与服务器通信

Websocketprotobuf怎么与服务器通信 Websocket&#xff1a;WebSocket是⼀种⽹络传输协议&#xff0c;可在单个TCP连接上进⾏双全⼯通信&#xff0c;位于OSI模型的 应⽤层 实现⼀个简单的客⼾端和服务端 安装websockets pip3 install websockets客户端代码 import asyncio …

记一次异常外联事件应急响应

为方便您的阅读&#xff0c;可点击下方蓝色字体&#xff0c;进行跳转↓↓↓ 01 事件背景介绍02 事件分析过程03 事件分析结果04 安全加固建议 01 事件背景介绍 某内部应急演练中&#xff0c;安全部门收到来自业务部门的告警&#xff0c;称应用服务器存在异常外联情况&#xff0…

管理类联考——英语二——技巧篇——阅读理解——taiqi

第一章 翻译技巧概述 一、词汇方面 (一&#xff09;词义选择 大多数英语词汇是多义的&#xff0c;翻译时必须选择正确的词义。词义选择的方法有三&#xff1a;根据上下文和词的搭配选择根据词类选择、根据专业选择。 (二&#xff09;词义转换 在理解英文词汇的原始意义基础…

算法刷题-哈希表-三数之和

用哈希表解决了两数之和&#xff0c;那么三数之和呢&#xff1f; 第15题. 三数之和 力扣题目链接 给你一个包含 n 个整数的数组 nums&#xff0c;判断 nums 中是否存在三个元素 a&#xff0c;b&#xff0c;c &#xff0c;使得 a b c 0 &#xff1f;请你找出所有满足条件且…

后台服务守护进程神器pm2介绍及使用

前言 linux的后台服务程序需要在后台一直运行。如果通过ssh访问临时启动的&#xff0c;会话一结束就直接关闭了服务。想让服务在后台一直运行且永远不挂掉&#xff0c;推荐后台服务守护进程神器pm2&#xff0c;强大且适用于各种语言的后台服务程序。 pm2介绍 对于后台进程的管…

(十)异步-什么是异步方法(2)

一、什么是异步方法 异步方法在完成其工作之前即返回到调用方法&#xff0c;然后在调用方法继续执行的时候完成其工作。 特点&#xff1a; 方法头中包含 async 方法修饰符。包含一个或多个 await 表达式&#xff0c;表示可以异步完成的任务。必须具备3种返回类型之一&#x…

使用Gradio Interface构建交互式机器学习演示

❤️觉得内容不错的话&#xff0c;欢迎点赞收藏加关注&#x1f60a;&#x1f60a;&#x1f60a;&#xff0c;后续会继续输入更多优质内容❤️ &#x1f449;有问题欢迎大家加关注私戳或者评论&#xff08;包括但不限于NLP算法相关&#xff0c;linux学习相关&#xff0c;读研读博…

chatgpt赋能python:Python列表排序方法介绍

Python 列表排序方法介绍 在 Python 中&#xff0c;列表是一种非常常见的数据类型。在处理列表时&#xff0c;有时需要对列表进行排序&#xff0c;以便更方便地对其进行查找、比较、统计等操作。Python 中提供了多种排序方法&#xff0c;本文将介绍这些方法并说明其使用方法。…

chatgpt赋能python:Python中的日期遍历方法详解

Python中的日期遍历方法详解 作为一门非常流行的编程语言&#xff0c;Python中的日期遍历方法备受程序员们喜爱。它可以遍历任意时间段内的日期并进行各种操作&#xff0c;比如日期加减、日期格式转换等等。在本文中&#xff0c;我们将详细介绍Python中的日期遍历方法&#xf…