Rancher 导入集群
导入集群 进入之后选择导入已有集群,随后进入此页面,点击创建 对于自签证书选择第二项,复制,然后在 K3s server 节点执行 问题error: no objects passed to apply 这里的问题主要是无法连接到部署 Rancher 的主机,无法获取 yaml 文件导致的。可以将 yaml 文件直接下载到 K3s server,再手动执行 kubectl apply -f {xxx}.yaml (针对配置了 --tls-san 参数 - 自签证书)可能会执行失败,提示域名 rancher.k3s.cn 不识别(前面的证书域名以及对应 IP) 更新资源的字段 123456789101112131415161718192021222324252627282930313233343536# because the cert was made by myself, so i need configured the hosts, otherwise it does not know my cert's domain name, un...
Docker Compose 控制多个容器启动的优先级
docker-compose.yaml中healthcheck配置项作用:可用于检查容器是否正常运行,初始状态为starting,最后一次检查完成后显示sucess或者unhealthy,以下是命令执行返回的状态对应容器状态0:状态是sucess,容器正常运行1:状态是unhealthy,容器非正常运行2:忽略执行命令的状态包含healthcheck的docker-compose文件 12345678910111213141516171819202122version: "3.7" #docker compose的版本services: tomcat: image: tomcat:v10.0.7 ports: - 18080:8080 # 暴露端口信息 - "宿主机端口:容器暴露端口" container_name: tomcat_test #设置启动容器的名称,若不设置会默认生成一个 links: - mysql:db #指定关联的容器 mysql: image: ...
利用 Fabric8 结合 Git Hook 动态配置 K8s 资源
背景 在多分支并行开发的集群下,新建分支以及删除分支都需要开发人员手动维护Istio/K8s的资源对象 目的 结合git hook -》 sync程序 -》 kubernetes API 流程,自动维护k8s以及istio资源对象,减少成本,提高开发效率 技术栈GitLab Api 使用GitLab Api,获取项目分支信息 123456 <!-- https://mvnrepository.com/artifact/org.gitlab/java-gitlab-api --><dependency> <groupId>org.gitlab</groupId> <artifactId>java-gitlab-api</artifactId> <version>${gitlab.version}</version></dependency> gitlab api认证 123456789101112131415161...
K8s CRD 开发学习 - client_go 连接 K8s(Minikube)
client-go 远程连接 K8s(Minikube)复制配置文件到本地 先将 minikube 拷贝到本地(或者只拷贝 .kube/config 需要的文件) 1cp -r /home/docker_user/.minikube /root/ 拷贝 .kube 文件夹 1cp -r /home/docker_user/.kube /root/ 添加 SSH 端口转发本地肯定是访问不了的,所以需要在本地试验环境添加远程主机的端口转发。 Windows 端口转发,打开 Windows 的 cmd,输入命令: 1234# 表示在本地启动 18443 端口,与远程主机 root@192.168.56.101 建立连接,端口转发到远程主机 192.168.49.2:8443 上去,执行完窗口会 hold 住# 192.168.49.2 是 k8s 节点 ip,使用 `minikube node list` 查看ssh -L 18443:192.168.49.2:8443 -N -f docker_user@192.168.56.101 此时可以在本地开发环境通过 c...
K8s CRD 开发学习 - 安装 K8s(Minikube)
安装 Docker使用官方安装脚本自动安装 Docker12curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyunsystemctl enable docker 配置镜像加速12345678mkdir -p /etc/dockertee /etc/docker/daemon.json <<-'EOF'{ "registry-mirrors": ["https://0vlzmqf0.mirror.aliyuncs.com"]}EOFsystemctl daemon-reloadsystemctl restart docker 安装 Minikube12curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64install minikube-linux-amd64 /usr/local/bin/mi...
Docker,containerd,CRI,CRI-O,OCI,runc
转自: https://zhuanlan.zhihu.com/p/490585683 自 Docker 开启了使用容器的爆发式增长,有越来越多的工具和标准来帮助管理和使用这项容器化技术,与此同时也造成了有很多术语让人感到困惑。 比如 Docker, containerd, CRI, CRI-O, OCI, runc,本篇将解释容器生态系统是如何在一起工作的。 容器生态系统容器生态系统是由许多令人兴奋的技术、大量的专业术语和大公司相互争斗组成的。 幸运的是,这些公司偶尔会在休战中走到一起合作,商定一些标准,这些标准有助于使这个生态系统在不同的平台和操作系统之间更具互操作性,并减少对单一公司或项目的依赖。 这张图显示了 Docker、Kubernetes、CRI、OCI、containerd 和 runc 在这个生态系统中是如何结合的。 其工作流程简单来说是这样的: Docker,Kubernetes 等工具来运行一个容器时会调用容器运行时(CRI)比如 containerd,CRI-O 通过容器运行时来完成容器的创建、运行、销毁等实际工作 Docker 使用的是 co...
CentOS 7 修改 Docker 容器和镜像默认存储位置
注: 目前发现在迁移过程中nexus服务会丢文件(迁移之前一定要做好测试) 转: https://segmentfault.com/a/1190000040326126 CentOS7修改Docker容器和镜像默认存储位置通常,当你开始使用docker时,我们并不太关心Docker 用于存储镜像和容器的默认目录。当使用Docker进行更多实验时,Docker开始占用大量的空间时,你不得不按下紧急按钮。所以现在是时候把故障排除放在如何改变docker的默认存储位置了 在试图改变Docker的默认存储位置时,我们必须知道一些重要的信息。 docker 当前使用的默认存储位置docker 当前使用的存储驱动程序镜像和容器要存放的新存储空间 Docker 默认的位置在/var/lib/docker,当前所有的镜像、容器都存储在这儿。如果你有任何在运行的容器,停止这些容器,并确保没有容器在运行,然后运行以下命令,确定当前Docker使用的存储驱动。 1、查看docker当前信息注:此处需要注意docker的两个信息: Storage Driver: ov...
关于 Rancher 的证书轮换策略
参考:https://docs.rancher.cn/docs/rancher2/cluster-admin/certificate-rotation/_index/#%E7%8B%AC%E7%AB%8B%E5%AE%B9%E5%99%A8-rancher-server-%E8%AF%81%E4%B9%A6%E6%9B%B4%E6%96%B0 集群部署略,参考官网 Docker Rancher Server 证书更新证书未过期证书未过期时,Rancher Server 可以正常运行。升级到 Rancher v2.0.14+、v2.1.9+、v2.2.2+ 后会自动检查证书有效期,如果发现证书即将过期,将会自动生成新的证书。所以独立容器运行的 Rancher Server,只需在证书过期前把 Rancher 版本升级到支持自动更新 SSL 证书的版本即可,无需做其他操作。 证书已过期如果证书已过期,那么 Rancher Server 无法正常运行。即使升级到 Rancher v2.0.14+、v2.1.9+、v2.2.2+ 也可能会提示证书错误。如果出现这种情况,可通过以下操作进行...
Rancher 的角色权限分配实践
Rancher 分为 3 种角色,各自适用范围也不同 全局 集群 项目 项目下又包括了多个 namespace 先使用管理员登录创建 1 个可以管理全局的账户和角色的用户(全局管理员账户) 注:此用户仅用来管理用户和角色,admin 权限太大,之后不再使用它进行登录 用户名:UserManager 拥有角色: Manage Roles Manage Users 退出管理员,然后使用全局管理员账户创建一个集群管理员账户(集群管理员账户)全局权限:Standard User 用户名:ClusterManager 用 ClusterManager 身份登录并进行创建集群(略) 创建集群或项目时,Rancher 会自动将创建者分配为所有者。分配了所有者角色的用户可以在集群或项目中给其他用户分配角色。 然后使用 UserManager 为各集群创建用户一个 ClusterManager 账户下可以创建多个集群,例如 release/production。 1. 项目管理员 ProjectsAdmin 全局权限:Standard User 创建和管理项目,查看监控等,...
Rancher 的安装
官网的话:Rancher 是为使用容器的公司打造的容器管理平台。 安装 RancherDocker 单节点安装 如果容器内的 80 端口映射到宿主机的 8xxx,那么容器内的 443 端口要映射到宿主机的 8443。如果容器内的 80 端口映射到宿主机的 9xxx,那么容器内的 443 端口要映射到宿主机的 9443。 docker 123456##############使用存储卷###############docker run -d --privileged --name rancher-server \--restart=unless-stopped \-p 8080:80 -p 8443:443 \-v /opt/rancher:/var/lib/rancher \rancher/rancher:v2.6.3 docker-compose 1234567891011services: rancher-server: image: rancher/rancher:v2.6.3 container_name: rancher-server ...
