2024.9.12(k8s环境搭建2)

news2024/11/24 19:45:32
一、接9.11
19、部署calico的pod
4. 查看容器和节点状态

异常处理:

出现Init:0/3,查看node节点 /var/log/messages是否有除网络异常之外的报错信息

三台机器执行:(更新版本)

yum list kernel

yum update kernel

reboot

三台机器该目录下要有以下文件

reboot

kubectl get po -A 查看没有pending状态就等待

[root@k8s-master ~]# kubectl get node

NAME         STATUS   ROLES           AGE   VERSION
k8s-master   Ready    control-plane   18h   v1.28.2
k8s-node1    Ready    <none>          18h   v1.28.2
k8s-node2    Ready    <none>          18h   v1.28.2

[root@k8s-master ~]# kubectl run nginx --image=nginx:latest     //添加一个新的pod
pod/nginx created

[root@k8s-master ~]# kubectl run nginx0 --image=nginx
[root@k8s-master ~]# kubectl get po -Aowide | grep nginx 

default       nginx                                      1/1     Running   0             47m   172.16.169.130   k8s-node2    <none>           <none>
default       nginx1                                     1/1     Running   0             38m   172.16.169.129   k8s-node2    <none>           <none>

[root@k8s-master ~]# kubectl logs nginx   //查看日志

[root@k8s-master ~]# curl 172.16.169.130

[root@k8s-master ~]# kubectl delete pod nginx
[root@k8s-master ~]# kubectl delete pod nginx1

20、 资源监控Metrics 部署
1. 复制证书到所有节点

[root@k8s-master ~]# scp /etc/kubernetes/pki/front-proxy-ca.crt k8s-node1:/etc/kubernetes/pki/front-proxy-ca.crt 
[root@k8s-master ~]# scp /etc/kubernetes/pki/front-proxy-ca.crt k8s-node2:/etc/kubernetes/pki/front-proxy-ca.crt 

2. 上传components.yaml文件

[root@k8s-master ~]# mkdir pods
[root@k8s-master ~]# mv components.yaml pods/
[root@k8s-master ~]# cd pods/
[root@k8s-master pods]# ls
components.yaml

3. 根据yaml文件创建pod

[root@k8s-master pods]# kubectl create -f components.yaml

4. 查看pod列表状态

[root@k8s-master pods]# kubectl get pods -Aowide | grep metrics

kube-system   metrics-server-79776b6d54-rlw2j            1/1     Running   0             5m30s   172.16.36.65     k8s-node1    <none>           <none>
5. 查看节点资源监控

[root@k8s-master pods]# kubectl top nodes

NAME         CPU(cores)   CPU%   MEMORY(bytes)   MEMORY%   
k8s-master   143m         7%     1103Mi          64%       
k8s-node1    41m          2%     819Mi           47%       
k8s-node2    45m          2%     858Mi           49%     

[root@k8s-master pods]# kubectl top pods -n kube-system   //查看kube-system命名空间的所有节点

NAME                                       CPU(cores)   MEMORY(bytes)   
calico-kube-controllers-6d48795585-dnwc4   2m           31Mi            
calico-node-4dfpr                          22m          124Mi           
calico-node-64rzl                          24m          103Mi           
calico-node-t8l7f                          22m          92Mi            
coredns-6554b8b87f-4xzkp                   1m           16Mi            
coredns-6554b8b87f-ws7pj                   1m           28Mi            
etcd-k8s-master                            17m          65Mi            
kube-apiserver-k8s-master                  51m          315Mi           
kube-controller-manager-k8s-master         14m          86Mi            
kube-proxy-hgn9q                           1m           33Mi            
kube-proxy-tshb8                           1m           26Mi            
kube-proxy-ww7k4                           1m           36Mi            
kube-scheduler-k8s-master                  3m           43Mi            
metrics-server-79776b6d54-rlw2j            3m           17Mi            
21、Dashboard部署
1. 建⽴dashboard的pod资源

[root@k8s-master ~]# cd k8s-ha-install/
[root@k8s-master k8s-ha-install]# ls


[root@k8s-master k8s-ha-install]# cd dashboard/
[root@k8s-master dashboard]# ls
dashboard-user.yaml  dashboard.yaml

[root@k8s-master dashboard]# kubectl create -f .   //使用当前目录

[root@k8s-master dashboard]# kubectl get po -A| grep dashboard

2. 设置svc模式

[root@k8s-master dashboard]# kubectl edit svc kubernetes-dashboard -n kubernetes-dashboard

[root@k8s-master dashboard]# kubectl get svc kubernetes-dashboard -n kubernetes-dashboard  //获取端口

NAME                   TYPE       CLUSTER-IP     EXTERNAL-IP   PORT(S)         AGE
kubernetes-dashboard   NodePort   10.96.22.191   <none>        443:31282/TCP   8m48s
3. 获得token 

[root@k8s-master dashboard]# kubectl create token admin-user -n kube-system

eyJhbGciOiJSUzI1NiIsImtpZCI6IlhPdHNYNThidExFTHNMNmR4QkRuMGd1TWhqd3VYaW9rc2lHN3o1Y2RMdDQifQ.eyJhdWQiOlsiaHR0cHM6Ly9rdWJlcm5ldGVzLmRlZmF1bHQuc3ZjLmNsdXN0ZXIubG9jYWwiXSwiZXhwIjoxNzI2MTE1NTA4LCJpYXQiOjE3MjYxMTE5MDgsImlzcyI6Imh0dHBzOi8va3ViZXJuZXRlcy5kZWZhdWx0LnN2Yy5jbHVzdGVyLmxvY2FsIiwia3ViZXJuZXRlcy5pbyI6eyJuYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsInNlcnZpY2VhY2NvdW50Ijp7Im5hbWUiOiJhZG1pbi11c2VyIiwidWlkIjoiYjRkZDAzZDMtNTk3Yy00YTEwLTg5MTUtMGJmYzJiOTBiODA1In19LCJuYmYiOjE3MjYxMTE5MDgsInN1YiI6InN5c3RlbTpzZXJ2aWNlYWNjb3VudDprdWJlLXN5c3RlbTphZG1pbi11c2VyIn0.cvypVYVBNb8CkvXZv1lZ8CXY7lIbzsvyFXK7ovke5uWpiBm8_3xNBwcxFUEA9nk2MuA36Ru2U9z6Qs2TJb06mPK308wu5GQIXAai3i5ABw5i5nkhDuKIoJpcyvnCALKPDDIg6oIp_BjnGzo8aTDiH6g53lGUKZHDBwfFehkVNucR2BvRny1yeBXWXpiyM4SHvyvCa0INtlDCSv4jkk8-ag_G8VRtxEE1LqO1I39dV8HUhBmC7_gKItrMaVmsGa3btkTuynGOqxHSP_DtHjVnQH8GiSyszqDceBVIqeWsULTZFUjBoR51Ef76Uxv2JqnYvgYOatbGU0bvu9k_BV0vvQ
22、设置proxy的模式为ipvs
1. 编辑pod 

[root@k8s-master ~]# kubectl edit cm kube-proxy -n kube-system 

2. 更新 Kube-Proxy 的 Pod

 [root@k8s-master ~]# kubectl patch daemonset kube-proxy -p "{\"spec\":{\"template\":{\"metadata\": {\"annotations\":{\"date\":\"`date +'%s'`\"}}}}}" -n kube-system
daemonset.apps/kube-proxy patched

3. 访问测试

[root@k8s-master ~]# curl 127.0.0.1:10249/proxyMode

ipvs

23、查看service pod 宿主机的网段

[root@k8s-master ~]# kubectl get svc
NAME         TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)   AGE
kubernetes   ClusterIP   10.96.0.1    <none>        443/TCP   23h

[root@k8s-master ~]# kubectl get pods -Aowide

24、验证是否可正常创建参数 

[root@k8s-master ~]# kubectl create deploy cluster-test1 --image=registry.cn-beijing.aliyuncs.com/dotbalo/debug-tools -- sleep 3600

[root@k8s-master ~]# kubectl get po
[root@k8s-master ~]# kubectl get po -owidew

25、Pod 必须能够解析 Service
1. nslookup kubernetes

[root@k8s-master ~]# kubectl exec -it cluster-test1-54575cf56c-65tv4 -- bash
(07:39 cluster-test1-54575cf56c-65tv4:/) nslookup kubernetes
Server:        10.96.0.10
Address:    10.96.0.10#53

Name:    kubernetes.default.svc.cluster.local
Address: 10.96.0.1

2. nslookup kube-dns.kube-system

(07:39 cluster-test1-54575cf56c-65tv4:/) nslookup kube-dns.kube-system
Server:        10.96.0.10
Address:    10.96.0.10#53

Name:    kube-dns.kube-system.svc.cluster.local
Address: 10.96.0.10

可以解析到server的第⼗个ip,说明可以解析到kube-dns,说 明跨namespace也可解析

26、 确认各 Pod 之间是否可正常通信

[root@k8s-master ~]# kubectl exec -it cluster-test1-54575cf56c-65tv4 -- bash
(07:46 cluster-test1-54575cf56c-65tv4:/) ping 172.16.235.200 -c 3
PING 172.16.235.200 (172.16.235.200) 56(84) bytes of data.
64 bytes from 172.16.235.200: icmp_seq=1 ttl=62 time=0.553 ms
64 bytes from 172.16.235.200: icmp_seq=2 ttl=62 time=0.675 ms
64 bytes from 172.16.235.200: icmp_seq=3 ttl=62 time=0.631 ms

--- 172.16.235.200 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 0.553/0.619/0.675/0.058 ms

二、 kubernetes常用命令

1、kubernetes自动补齐

[root@k8s-master ~]# yum -y install bash-completion

[root@k8s-master ~]# source <(kubectl completion bash)   //临时开启自动补齐功能
[root@k8s-master ~]# echo "source <(kubectl completion bash)" >> ~/.bashrc   //永久开启

2、基础命令
1. 创建

[root@k8s-master ~]# kubectl create namespace pes
namespace/pes created
[root@k8s-master ~]# kubectl get namespace

NAME                   STATUS   AGE
default                Active   24h
kube-node-lease        Active   24h
kube-public            Active   24h
kube-system            Active   24h
kubernetes-dashboard   Active   4h41m
pes                    Active   38s
2. 删除 
NAMESPACE              NAME                                         READY   STATUS             RESTARTS      AGE
default                cluster-test1-54575cf56c-65tv4               1/1     Running            0             24m
default                clustertest-58dbff6c48-xbpvj                 0/1     ErrImagePull       0             38m

[root@k8s-master ~]# kubectl delete deployment clustertest   //删除

3、编写yaml文件 

[root@k8s-master ~]# vim pods/abc.yaml

apiVersion: v1
kind: Pod
metadata:
        name: busybox-sleep
spec:
        containers:
        - name: busybox
          image: busybox:1.28
          args:
          - sleep
          - "1000"
4. kubectl create

[root@k8s-master pods]# kubectl create -f abc.yaml

[root@k8s-master pods]# kubectl get po -A | grep bus
default                busybox-sleep                                0/1     ImagePullBackOff   0               11m
[root@k8s-master pods]# kubectl delete pod busybox-sleep
pod "busybox-sleep" deleted
[root@k8s-master pods]# kubectl get po -A | grep bus

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

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

相关文章

i++与++i在for循环中效果一样?

首先说结果 是的&#xff0c;在Visual Studio 2022中&#xff0c;不同于直接printf&#xff0c;在for循环中的i与i是同样的效果&#xff08;都当作了i&#xff09; 这是编译器干的好事。 如图比对 i i 原因探寻 | i i的底层原理 找到一篇博客&#xff0c;我目前还看不太明…

关于Spring Cloud 表达式注入漏洞——分析复现

更多漏洞分析复现&#xff0c;可前往无问社区查看http://www.wwlib.cn/index.php/artread/artid/5175.html 一、漏洞成因 近期&#xff0c;Spring Cloud官方发布了一则安全公告&#xff0c;修复了一个Spring Cloud Function中的 SPEL表达式注入漏洞。该漏洞是由于Spring Clou…

123.rk3399 uboot(2017.09) 源码分析3(2024-09-12)

啃了几天initf_dm,发现啃不动啊&#xff0c;但是后面的函数比这个简单&#xff0c;要不先把简单的做了吧。 本文接上一篇https://blog.csdn.net/zhaozhi0810/article/details/142050827 一、c的入口 board_init_f 1.3.12 arch_cpu_init_dm&#xff08;common/board_f.c&#…

AWS账号申请指南:必须绑定银行卡吗?

小伙伴们&#xff0c;大家好&#xff01;今天九河云来和大家聊一聊一个常见的问题&#xff1a;申请AWS账号时&#xff0c;是否必须要绑定银行卡呢&#xff1f;相信很多小伙伴在注册AWS账号时都会遇到这个问题。为了帮助大家更好地了解这个过程&#xff0c;小编特意整理了一些信…

SprinBoot+Vue旅游景点管理系统设计与实现

目录 1 项目介绍2 项目截图3 核心代码3.1 Controller3.2 Service3.3 Dao3.4 application.yml3.5 SpringbootApplication3.5 Vue 4 数据库表设计5 文档参考6 计算机毕设选题推荐7 源码获取 1 项目介绍 博主个人介绍&#xff1a;CSDN认证博客专家&#xff0c;CSDN平台Java领域优质…

模 板

导引&#xff1a; 模板是为了解决函数类型不同所重载&#xff0c;带来的麻烦简化。利用一个模板&#xff08;示列&#xff09;代码&#xff0c;让编译器编写出不同类型的代码&#xff0c;满足所需。 int swap(int &p1,int &p2) {int pp1;p1p2;p2p; } char swap(char …

优化安防视频监控的关键体验:视频质量诊断技术如何应用在监控系统中?

随着科技的不断进步&#xff0c;视频监控平台在公安、司法、教育、基础设施等众多领域得到了广泛应用。然而&#xff0c;视频图像的质量直接关系到监控系统的应用效果&#xff0c;是反映监控系统运维效果的重要指标之一。因此&#xff0c;视频监控平台需要配备一系列先进的视频…

基于剂型改良的复杂注射剂分析!

改良型新药在医药领域的重要性日益凸显&#xff0c;其中脂质体注射剂作为一类重要的改良型新药&#xff0c;因其独特的临床优势和技术创新&#xff0c;正受到行业的高度关注。本文基于药融咨询团队的深度分析报告&#xff0c;探讨脂质体注射剂的技术创新、市场前景以及在中国的…

动手学深度学习(三)深度学习计算

一、模型构造 1、继承Module类来构造模型来构造模型 class MLP(nn.Module):# 声明带有模型参数的层&#xff0c;这里声明了两个全连接层def __init__(self, **kwargs):# 调用MLP父类Block的构造函数来进行必要的初始化。这样在构造实例时还可以指定其他函数# 参数&#xff0c…

利用CubeMX复现正点原子TFTLCD驱动例程

来源&#xff1a;正点原子 FMC的工作原理暂时先欠着&#xff0c;先记录一下CRUD的过程。 第一步准备一个us级别延时函数&#xff0c;不会的参考拙作&#xff1a;STM32的定时器简介-CSDN博客 第二部开启FMC外设&#xff1a; ①进入 Pinout->FMC 配置栏&#xff0c;配置 …

【隐私计算】Paillier半同态加密算法

一、何为同态加密&#xff08;HE&#xff09;&#xff1f; HE是一种特殊的加密方法&#xff0c;它允许直接对加密数据执行计算&#xff0c;如加法和乘法&#xff0c;而计算过程不会泄露原文的任何信息。计算的结果仍然是加密的&#xff0c;拥有密钥的用户对处理过的密文数据进…

树莓派5开发板-安装Raspberry Pi系统-学习记录1

树莓派5开发板介绍 树莓派5&#xff08;Raspberry Pi 5&#xff09;是树莓派系列最新的开发板&#xff0c;相较于前几代产品&#xff0c;它在性能、连接性和功能方面都有了显著提升。以下是树莓派5的一些主要特点&#xff1a; 处理器&#xff1a;树莓派5搭载了Broadcom BCM27…

如何基于gpt模型抢先打造成功的产品

来自&#xff1a;Python大数据分析 费弗里 ChatGPT、gpt3.5以及gpt4&#xff0c;已然成为当下现代社会中几乎人尽皆知的话题&#xff0c;而当此种现象级产品引爆全网&#xff0c;极大程度上吸引大众注意力的同时&#xff0c;有一些嗅觉灵敏的人及时抓住了机会&#xff0c;通过快…

【FreeRL】我的深度学习库构建思想

文章目录 前言参考python环境效果已复现结果 综述DQN.py&#xff08;主要&#xff09;算法实现参数修改细节实现显示训练&#xff0c;保存训练 Buffer.pyevaluate.pylearning_curves 前言 代码实现在:https://github.com/wild-firefox/FreeRL 欢迎star 参考 动手学强化学习e…

Coggle数据科学 | 小白学 RAG:Milvus 介绍与使用教程

本文来源公众号“Coggle数据科学”&#xff0c;仅用于学术分享&#xff0c;侵权删&#xff0c;干货满满。 原文链接&#xff1a;小白学 RAG&#xff1a;Milvus 介绍与使用教程 什么是Milvus&#xff1f; Milvus 是一款高性能、高扩展性的开源向量数据库&#xff0c;专为处理…

【阿一网络安全】如何让你的密码更安全?(三) - 散列函数

散列函数 散列函数&#xff08;Hash Function&#xff0c;又称散列算法、哈希函数&#xff09;&#xff0c;是一种从任何一种数据中创建小的数字指纹的方法。 散列值 散列函数&#xff0c;把任意长的消息明文&#xff0c;压缩成摘要&#xff0c;使得数据量变小&#xff0c;将…

[数据集][目标检测]脊椎检测数据集VOC+YOLO格式1137张1类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;1137 标注数量(xml文件个数)&#xff1a;1137 标注数量(txt文件个数)&#xff1a;1137 标注…

SpringBoot2:web开发常用功能实现及原理解析-上传与下载

文章目录 一、上传文件1、前端上传文件给Java接口2、Java接口上传文件给Java接口 二、下载文件1、前端从Java接口下载文件2、Java接口调用Java接口下载文件 一、上传文件 1、前端上传文件给Java接口 Controller接口 此接口支持上传单个文件和多个文件&#xff0c;并保存在本地…

基于小程序的教学辅助微信小程序设计+ssm(lw+演示+源码+运行)

教学辅助微信小程序 摘 要 随着移动应用技术的发展&#xff0c;越来越多的学生借助于移动手机、电脑完成生活中的事务&#xff0c;许多的传统行业也更加重视与互联网的结合&#xff0c;由于学生学习的压力越来越大&#xff0c;教学辅助是一个非常不错的教育平台&#xff0c;对…

人工智能(AI)领域各方向顶会和顶刊

在人工智能&#xff08;AI&#xff09;这个快速发展的领域&#xff0c;研究人员和从业者需要紧跟最新的研究动态和技术进展。顶级的会议和期刊是获取最新科研成果和交流思想的重要平台。以下是人工智能领域内不同方向的顶级会议和期刊概览。 顶级会议 人工智能基础与综合 A…