随笔分类 - K8S

摘要:kubectl 通过访问 Kubernetes API 来执行命令。我们也可以通过对应的TLS key, 使用curl 或是 golang client做同样的事。 API 请求必须使用 JSON 格式来发送。kubectl 的作用是将 yaml 转换为 JSON 格式进行 API 请求。 1、我们 阅读全文
posted @ 2020-10-23 17:58 三度 阅读(134) 评论(0) 推荐(0) 编辑
摘要:日常工作中,可能需要在自己的笔记本电脑上执行 kubectl 命令以管理远程 Linux 服务器上的 Kubernetes 集群。通过调用 kubernetes API 来实现对 Kubernetes 对象的操作. 在客户端电脑安装 kubectl Linux # cat <<EOF > /etc/ 阅读全文
posted @ 2020-10-23 17:26 三度 阅读(38) 评论(0) 推荐(0) 编辑
摘要:Jenkins 使用Jenkins的话,完成的工作主要有如下步骤: 1.从Gogs或Gitlab仓库上拉取代码 2.使用Maven编译代码,打包成jar文件 3.根据jar文件使用相对应的Dockerfile文件制作成Docker镜像 4.把Docker镜像推送到Nexus上的Docker仓库(或者 阅读全文
posted @ 2020-10-23 10:10 三度 阅读(79) 评论(0) 推荐(0) 编辑
摘要:网址:https://www.qikqiak.com/post/harbor-quick-install/ 安装 Harbor Harbor 支持多种安装方式,源码目录下面默认有一个安装脚本(make/install.sh),采用 docker-compose 的形式运行 Harbor 各个组件,和 阅读全文
posted @ 2020-10-21 17:26 三度 阅读(76) 评论(0) 推荐(0) 编辑
摘要:参考网址:https://www.qikqiak.com/post/gitlab-ci-k8s-cluster-feature/ 阅读全文
posted @ 2020-10-21 17:24 三度 阅读(38) 评论(0) 推荐(0) 编辑
摘要:结合文章:1. 在 Kubernetes 上安装 Gitlab ,地址:https://www.cnblogs.com/sanduzxcvbnm/p/13852854.html 总结: 结合开头的文章部署Gitlab,在这个文章汇中只需要处理token就行了,其他的不用动。 总共需要五个yaml文件 阅读全文
posted @ 2020-10-21 17:19 三度 阅读(42) 评论(0) 推荐(0) 编辑
摘要:总结: 所需要的三个yaml文件的下载地址:https://files.cnblogs.com/files/sanduzxcvbnm/k8s-gitlab.zip Gitlab官方提供了 Helm 的方式在 Kubernetes 集群中来快速安装,但是在使用的过程中发现 Helm 提供的 Chart 阅读全文
posted @ 2020-10-21 15:59 三度 阅读(52) 评论(0) 推荐(0) 编辑
摘要:![](https://img2020.cnblogs.com/blog/794174/202010/794174-20201021102401960-133019947.jpg) 阅读全文
posted @ 2020-10-21 10:24 三度 阅读(62) 评论(0) 推荐(0) 编辑
摘要:介绍如何在Gitlab项目中添加K8S集群,以便使用K8S集群部署gitlab-runner帮我们运行gitlab的CI/CD。 参考官方文档:https://docs.gitlab.com/ee/user/project/clusters/add_remove_clusters.html#add- 阅读全文
posted @ 2020-10-20 09:50 三度 阅读(103) 评论(0) 推荐(0) 编辑
摘要:转载自:https://cloud.tencent.com/developer/article/1477003 我们知道 Kubernetes 是 Google 开源的容器集群管理系统,它构建在目前流行的 Docker 技术之上,为容器化的应用提供资源调度、部署运行、服务发现、扩容缩容等一整套功能, 阅读全文
posted @ 2020-09-24 17:02 三度 阅读(195) 评论(0) 推荐(0) 编辑
摘要:在 Kubernetes 集群中,NodePort 默认范围是 30000-32767,某些情况下,因为您所在公司的网络策略限制,您可能需要修改 NodePort 的端口范围 修改kube-apiserver.yaml 使用 kubeadm 安装 K8S 集群的情况下,您的 Master 节点上会有 阅读全文
posted @ 2020-09-22 17:18 三度 阅读(136) 评论(0) 推荐(0) 编辑
摘要:在集群中的应用出现问题是,可通过 kubectl exec 进入容器命令行终端进行问题诊断: Pod 远程调试 # Pod 中只有一个容器时 kubectl exec -it pod-name /bin/bash # Pod中有多个容器时 kubectl exec -it pod-name -c c 阅读全文
posted @ 2020-08-03 15:50 三度 阅读(84) 评论(0) 推荐(0) 编辑
摘要:在 Kubernetes 的 Pod 中使用容器镜像之前,您必须将其推送到一个镜像仓库(或者使用仓库中已经有的容器镜像)。在 Kubernetes 的 Pod 定义中定义容器时,必须指定容器所使用的镜像,容器中的 image 字段支持与 docker 命令一样的语法,包括私有镜像仓库和标签。 例如: 阅读全文
posted @ 2020-08-03 09:21 三度 阅读(54) 评论(0) 推荐(0) 编辑
摘要:概述 字段选择器(Field Selector)可以用来基于的一个或多个字段的取值来选取一组Kubernetes对象。下面有一些示例性的字段选择器: metadata.name=my-service metadata.namespace!=default status.phase=Pending 下 阅读全文
posted @ 2020-08-03 09:10 三度 阅读(67) 评论(0) 推荐(0) 编辑
摘要:查看名称空间 执行命令 kubectl get namespaces 可以查看名称空间 Kubernetes 安装成功后,默认有初始化了三个名称空间: default 默认名称空间,如果 Kubernetes 对象中不定义 metadata.namespace 字段,该对象将放在此名称空间下 kub 阅读全文
posted @ 2020-07-30 17:24 三度 阅读(53) 评论(0) 推荐(0) 编辑
摘要:当您创建一个 Service 时,Kubernetes 为其创建一个对应的 DNS 条目。该 DNS 记录的格式为 ..svc.cluster.local,也就是说,如果在容器中只使用 ,其DNS将解析到同名称空间下的 Service。 阅读全文
posted @ 2020-07-30 17:21 三度 阅读(37) 评论(0) 推荐(0) 编辑
摘要:Rolling Update滚动更新 通过使用新版本的 Pod 逐步替代旧版本的 Pod 来实现 Deployment 的更新,从而实现零停机。新的 Pod 将在具有可用资源的 Node(节点)上进行调度。 Kubernetes 更新多副本的 Deployment 的版本时,会逐步的创建新版本的 P 阅读全文
posted @ 2020-07-30 15:28 三度 阅读(168) 评论(0) 推荐(0) 编辑
摘要:ClusterIP(默认) 在群集中的内部IP上公布服务,这种方式的 Service(服务)只在集群内部可以访问到 [root@master ~]# kubectl get service -n test -o wide NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S 阅读全文
posted @ 2020-07-30 14:53 三度 阅读(339) 评论(0) 推荐(0) 编辑
摘要:查看当前所有namespaces [root@master ~]# kubectl get namespaces -A NAME STATUS AGE default Active 63d hkd Active 31d kube-node-lease Active 57d kube-public A 阅读全文
posted @ 2020-07-30 12:12 三度 阅读(116) 评论(0) 推荐(0) 编辑
摘要:一开始采取的思路大致如下: 在preStop中使用/bin/sh命令,先down 然后sleep一段时间, 这种思路的执行情况如下: 假若升级容器使用的镜像版本的话,先执行preStop中的命令,sleep设定的时间,在花费删除pod时的默认30秒等待时间,然后才会开始拉取新的镜像,创建新pod 如 阅读全文
posted @ 2020-07-08 18:21 三度 阅读(113) 评论(0) 推荐(0) 编辑