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

k8s的基础

[root@k8s-master ~]# vim /etc/docker/daemon.json

2.加载启动docker服务
[root@k8s-master ~]# systemctl daemon-reload 
[root@k8s-master ~]# systemctl start docker

3.拉取常用的镜像

docker  pull ...

[root@k8s-master ~]# docker images 
REPOSITORY   TAG       IMAGE ID       CREATED        SIZE
haproxy      latest    a782c02b8259   10 days ago    103MB
nginx        latest    39286ab8a5e1   4 weeks ago    188MB
mysql        5.7.44    5107333e08a8   9 months ago   501MB
centos       latest    5d0da3dc9764   2 years ago    231MB
 

4.使用docker save指令打包镜像

[root@k8s-master ~]# docker save -o centos.tar centos:latest 
[root@k8s-master ~]# docker save -o mysql.tar mysql:5.7.44 
[root@k8s-master ~]# docker save -o haproxy.tar haproxy:latest 
[root@k8s-master ~]# docker save -o nginx.tar nginx:latest

5.使用ctr指令将tar包导入到containerd的镜像中

[root@k8s-master ~]# ctr -n k8s.io images import centos.tar --platform=linux/amd64
[root@k8s-master ~]# ctr -n k8s.io images import nginx.tar --platform=linux/amd64
[root@k8s-master ~]# ctr -n k8s.io images import haproxy.tar --platform=linux/amd64
[root@k8s-master ~]# ctr -n k8s.io images import mysql.tar --platform=linux/amd64

6.查看containerd镜像列表

[root@k8s-master ~]# crictl images
IMAGE                                                                         TAG                 IMAGE ID            SIZE
docker.io/library/centos                                                      latest              5d0da3dc97646       239MB
docker.io/library/haproxy                                                     latest              a782c02b82595       106MB
docker.io/library/mysql                                                       5.7.44              5107333e08a87       520MB
docker.io/library/nginx                                                       latest              39286ab8a5e14       192MB
7.在node01和node02节点上引入tar包,并使用ctr指令将tar包导入到containerd的镜像中

scp  ~/*.tar root@192.168.118.77:~

[root@k8s-master ~]# scp haproxy.tar root@192.168.118.77:~

[root@k8s-node02 ~]#  ctr -n k8s.io images import mysql.tar --platform=linux/amd64

8.使用kubectl run创建pod

[root@k8s-master ~]# kubectl run test001 --image docker.io/library/nginx:latest --image-pull-policy=IfNotPresent

[root@k8s-master ~]# kubectl get po
NAME                             READY   STATUS    RESTARTS   AGE
cluster-test5-6597c95b6c-28tkj   1/1     Running   10         42h
test001                          1/1     Running   0          14s
 

[root@k8s-master ~]# kubectl describe pod test001

 Normal  Pulled     3m29s  kubelet            Container image "docker.io/library/nginx:latest" already present on machine
 

9.使用配置文件创建pod

--创建一个容器

[root@k8s-master pods]# vim test0007.yaml 
[root@k8s-master pods]# kubectl create -f test0007.yaml 
pod/test0007 created
[root@k8s-master pods]# cat test0007.yaml 
apiVersion: v1
kind: Pod
metadata:
        name: test0007
        labels:
                name: test0007
spec:
        containers:
        -       name: test0007nginx
                image: docker.io/library/nginx:latest
                imagePullPolicy: IfNotPresent
                ports:
                -       name: nginxport
                        containerPort: 80

[root@k8s-master pods]# kubectl get po
NAME                             READY   STATUS    RESTARTS   AGE
cluster-test5-6597c95b6c-28tkj   1/1     Running   10         42h
test0007                         1/1     Running   0          109s
test001                          1/1     Running   0          16m
#删除test0007

[root@k8s-master pods]# kubectl delete -f test0007.yaml 
pod "test0007" deleted

--创建两个容器

[root@k8s-master pods]# cat  test0007.yaml 
apiVersion: v1
kind: Pod
metadata:
        name: test0007
        labels:
                name: test0007
spec:
        containers:
        -       name: test0007nginx
                image: docker.io/library/nginx:latest
                imagePullPolicy: IfNotPresent
                ports:
                -       name: nginxport
                        containerPort: 80
        -       name: test0007centos
                image: docker.io/library/centos:latest
                imagePullPolicy: Never
                command:
                - sleep
                - infinity

[root@k8s-master pods]# kubectl get po
NAME                             READY   STATUS    RESTARTS   AGE
cluster-test5-6597c95b6c-28tkj   1/1     Running   10         43h
test0007                         2/2     Running   0          5s
test001                          1/1     Running   0          35m

10.监控容器运行的5个切入点

--postStart

--startup

--lived

--ready

--perStop


 


 


http://www.kler.cn/a/313480.html

相关文章:

  • 软件工程师简历(精选篇)
  • C++初阶:类和对象(上)
  • MySQL重难点(一)索引
  • 【STM32F1】——无线收发模块RF200与串口通信
  • Node.js笔记
  • GaussDB部署架构
  • YOLOv8改进,YOLOv8替换主干网络为VanillaNet( CVPR 2023 华为提出的全新轻量化架构),大幅度涨点
  • Remix在SPA模式下,出现ErrorBoundary错误页加载Ant Design组件报错,不能加载样式的问题
  • 使用注意力机制可以让你的模型更加灵活,但是需要额外的计算资源。rnn lstm bilstm attension
  • 【论文阅读】PERCEIVER-ACTOR: A Multi-Task Transformer for Robotic Manipulation
  • 开关磁阻电机(SRM)系统的matlab性能仿真与分析
  • python知识点100篇系列(17)-替换requests的python库httpx
  • Python学习
  • yolo自动化项目实例解析(四)ui页面整理1 (1.85)
  • git merge如何忽略部分路径
  • sqli-lab靶场学习(四)——Less11-14(post方法)
  • 微信小程序中的实时通讯:TCP/UDP 协议实现详解
  • Closure 是个数据结构
  • 如何在 Ubuntu 上安装 OpenSSH Server ?
  • DataFrame生成excel后为什么多了一行数字
  • 计算机的编程
  • 华为OD机试 - 信号强度(Python/JS/C/C++ 2024 E卷 100分)
  • 【设计模式】创建型模式(四):建造者模式
  • 前端设计之 主页面、书架页面、数据分析页面
  • 搜索引擎onesearch3实现解释和升级到Elasticsearch v8系列(二)-索引
  • 【RabbitMQ】死信队列、延迟队列