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

相关推荐
魏 无羡7 小时前
linux CentOS系统上卸载docker
linux·kubernetes·centos
Karoku0668 小时前
【k8s集群应用】kubeadm1.20高可用部署(3master)
运维·docker·云原生·容器·kubernetes
凌虚9 小时前
Kubernetes APF(API 优先级和公平调度)简介
后端·程序员·kubernetes
探索云原生13 小时前
在 K8S 中创建 Pod 是如何使用到 GPU 的: nvidia device plugin 源码分析
ai·云原生·kubernetes·go·gpu
启明真纳13 小时前
elasticache备份
运维·elasticsearch·云原生·kubernetes
jwolf214 小时前
基于K8S的微服务:一、服务发现,负载均衡测试(附calico网络问题解决)
微服务·kubernetes·服务发现
nangonghen15 小时前
在华为云通过operator部署Doris v2.1集群
kubernetes·华为云·doris·operator
会飞的土拨鼠呀16 小时前
chart文件结构
运维·云原生·kubernetes
自在的LEE19 小时前
当 Go 遇上 Windows:15.625ms 的时间更新困局
后端·kubernetes·go
云川之下1 天前
【k8s】访问etcd
kubernetes·etcd