节点

Kubernetes集群包含3种角色类型的节点:etcd节点,control plane节点和worker节点。

etcd Nodes

etcd节点用于运行etcd数据库。 etcd是一个键值存储,用作Kubernetes对所有集群数据的后备存储。即使你可以在单个节点上运行etcd实例,也需要3个、5个或7个节点来实现冗余。

Control Plane Nodes

control plane节点用于运行Kubernetes API服务、scheduler和controller manager。control plane节点是无状态的,因为所有集群数据都存储在etcd节点上。你可以在1个节点上运行control plane,但需要2个或更多节点实现冗余。你还可以在etcd节点上运行控制平面。

Worker Nodes

Worker节点用于运行kubelet和工作负载。它还在需要时运行存储和网络驱动程序和ingress controllers。你可以根据工作负载需要创建尽可能多的Worker节点。


创建第一个集群

默认会勾选Worker角色,根据需要可以一次勾选多种角色。比如,假设我只有一个节点,那就需要把所有角色都选择上,选择后上面的命令行会自动添加相应的命令参数;

集群创建完成后,默认会生成Default项目,点击Default切换到项目视图;


部署一个应用程序

1.工作负载是一个对象,包括pod以及部署应用程序所需的其他文件和信息。

a.在Default视图下,点击工作负载—部署服务.

b.在部署工作负载页面,设置工作负载名称、副本数量、镜像名称、命名空间、端口映射,其他参数保持默认,最后点击启动;


单节点备份

docker stop `<RANCHER_CONTAINER_ID>`  # ,操作前,停止当前运行Rancher Server的容器


docker create --volumes-from <RANCHER_CONTAINER_NAME> --name rancher-data-<DATE>  rancher/rancher:<RANCHER_CONTAINER_TAG>  # 备份当前Rancher Server容器的数据到数据卷容器中

docker run  --volumes-from rancher-data-<DATE>  -v $PWD:/backup alpine tar zcvf /backup/rancher-data-backup-<RANCHER_VERSION>-<DATE>.tar.gz /var/lib/rancher  # 创建Rancher server数据卷容器备份


docker run  --volumes-from <RANCHER_CONTAINER_NAME> -v $PWD:/backup  alpine  sh -c "rm /var/lib/rancher/* -rf && tar zxvf /backup/rancher-data-backup-<RANCHER_VERSION>-<DATE>.tar.gz" # 集群恢复


docker start <RANCHER_CONTAINER_NAME>  # 重新启动Rancher Server容器


单节点升级

docker stop <RANCHER_CONTAINER_ID>

docker create --volumes-from <RANCHER_CONTAINER_ID>  --name rancher-data rancher/rancher:<RANCHER_CONTAINER_TAG>

docker create --volumes-from <RANCHER_CONTAINER_ID>  --name rancher-data-snapshot-<CURRENT_VERSION> rancher/rancher:<RANCHER_CONTAINER_TAG>

docker pull rancher/rancher:latest

docker run -d --volumes-from rancher-data --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher:latest # 通过rancher-data数据卷容器启动新的Rancher Server容器。


vi /etc/docker/daemon.json

1.配置镜像加速地址

{

"registry-mirrors": ["https://7bezldxe.mirror.aliyuncs.com/","https://IP:PORT/"]

}

2.配置insecure-registries私有仓库

{

"insecure-registries": ["192.168.1.100","IP:PORT"]

}

3.配置Docker存储驱动

{

"storage-driver": "overlay2",

"storage-opts": ["overlay2.override_kernel_check=true"]

}

4.配置日志驱动

{

"log-driver": "json-file",

"log-opts": {

    "max-size": "100m",

    "max-file": "3"

    }

}

# 容器在运行时会产生大量日志文件,很容易占满磁盘空间。通过配置日志驱动来限制文件大小与文件的数量。 >限制单个日志文件为100M,最多产生3个日志文件

5.Ubuntu\Debian系统 ,docker info提示WARNING: No swap limit support

sed -i 's/GRUB_CMDLINE_LINUX=".*"/GRUB_CMDLINE_LINUX="cgroup_enable=memory swapaccount=1 net.ifnames=0"/g'  /etc/default/grub

update-grub


签名:这个人很懒,什么也没有留下!
最新回复 (0)
返回