当前位置: 首页 > news >正文

Ubuntu 22.04.3 LTS单机私有化部署sealos

  • 推荐使用奇数台 Master 节点和若干 Node 节点
  • 操作系统 :Ubuntu 22.04 LTS
  • 内核版本 :5.4 及以上
  • 配置推荐 :CPU 4 核 , 内存 8GB, 存储空间 100GB 以上
  • 最小配置 :CPU 2 核 , 内存 4GB, 存储空间 60GB

这里采用的Ubuntu 22.04.3 LTS  版本,Ubuntu 20.04.4 LTS这个版本应该也是可以的有兴趣可以测试一下。不想私有化部署的可以直接访

root@master:~# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 22.04.3 LTS
Release:        22.04
Codename:       jammy

 分区大小,搭建好后磁盘占用51G,所以分区一定要大,这里是通过扩容lvs增加的容量。

root@master:~# df -Th
Filesystem                        Type     Size  Used Avail Use% Mounted on
tmpfs                             tmpfs    791M  8.2M  783M   2% /run
/dev/mapper/ubuntu--vg-ubuntu--lv ext4      97G   51G   42G  55% /
tmpfs                             tmpfs    3.9G     0  3.9G   0% /dev/shm
tmpfs                             tmpfs    5.0M     0  5.0M   0% /run/lock
/dev/sda2                         ext4     2.0G  251M  1.6G  14% /boot
tmpfs                             tmpfs    791M  4.0K  791M   1% /run/user/0

 磁盘容量不够参考,磁盘容量足够请绕过此步骤

root@master:~# lvsLV        VG        Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convertubuntu-lv ubuntu-vg -wi-ao---- <49.00g
root@master:~# vgsVG        #PV #LV #SN Attr   VSize   VFreeubuntu-vg   1   1   0 wz--n- <98.00g 49.00g
root@master:~# pvsPV         VG        Fmt  Attr PSize   PFree/dev/sda3  ubuntu-vg lvm2 a--  <98.00g 49.00g
root@master:~# lsblk
NAME                      MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
loop0                       7:0    0  63.5M  1 loop /snap/core20/2015
loop1                       7:1    0 111.9M  1 loop /snap/lxd/24322
loop2                       7:2    0  63.4M  1 loop /snap/core20/1974
loop3                       7:3    0  53.3M  1 loop /snap/snapd/19457
loop4                       7:4    0  40.8M  1 loop /snap/snapd/20092
sda                         8:0    0   100G  0 disk
├─sda1                      8:1    0     1M  0 part
├─sda2                      8:2    0     2G  0 part /boot
└─sda3                      8:3    0    98G  0 part└─ubuntu--vg-ubuntu--lv 253:0    0    49G  0 lvm  /var/lib/containers/storage/overlay/
sr0                        11:0    1  1024M  0 romroot@master:~# lvextend -L +49G /dev/ubuntu-vg/ubuntu-lvSize of logical volume ubuntu-vg/ubuntu-lv changed from <49.00 GiB (12543 extents) to <98.00 GiB (25087 extents).Logical volume ubuntu-vg/ubuntu-lv successfully resized.
root@master:~# df -Th
Filesystem                        Type     Size  Used Avail Use% Mounted on
tmpfs                             tmpfs    791M  3.3M  788M   1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv ext4      48G   40G  6.4G  86% /
tmpfs                             tmpfs    3.9G     0  3.9G   0% /dev/shm
tmpfs                             tmpfs    5.0M     0  5.0M   0% /run/lock
/dev/sda2                         ext4     2.0G  251M  1.6G  14% /boot
tmpfs                             tmpfs    791M  4.0K  791M   1% /run/user/0root@master:~# resize2fs /dev/ubuntu-vg/ubuntu-lv
resize2fs 1.46.5 (30-Dec-2021)
Filesystem at /dev/ubuntu-vg/ubuntu-lv is mounted on /; on-line resizing required
old_desc_blocks = 7, new_desc_blocks = 13
The filesystem on /dev/ubuntu-vg/ubuntu-lv is now 25689088 (4k) blocks long.root@master:~# df -Th
Filesystem                        Type     Size  Used Avail Use% Mounted on
tmpfs                             tmpfs    791M  3.3M  788M   1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv ext4      97G   40G   53G  43% /
tmpfs                             tmpfs    3.9G     0  3.9G   0% /dev/shm
tmpfs                             tmpfs    5.0M     0  5.0M   0% /run/lock
/dev/sda2                         ext4     2.0G  251M  1.6G  14% /boot
tmpfs                             tmpfs    791M  4.0K  791M   1% /run/user/0

 首先安装sealos

apt install jq curl vim -y
curl --silent "https://api.github.com/repos/labring/sealos/releases" | jq -r '.[].tag_name'echo "deb [trusted=yes] https://apt.fury.io/labring/ /" | sudo tee /etc/apt/sources.list.d/labring.listsudo apt update && sudo apt install sealos -y

下面安装步骤是参考大佬的文章

Sealos 私有化部署完全指南_sealos 部署_米开朗基杨的博客-CSDN博客

  230   22:39:35 root  sealos apply -f Clusterfile231   22:41:17 root  sh sealos.sh232   22:59:47 root  kubectl get pods -A233   23:00:12 root  sealos run docker.io/labring/sealos-cloud:latest    --env cloudDomain="10.1.1.138.nip.io"

 Cluster

sealos gen labring/kubernetes:v1.25.6 \labring/helm:v3.12.0 \labring/calico:v3.24.1 \labring/cert-manager:v1.8.0 \labring/openebs:v3.4.0 \--masters 10.1.1.138 > Clusterfilesealos apply -f Clusterfile

 等待集群就绪后 , 使用 kubectl get pods -A 查看集群状态:

vim sealos.sh

#!/bin/bash
set -ecat << EOF > ingress-nginx-config.yaml
apiVersion: apps.sealos.io/v1beta1
kind: Config
metadata:creationTimestamp: nullname: ingress-nginx-config
spec:data: |controller:hostNetwork: truekind: DaemonSetservice:type: NodePortmatch: docker.io/labring/ingress-nginx:v1.5.1path: charts/ingress-nginx/values.yamlstrategy: merge
EOFsealos run docker.io/labring/kubernetes-reflector:v7.0.151\docker.io/labring/ingress-nginx:v1.5.1\docker.io/labring/zot:v1.4.3\docker.io/labring/kubeblocks:v0.5.3\--env policy=anonymousPolicy\--config-file ingress-nginx-config.yamlecho "patch ingress-nginx-controller tolerations to allow run on master node, if you don't want to run on master node, please ignore this step"
kubectl -n ingress-nginx patch ds ingress-nginx-controller -p '{"spec":{"template":{"spec":{"tolerations":[{"key":"node-role.kubernetes.io/control-plane","operator":"Exists","effect":"NoSchedule"}]}}}}'echo "waitting for kubeblocks crd created, this may take a while"
while ! kubectl get clusterdefinitions.apps.kubeblocks.io redis >/dev/null 2>&1; dosleep 5
doneecho "start patch redis clusterdefinition"
kubectl patch clusterdefinitions.apps.kubeblocks.io redis --type='json' -p '[{"op": "add", "path": "/spec/componentDefs/0/podSpec/containers/1/resources/limits", "value": {"cpu":"100m", "memory":"100Mi"}}]'
echo "patch redis success"echo "wait for all pod to be ready then install Sealos"
kubectl get po -A

 sh sealos.sh

sh sealos.sh

 执行时间长耐心等待

kubectl get po -A

过程可能稍长,等待所有 Pod 均为 Ready 状态后,即可进行下一步。

最后一条命令

sealos run docker.io/labring/sealos-cloud:latest    --env cloudDomain="10.1.1.138.nip.io"

过程还是很曲折,不过最后总算成功了,其实大佬的文章还得仔细看,能节约不少时间,阿里云的无影云桌面有3个月的试用,使用阿里云的无影云桌面也测试成功,就是有一点没有搞定,登陆后可以输入密码,但是浏览器一直提示安全问题,ubuntu不知道怎么设置才能正常。

阿里云无影云桌面版本,浏览器打开的问题暂时还没有解决办法。

root@1:~# lsb_release -a
LSB Version:	core-11.1.0ubuntu2-noarch:security-11.1.0ubuntu2-noarch
Distributor ID:	Ubuntu
Description:	Ubuntu 20.04.4 LTS
Release:	20.04
Codename:	focal

windows的CHROME的设置请看下面的解决办法。

mongodb需要avx支持,如果cpu不支持avx会失败,J1900不支持avx所以这个坑请跳过。

这里要非常感谢BXY大佬!

日志查看参考

kubectl logs  sealos-mongodb-mongodb-0 -n sealos

浏览器访问 Sealos 网址时提示“不安全”
如果您在部署过程中提供了正确的证书,但仍然收到这个提示,可以采取以下措施:

检查证书是否和域名匹配:证书需要解析 {{ $domain }} 及 *.{{ $domain }};
检查证书是否被正确地使用 base64 编码并写入到 tls-secret.yaml 文件中;
如果您在部署过程中没有提供证书,那么这种现象是正常的,因为默认使用的是 Sealos 的自签名证书。您可以选择以下两种方式解决:

信任证书:在浏览器中导出证书,然后双击证书打开,导入到受信任的根证书颁发机构中;
关闭浏览器的安全检查:以 Chrome 为例,修改 Chrome 浏览器的快捷方式,在目标后面添加 --ignore-certificate-errors 参数,然后重新打开浏览器。
部署时卡在 Waiting waiting for mongodb secret generated 怎么办?
Sealos 依赖 kubeblocks 提供的数据库服务。如果在部署过程中卡在这一步,说明在上一步,部署 Sealos 依赖组件时出错了。您应该尝试重新部署。

如何重新部署?
如果您需要重新部署,只需执行以下命令:

$ sealos reset
这个命令将清理所有集群资源,让您可以从头开始部署。
 

本文参考大佬米开朗基杨的文章,非常感谢!
https://blog.csdn.net/alex_yangchuansheng/article/details/131937199

 最后欣赏一下sealos的桌面

sealos还提供一键命令,如果上面没有成功,sealos reset后测试下面这个命令,按提示操作

curl -sfL https://raw.githubusercontent.com/labring/sealos/main/scripts/cloud/install.sh -o /tmp/install.sh && bash /tmp/install.sh 

admin

sealos2023

相关文章:

Ubuntu 22.04.3 LTS单机私有化部署sealos

推荐使用奇数台 Master 节点和若干 Node 节点操作系统 :Ubuntu 22.04 LTS内核版本 :5.4 及以上配置推荐 :CPU 4 核 , 内存 8GB, 存储空间 100GB 以上最小配置 :CPU 2 核 , 内存 4GB, 存储空间 60GB 这里采用的Ubuntu 22.04.3 LTS 版本&#xff0c;Ubuntu 20.04.4 LTS这个版本…...

#力扣:2236. 判断根结点是否等于子结点之和@FDDLC

2236. 判断根结点是否等于子结点之和 一、Java /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { this.val val; }* TreeNode(int val, TreeNo…...

暴力递归转动态规划(九)

题目 题有点难&#xff0c;但还挺有趣 有一个咖啡机数组arr[]&#xff0c;其中arr[i]代表每一个咖啡机冲泡咖啡所需的时间&#xff0c;有整数N&#xff0c;代表着准备冲咖啡的N个人&#xff08;假设这个人拿到咖啡后喝完的时间为0&#xff0c;拿手里咖啡杯即变空&#xff09;&a…...

Linux知识点 -- 高级IO(一)

Linux知识点 – 高级IO&#xff08;一&#xff09; 文章目录 Linux知识点 -- 高级IO&#xff08;一&#xff09;一、5种IO模型1.IO再理解2.阻塞IO3.非阻塞轮询式IO4.信号驱动IO5.IO多路转接6.异步IO7.同步通信vs异步通信8.阻塞vs非阻塞 二、非阻塞IO1.设置非阻塞的方法2.非阻塞…...

Android AMS——内存回收机制(十二)

在 Android 中,AMS(Activity Manager Service)负责管理应用程序的生命周期和资源分配。其中,AMS也包含了内存回收机制,用于释放系统中不再使用的内存资源,以保证系统的稳定性和性能。 一、内存回收简介 1、回收机制 Android AMS 的内存回收机制主要涉及以下几个方面:…...

1600*C. Add One(数位DP找规律)

Problem - 1513C - Codeforces 解析&#xff1a; 考虑DP&#xff0c;DP[ i ] 为从 0 开始执行 i 次操作&#xff0c;此时数字的位数。 我们发现当一个9再操作一次就会变成1和0&#xff0c;并且相邻的大部分长度都不会变化&#xff0c;0会影响10次操作之后的位数&#xff0c;1会…...

干货丨送你几个实用PR编辑技巧(二) 优漫动游

小编认为无论看什么书或教程&#xff0c;都不应该脱离实际去学习PR技巧&#xff0c;基础理论与实践相结合&#xff0c;才能达到比较好的学习和应用效果。 技巧一 如果项目板里有很多素材&#xff0c;很难看清楚哪些素材是已经用过的&#xff0c;哪些是没用过的话&#xff0…...

[每周一更]-(第67期):docker-compose 部署php的laravel项目

容器化部署laravel框架的php项目 操作步骤 参考&#xff1a; https://www.cnblogs.com/jingjingxyk/p/16842937.htmlhttps://developer.aliyun.com/article/708976 0、plv项目修改 composer install.env 修改后台地址 IP:端口chmod -R 777 public / chmod -R 777 storagevi…...

vsCode 忽略 文件上传

1 无 .gitignore 文件时&#xff0c;在项目文件右键&#xff0c;Git Bash 进入命令行 输入 touch .gitignore 生成gitignore文件 2 、在文件.gitignore里输入 node_modules/ dist/ 来自于&#xff1a;vscode git提交代码忽略node_modules_老妖zZ的博客-CSDN博客...

197、管理 RabbitMQ 的虚拟主机

开启Rabbitmq的一些命令&#xff1a; 小黑窗输入&#xff1a; rabbitmq-plugins enable rabbitmq_management 启动控制台插件&#xff0c; 就是启动登录rabbitmq控制台的页面&#xff0c;rabbitmq_management 代表了RabbitMQ的管理界面。 rabbitmq-server 启动rabbitMQ服务器…...

[NCTF2019]SQLi regexp 盲注

/robots.txt 访问一下 $black_list "/limit|by|substr|mid|,|admin|benchmark|like|or|char|union|substring|select|greatest|%00|\|| |in|<|>|-|\.|\(\)|#|and|if|database|users|where|table|concat|insert|join|having|sleep/i";If $_POST[passwd] admi…...

通过webpack创建并打包js库到npm仓库

1.创建项目并进行基本配置 webpack配置文件&#xff1a; webpack.build.js const path require(path);module.exports {mode:development,entry:./src/webpack-numbers.js,output: {filename: webpack-numbers.js,path: path.resolve(__dirname, dist),clean: true,},}; p…...

【Java 进阶篇】深入了解JavaScript中的函数

函数是JavaScript编程中的核心概念之一。它们是可重用的代码块&#xff0c;可以帮助您组织和管理程序&#xff0c;使您的代码更具可读性和可维护性。在本篇博客中&#xff0c;我们将深入了解JavaScript中的函数&#xff0c;包括函数的基本语法、参数、返回值、作用域、闭包和高…...

谷歌 Chrome 浏览器正推进“追踪保护”功能

导读近日消息&#xff0c;根据国外科技媒体 Windows Latest 报道&#xff0c;谷歌计划在 Chrome 浏览器中推进“追踪保护”&#xff08;Tracking Protection&#xff09;功能&#xff0c;整合浏览器现有隐私功能&#xff0c;保护用户被网站跟踪。 根据一项 Chromium 提案&…...

Excel 自动提取某一列不重复值

IFERROR(INDEX($A$1:$A$14,MATCH(0,COUNTIF($C$1:C1,$A$1:$A$14),0)),"")注意&#xff1a;C1要空置&#xff0c;从C2输入公式 参考&#xff1a; https://blog.csdn.net/STR_Liang/article/details/105182654 https://zhuanlan.zhihu.com/p/55219017?utm_id0...

【TensorFlow2 之011】TF 如何使用数据增强提高模型性能?

一、说明 亮点&#xff1a;在这篇文章中&#xff0c;我们将展示数据增强技术作为提高模型性能的一种方式的好处。当我们没有足够的数据可供使用时&#xff0c;这种方法将非常有益。 教程概述&#xff1a; 无需数据增强的训练什么是数据增强&#xff1f;使用数据增强进行训练可视…...

Hadoop 安装教程 (Mac m1/m2版)

安装JDK1.8 这里最好是安装1.8版本的jdk 1. 进入官网Java Downloads | Oracle Hong Kong SAR, PRC,下滑到中间区域找到JDK8 2.选择mac os,下载ARM64 DMG Installer对应版本 注&#xff1a;这里下载需要注册oracle账号&#xff0c;不过很简单&#xff0c;只需要提供邮箱即可&…...

Docker - 网络模式与容器网络互连

前言 简单记录一下在Docker学习过程中&#xff0c;关于网络模式和容器网络互连的基本概念。 一、Docker的网络模式 &#xff08;1&#xff09;桥接模式&#xff1a;Docker会为每个容器创建一个虚拟网卡&#xff0c;并将这些虚拟网卡连接到一个虚拟交换机上&#xff0c;从而实…...

【基础篇】三、Flink集群角色、系统架构以及作业提交流程

文章目录 1、集群角色2、部署模式3、Flink系统架构3.1 作业管理器&#xff08;JobManager&#xff09;3.2 任务管理器&#xff08;TaskManager&#xff09; 4、独立部署会话模式下的作业提交流程5、Yarn部署的应用模式下作业提交流程 1、集群角色 Flink提交作业和执行任务&…...

第一个2DGodot游戏-从零开始-逐步解析

视频教程地址&#xff1a;https://www.bilibili.com/video/BV1Hw411v78Y/ 前言 大家好&#xff0c;这一集我将要带领大家完成官方文档里的第一个2DGodot游戏&#xff0c;从零开始&#xff0c;逐步解析&#xff0c;演示游戏的制作全过程&#xff0c;尽量让&#xff0c;就算是新…...

大数据学习(7)-hive文件格式总结

&&大数据学习&& &#x1f525;系列专栏&#xff1a; &#x1f451;哲学语录: 承认自己的无知&#xff0c;乃是开启智慧的大门 &#x1f496;如果觉得博主的文章还不错的话&#xff0c;请点赞&#x1f44d;收藏⭐️留言&#x1f4dd;支持一下博>主哦&#x…...

GRU的 电影评论情感分析 - python 深度学习 情感分类 计算机竞赛

1 前言 &#x1f525;学长分享优质竞赛项目&#xff0c;今天要分享的是 &#x1f6a9; GRU的 电影评论情感分析 - python 深度学习 情感分类 &#x1f947;学长这里给一个题目综合评分(每项满分5分) 难度系数&#xff1a;3分工作量&#xff1a;3分创新点&#xff1a;4分 这…...

kafka简述

前言 ​ 在大数据高并发场景下&#xff0c;当系统中出现“生产“和“消费“的速度或稳定性等因素不一致的时候&#xff0c;就需要消息队列&#xff0c;作为抽象层&#xff0c;弥合双方的差异。一般选型是Kafka、RocketMQ&#xff0c;这源于这些中间件的高吞吐、可扩展以及可靠…...

《RISC-V体系结构编程与实践》的benos_payload程序——mysbi跳转到benos分析

1、benos_payload.bin结构分析 韦东山老师提供的开发文档里已经对程序的结构做了分析&#xff0c;这里不再赘述&#xff0c;下面是讨论mysbi跳转到benos的问题&#xff1b; 2、mysbi跳转到benos的代码 3、跳转产生的疑问 我认为mysbi.bin最后跳转到0x22000地址处执行&#xff0…...

ad5665r STM32 GD32 IIC驱动设计

本文涉及文档工程代码&#xff0c;下载地址如下 ad5665rSTM32GD32IIC驱动设计,驱动程序在AD公司提供例程上修改得到,IO模拟的方式进行IIC通信资源-CSDN文库 硬件设计 MCU采用STM32或者GD32,GD32基本上和STM32一样,针对ad566r的IIC时序操作是完全相同的. 原理图设计如下 与MC…...

TensorFlow入门(十六、识别模糊手写图片)

TensorFlow在图像识别方面,提供了多个开源的训练数据集,比如CIFAR-10数据集、FASHION MNIST数据集、MNIST数据集。 CIFAR-10数据集有10个种类,由6万个32x32像素的彩色图像组成,每个类有6千个图像。6万个图像包含5万个训练图像和1万个测试图像。 FASHION MNIST数据集由衣服、鞋子…...

CSwin Transformer 学习笔记

Cswin提出了上图中使用交叉形状局部attention&#xff0c;为了解决VIT模型中局部自注意力感受野进一步增长受限的问题&#xff0c;同时提出了局部增强位置编码模块&#xff0c;超越了Swin等模型&#xff0c;在多个任务上效果SOTA&#xff08;当时的SOTA&#xff0c;已经被SG Fo…...

Linux上通过mysqldump命令实现自动备份

Linux上通过mysqldump命令实现自动备份 直接上代码 #!/bin/bash mysql_user"root" mysql_host"localhost" mysql_port"3306" mysql_charset"utf8mb4"backup_location/home/mysql/mysql_back/sql # 是否开始自动删除过期文件,过期时间…...

v-model与.sync的区别

我们在日常开发的过程中,v-model指令可谓是随处可见,一般来说 v-model 指令在表单及元素上创建双向数据绑定,但 v-model 本质是语法糖。但提到语法糖,这里就不得不提另一个与v-model有相似功能的双向绑定语法糖了,这就是 .sync修饰符。在这里就两者的使用进行一下比较和总结: …...

Linux---进程(1)

操作系统 传统的计算机系统资源分为硬件资源和软件资源。硬件资源包括中央处理器&#xff0c;存储器&#xff0c;输入设备&#xff0c;输出设备等物理设备&#xff1b;软件资源是以文件形式保存在存储器上的成熟和数据等信息。 操作系统就是计算机系统资源的管理者。 如果你的计…...