verysu 设计模式 设计模式 响应式编程 百度开发平台 codeforces leetcode usfca

导航

k8s docker centos镜像

查看逻辑卷

lsdisplay

查看机器挂载明细

dockerroot

删除挂载卷

lvremove /dev/docker/thinpool

centos7安装yum  https://blog.csdn.net/weixin_45457922/article/details/116430625

参考文章  https://www.cnblogs.com/zgqbky/p/12149753.html

配置文件https://github.com/Life-Of-Coding/kubernetes

容器清理https://www.cnblogs.com/mingbai/p/dockerclean.html

https://www.kubernetes.org.cn/doc-33

ls -lha /dev/loop-control 
ls -lha /dev/loop-control
******************docker启动问题处理
There are no more loopback devices available
执行 for i in `seq 0 6`;do mknod -m 0660 /dev/loop$i b 7 $i;done
ls /dev/loop* | grep -v /dev/loop-control
处理磁盘不支持问题
执行yum install -y e4fsprogs
其他问题处理

vim /etc/sysconfig/docker --selinux-enabled=false
vim /etc/selinux/config SELINUX=disabled  enforcing
vim /usr/lib/systemd/system/docker.service --insecure-registry=10.19.248.12:30100 -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock \

cat /etc/sysconfig/docker-storage DOCKER_STORAGE_OPTIONS="--storage-driver btrfs " DOCKER_STORAGE_OPTIONS改为"-–storage-driver devicemapper “,

cat /etc/group 可以看到 有一个 dockerroot 的组将上方的 root 改成 dockerroot

vim /etc/docker/daemon.json
{ "storage-driver": "devicemapper" }

配置网络桥接

yum install bridge-utils
yum install iproute
brctl addbr docker0
ip addr add 172.17.0.1/16 dev docker0
ip link set dev docker0

rm -rf /var/lib/docker/network/

kubectl get nodes
kubectl get deployment --all-namespaces
kubectl get pods --namespace=kube-system
kubectl get pod --all-namespaces
kubectl -n onap get svc
kubectl describe pro kubernetes-dashboard-latest-2278389872-1v846 --namespace='kube-system'
kubectl delete -f kubernetes-dashboard.yaml
查看dashboard对外暴露端口
kubectl get svc -n kubernetes-dashboard -o wide

hostnamectl set-hostname master
kubectl get services
kubectl cluster-info

/opt/kubernetes/bin/kube-apiserver --logtostderr=false --v=2 --log-dir=/opt/kubernetes/logs --etcd-servers=https://192.168.10.177:2379,https://192.168.10.179:2379,https://192.168.10.180:2379 --bind-address=0.0.0.0 --secure-port=6443 --advertise-address=192.168.10.178 --allow-privileged=true --service-cluster-ip-range=10.0.0.0/24 --enable-admission-plugins=NamespaceLifecycle,LimitRanger,ServiceAccount,ResourceQuota,NodeRestriction --authorization-mode=RBAC,Node --enable-bootstrap-token-auth=true --token-auth-file=/opt/kubernetes/cfg/token.csv --service-node-port-range=30000-32767 --kubelet-client-certificate=/opt/kubernetes/ssl/server.pem --kubelet-client-key=/opt/kubernetes/ssl/server-key.pem --tls-cert-file=/opt/kubernetes/ssl/server.pem --tls-private-key-file=/opt/kubernetes/ssl/server-key.pem --client-ca-file=/opt/kubernetes/ssl/ca.pem --service-account-key-file=/opt/kubernetes/ssl/ca-key.pem --etcd-cafile=/opt/etcd/ssl/ca.pem --etcd-certfile=/opt/etcd/ssl/server.pem --etcd-keyfile=/opt/etcd/ssl/server-key.pem --audit-log-maxage=30 --audit-log-maxbackup=3 --audit-log-maxsize=100 --audit-log-path=/opt/kubernetes/logs/k8s-audit.log

 

安装网工具yum install net-tools -y

安装telnet yum -y install telnet-server.x86_64     yum -y install telnet.x86_64    yum -y install xinetd.x86_64

docker pull centos:7

docker run -d -i -t --name node1 8652b9f0cb4c /bin/bash  //启动后不能执行操作添加启动参数 --privileged=true    /usr/sbin/init

docker inspect NAMES # 查看容器所有状态信息;

docker inspect --format='{{.NetworkSettings.IPAddress}}' ID/NAMES# 查看 容器ip 地址

docker inspect --format '{{.Name}} {{.State.Running}}' NAMES# 容器运行状态

docker top NAMES 查看进程信息
docker port ID/NAMES查看端口

使用kubectl version 命令,输出的信息会显示client和server的版本信息,client代表kubectl版本信息,server代表的是master节点的k8s版本信息

 

master节点组件

apiserver:用户和 kubernetes 集群交互的入口,封装了核心对象的增删改查操作,提供了 RESTFul 风格的 API 接口,通过 etcd 来实现持久化并维护对象的一致性。

scheduler:负责集群资源的调度和管理,例如当有 pod 异常退出需要重新分配机器时,scheduler 通过一定的调度算法从而找到最合适的节点。

controller-manager:主要是用于保证 replicationController 定义的复制数量和实际运行的 pod 数量一致,另外还保证了从 service 到 pod 的映射关系总是最新的。

etcd:key-value键值存储数据库,用来存储kubernetes的信息的。

minion节点组件

kubelet:运行在 minion 节点,负责和节点上的 Docker 交互,例如启停容器,监控运行状态等。

proxy:运行在 minion 节点,负责为 pod 提供代理功能,会定期从 etcd 获取 service 信息,并根据 service 信息通过修改 iptables 来实现流量转发(最初的版本是直接通过程序提供转发功能,效率较低。),将流量转发到要访问的 pod 所在的节点上去。

flannel:Flannel 是 CoreOS 团队针对 Kubernetes 设计的一个覆盖网络(Overlay Network)工具,需要另外下载部署。我们知道当我们启动 Docker 后会有一个用于和容器进行交互的 IP 地址,如果不去管理的话可能这个 IP 地址在各个机器上是一样的,并且仅限于在本机上进行通信,无法访问到其他机器上的 Docker 容器。Flannel 的目的就是为集群中的所有节点重新规划 IP 地址的使用规则,从而使得不同节点上的容器能够获得同属一个内网且不重复的 IP 地址,并让属于不同节点上的容器能够直接通过内网 IP 通信。

安装

master节点

yum install kubernetes-master etcd -y

minion节点

yum install kubernetes-node flannel -y

查看k8s版本

kubectl get nodes

 

unset http_proxy;

unset https_proxy;

kubectl apply -f http://mirror.faasx.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml  --validate=false

https://blog.csdn.net/xiansenLee/article/details/105720760

posted on 2021-08-21 14:03  泳之  阅读(461)  评论(0)    收藏  举报

我是谁? 回答错误