SealOS 一键安装 K8S

news2024/11/29 18:32:34

环境

# 查看系统发行版
$ cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"

# 查看本机 IP(192.168.213.37)
$ ip addr
...
enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:12:05:d6 brd ff:ff:ff:ff:ff:ff
    inet 192.168.213.37/24 brd 192.168.213.255 scope global noprefixroute dynamic enp0s8
       valid_lft 534sec preferred_lft 534sec
    inet6 fe80::95b2:c44f:3065:e6e/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
...

添加源

# 添加源
$ cat > /etc/yum.repos.d/labring.repo << EOF
[fury]
name=labring Yum Repo
baseurl=https://yum.fury.io/labring/
enabled=1
gpgcheck=0
EOF

# 清理缓存
$ yum clean all

安装 SealOS

# 安装 SealOS
$ yum install sealos
# 查看版本
$ sealos version
CriVersionInfo:
  RuntimeApiVersion: v1
  RuntimeName: containerd
  RuntimeVersion: v1.6.17
  Version: 0.1.0
KubernetesVersionInfo:
  clientVersion:
    buildDate: "2022-08-23T17:44:59Z"
    compiler: gc
    gitCommit: a866cbe2e5bbaa01cfd5e969aa3e033f3282a8a2
    gitTreeState: clean
    gitVersion: v1.25.0
    goVersion: go1.19
    major: "1"
    minor: "25"
    platform: linux/amd64
  kustomizeVersion: v4.5.7
  serverVersion:
    buildDate: "2022-08-23T17:38:15Z"
    compiler: gc
    gitCommit: a866cbe2e5bbaa01cfd5e969aa3e033f3282a8a2
    gitTreeState: clean
    gitVersion: v1.25.0
    goVersion: go1.19
    major: "1"
    minor: "25"
    platform: linux/amd64
SealosVersion:
  buildDate: "2023-02-20T02:50:39Z"
  compiler: gc
  gitCommit: 1d7649e4
  gitVersion: 4.1.5-rc2
  goVersion: go1.20.1
  platform: linux/amd64

安装 K8S

# 单机部署
sealos run labring/kubernetes:v1.25.0 labring/helm:v3.8.2 labring/calico:v3.24.1 --single
# 设置 master 节点可以部署 pod
kubectl taint nodes --all node-role.kubernetes.io/master-
kubectl taint nodes --all node-role.kubernetes.io/control-plane-

安装 K8S Dashboard

Dashboard 版本需要与 K8S 版本相匹配,参考:https://github.com/kubernetes/dashboard/releases

# 下载镜像
$ sealos pull kubernetesui/dashboard:v2.7.0
$ sealos images
REPOSITORY                         TAG       IMAGE ID       CREATED        SIZE
docker.io/labring/kubernetes       v1.25.0   06f5d19b019c   8 days ago     528 MB
docker.io/library/nginx            latest    3f8a00f137a0   13 days ago    146 MB
docker.io/kubernetesui/dashboard   v2.7.0    07655ddf2eeb   5 months ago   249 MB
docker.io/labring/calico           v3.24.1   e2122fc58fd3   5 months ago   354 MB
docker.io/labring/helm             v3.8.2    1123e8b4b455   6 months ago   45.1 MB

# 下载 deployment yaml 
>$ wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml
# 更改为 NodePort 访问
$ vim recommended.yaml

dashboard-nodeport

# 部署 dashboard
$ kubectl apply -f recommended.yaml

# 查看 dashboard NodePort 端口(32688)
$ kubectl get svc -n kubernetes-dashboard
NAME                        TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)         AGE
dashboard-metrics-scraper   ClusterIP   10.96.3.61   <none>        8000/TCP        11m
kubernetes-dashboard        NodePort    10.96.1.40   <none>        443:32688/TCP   11m

# 创建访问账号
$ cat > admin-user.yaml << EOF
apiVersion: v1
kind: ServiceAccount
metadata:
  name: xchenhao-admin
  namespace: xchenhao
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: xchenhao-admin
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
- kind: ServiceAccount
  name: xchenhao-admin
  namespace: xchenhao
EOF

$ kubectl apply -f admin-user.yaml

# 生成 Token
$ kubectl create token xchenhao-admin --duration 24h -n xchenhao
eyJhbGciOiJSUzI1NiIsImtpZCI6InlGdU5hN3hpcU9jcWM4Zm1T.....aSWNyVrBnRxjHA

浏览器访问 Dashboard

访问 机器 IP:NodePort 端口

kubernetes-dashboard

部署一个服务(Nginx)

apiVersion: apps/v1
kind: Deployment
metadata:
  name: test-nginx
spec:
  replicas: 1
  selector:
    matchLabels:
      name: test-nginx
  template:
    metadata:
      labels:
        name: test-nginx
    spec:
      containers:
        - name: test-nginx
          image: hub.c.163.com/library/nginx
          imagePullPolicy: IfNotPresent
          ports:
            - containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
  name: test-nginx-service-nodeport
spec:
  ports:
    - port: 80
      targetPort: 80
      protocol: TCP
  type: NodePort
  selector:
    name: test-nginx

Deployment
Nginx NodePort 为 32272
Nginx NodePort
浏览器访问 192.168.213.37:32272
在这里插入图片描述

参考

  • https://github.com/labring/sealos
  • https://www.qycn.com/xzx/article/14034.html 如何查看 linux 发行版本系统,有哪些方法
  • https://blog.csdn.net/xmcy001122/article/details/127223735 k8s dashboard 安装
  • https://www.cnblogs.com/zhanchenjin/archive/2022/07/15/16481954.html kubernetes1.24+containerd 搭建
  • https://itnext.io/big-change-in-k8s-1-24-about-serviceaccounts-and-their-secrets-4b909a4af4e0 BIG change in K8s 1.24 about ServiceAccounts and their Secrets
  • https://blog.csdn.net/xchenhao/article/details/103183823 CentOS7 部署 Kubernetes 流程

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

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

相关文章

黑马 Vue 快速入门 笔记

黑马 Vue 快速入门 笔记0 VUE相关了解0.1 概述0.2 MVVM0.3 JavaScript框架0.4 七大属性0.5 el:挂载点1 VUE基础1.0 第一个vue代码&#xff1a;Hello&#xff0c;vue1.1 v-bind 设置元素的属性 简写 &#xff1a;1.2 v-if &#xff0c; v-else &#xff0c; v-else-ifv-if , v-e…

【Npde.js】express以及nodemon

express初始Express什么是Express不使用Express可以创建web服务器吗&#xff1f;Express能做什么安装Express监听GET请求和post请求获取URL中携带的查询参数获取URL中携带的动态参数托管静态资源nodemon为什么使用nodemon初始Express 什么是Express 官方给出的概念&#xff0…

ctf pwn基础-1

在心中做了无数次决定&#xff0c;我终于还是准备学pwn了&#xff0c;为了继承学长的衣钵&#xff0c;更别说自己已经下定决心学习 c了&#xff0c;废话不多说下面正式开始。 目录 基础 实列讲解 基础 很多人一上来就叫你什么汇编啊、c啊什么的&#xff0c;让人往而却步&…

分布式任务调度处理方案(无代码)

业务涉及到&#xff0c;需要向数据库、redis、elasticsearch、MinIO写四份数据&#xff0c;这里存在分布式事务问题。如何解决问题&#xff0c;先分析cap&#xff0c;是要保证可用性&#xff0c;还是保证一致性。如何选择是CP还是AP&#xff1f;分析业务场景CP的场景&#xff1…

canvas样式与颜色,字体,图片,状态,形变

色彩 fillStyle color 设置图形的填充颜色。 strokeStyle color 设置图形轮廓的颜色。 备注&#xff1a; 一旦您设置了 strokeStyle 或者 fillStyle 的值&#xff0c;那么这个新值就会成为新绘制的图形的默认值。如果你要给每个图形上不同的颜色&#xff0c;你需要重新设置…

Java Scanner 类,超详细整理,适合新手入门

目录 一、什么是 Java Scanner 类&#xff1f; 二、引用数据类型 1、引用数据类型的定义 三、Scanner 类有哪些常用方法&#xff1f; hasNext()用法 四、next() 与 nextLine() 区别 next(): nextLine()&#xff1a; 五、使用 next 方法 五、使用 nextLine方法 一、什…

SkyWalking仪表盘使用

Skywalking仪表盘使用 1 仪表盘 作用&#xff1a;查看被监控服务的运行状态。 1)监控面板 1.1 APM APM&#xff1a;应用性能管理&#xff0c;通过各种探针采集数据&#xff0c;收集关键指标&#xff0c;同时搭配数据呈现以实现对应用程序性能管理和故障管理的系统化解决方案…

机器学习主要内容的思维导图

机器学习 机器学习&#xff1a; 定义&#xff1a;能够从经验中学习从而能够 把事情不断做好的计算机程序 人工智能的一个分支和 实现方式 理论基础&#xff1a;概率论 数理统计 线性代数 数学分析 数值逼近 最优化理论 计算复杂理论 核心要素&#xff1a;数据 算法 模型 机器…

【极海APM32替代笔记】HAL库外部定时器、系统定时器阻塞、非阻塞延时

【极海APM32替代笔记】HAL库外部定时器、系统定时器阻塞、非阻塞延时 外部定时器 采用定时器做延时使用时 需要计算好分频和计数 另外还要配置为不进行自动重载 对于50MHz的工作频率 分频为50-1也就是50M/501M 一次计数为1us 分频为50000-1也就是1k 一次计数为1ms 我配置的是…

论文解读 | [AAAI2020] 你所需要的是边界:走向任意形状的文本定位

目录 1、研究背景 2、研究的目的 3、方法论 3.1 Boundary Point Detection Network(BPDN) 3.2 Recognition Network 3.3 Loss Functions 4、实验及结果 论文连接&#xff1a;https://ojs.aaai.org/index.php/AAAI/article/view/6896 1、研究背景 最近&#xff0c;旨在…

2023美赛C题Wordle二三问分布预测和难度分类预测

文章目录前言题目介绍人数分布预测首先建立字母词典&#xff0c;加上时间特征数据预处理训练和预测函数保存模型函数位置编码模型及其参数设置模型训练以及训练曲线可视化预测人数分布难度分类预测总结前言 2023美赛选了C题&#xff0c;应该很多人会选&#xff0c;一看就好做&…

电动汽车充放电的优化调度(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

深度学习无监督磁共振重建方法调研(二)

深度学习无监督磁共振重建方法调研&#xff08;二&#xff09;Self-supervised learning of physics-guided reconstruction neural networks without fully sampled reference data&#xff08;Magnetic Resonance in Medicine 2020&#xff09;模型设计实验结果PARCEL: Physi…

如何保证数据的安全?对称和非对称加密,身份认证,摘要算法,数字证书等傻傻分不清?波哥图解带你彻底掌握

支付安全 1.基础概念 明文&#xff1a;加密前的消息叫“明文”&#xff08;plain text&#xff09; 密文&#xff1a;加密后的文本叫“密文”&#xff08;cipher text&#xff09; 密钥&#xff1a;只有掌握特殊“钥匙”的人&#xff0c;才能对加密的文本进行解密&#xff0c;…

功能测试三年,是时候做出改变了

前言 测试行业3年多经验&#xff0c;学历大专自考本科&#xff0c;主要测试方向web&#xff0c;PC端&#xff0c;wap站&#xff0c;小程序公众号都测试过&#xff0c;app也测过一些&#xff0c;C端B端都有&#xff0c;除功能外&#xff0c;接口性能也有涉猎&#xff0c;但是不…

day32 多线程(上)

文章目录相关概念codeThreadTest01ThreadTest02 编写一个类&#xff0c;直接继承java.lang.Thread&#xff0c;重写run方法ThreadTest03 实现线程的第二种方法ThreadTest04 采用匿名内部类的方式ThreadTest05 获取线程名字ThreadTest06 sleep方法sleep面试题ThreadTest08 终止线…

不同路径-力扣62-java 动态规划

一、题目描述一个机器人位于一个 m x n 网格的左上角 &#xff08;起始点在下图中标记为 “Start” &#xff09;。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角&#xff08;在下图中标记为 “Finish” &#xff09;。问总共有多少条不同的路径&#xff1f…

H12-831题库(有详细的解析)

1.&#xff08;单选&#xff09;某工程师利用2台路由器进行IPv6业务测试,通过运行BGP4模拟总部与分支的互联互通。如图所示,某工程师抓包查看R1发出的update报文。关于该报文信息的描述,以下哪个说法是正确的? A.该报文描述的路由的下一跳地址为:2001:db8::2345:1::1 B.该报文…

基于Pytorch,从头开始实现Transformer(编码器部分)

Transformer理论部分参考知乎上的这篇文章 Transformer的Attention和Masked Attention部分参考知乎上的这篇文章 Transformer代码实现参考这篇文章&#xff0c;不过这篇文章多头注意力实现部分是错误的&#xff0c;需要注意。 完整代码放到github上了&#xff0c;链接 Trans…

ASE50N06-ASEMI低压MOS管ASE50N06

编辑-Z ASE50N06在TO-252-2L封装里的静态漏极源导通电阻&#xff08;RDS(ON)&#xff09;为15mΩ&#xff0c;是一款N沟道低压MOS管。ASE50N06的最大脉冲正向电流ISM为200A&#xff0c;零栅极电压漏极电流(IDSS)为1uA&#xff0c;其工作时耐温度范围为-55~175摄氏度。ASE50N06…