云原生+k8s+docker
文章平均质量分 65
云原生领域相关知识
椰汁菠萝
在循环中进步
展开
-
k8s代理外部https服务
项目部署在k8s环境,不能像以前nginx代理下即可,需要分成两步完成代理: 1. 创建k8s外部service;由于项目要和第三方对接,调用第三方接口,且接口前端直接调用即可,没有必要后端再包装一层,但前端无法直接调用第三方接口,因为不同域名,有跨域问题,需要后端代理。,和正则表达式中的意思完全一样,代表第一个捕获组,即第一个括号中匹配到的内容。重定向规则根据自身情况配置,没有的可以不配置,其中的。为零号捕获组,代表整个表达式匹配到的内容。代理的外部接口是https协议的需要加上。原创 2024-04-16 14:47:25 · 576 阅读 · 0 评论 -
k8s中cert-manager管理https证书
目前https是刚需,但证书又很贵,虽然阿里云有免费的,但没有泛域名证书,每有一个子域名就要申请一个证书,有效期1年,1年一到全都的更换,太麻烦了。经过搜索,发现了自动更新证书神器;当然cert-manager是基于k8s的。原创 2024-02-02 18:46:19 · 1042 阅读 · 0 评论 -
docker中的网络不通问题
有时候在使用docker时,会莫名其妙docker内部与外网网络不通。原创 2023-11-30 10:36:44 · 1133 阅读 · 1 评论 -
MinIO分布式存储k8s集群部署
这种方式我并没有登录成功,可能这种代理只能通过localhost:9090访问,没有深入研究,我是通过ingress暴露地址,拿token进行访问的;这里使用的5.07,请根据自己k8s版本自行下载安装,https://github.com/minio/operator/releases。启动后,访问看板:http://127.0.0.1:9090/,输入设置的用户名密码,这样一个单节点MinIO就搭建好了;以上就是所有的必填项,其他配置,可以大概看下,不想看的点击创建也可;原创 2023-08-31 23:43:36 · 3686 阅读 · 4 评论 -
Docker时区问题
如果镜像不是基于Debian构建或者没有安装tzdata,建议安装后重新打镜像,或者自己进入容器调整好后,重新打成镜像,后续使用新做的镜像即可。与 Debian 镜像不同,此类镜像中并没有包含tzdata,所以只设置环境变量并不能达到我们想要的效果,因此需要安装tzdata。与 Debian 镜像不同,此类镜像中并没有包含tzdata,所以只设置环境变量并不能达到我们想要的效果,因此需要安装tzdata。当前docker容器技术应用越来越广泛,但在启动容器后,容器内部的时间并不是东八区。原创 2023-05-10 17:57:20 · 1567 阅读 · 0 评论 -
Kubernetes对象之PersistentVolume,PersistentVolumeClaim和StorageClass
前面我们学习了Kubernetes中的Volume,我们可以发现前文中的Volume(无论何种类型)和使用它的Pod都是一种静态绑定关系,在Pod定义文件中,同时定义了它使用的Volume。在这种情况下,Volume是Pod的附属品,我们无法像创建其他资源(例如Pod,Node,Deployment等等)一样创建一个Volume。因此Kubernetes提出了PersistentVolume(PV)的概念。原创 2023-05-10 10:57:31 · 1889 阅读 · 1 评论 -
k8s ConfigMap 中 subPath 字段和 items 字段
什么时候应该使用 Subpath- **场景一**: 一个共享卷, 挂载多个路径.- **场景二**: ConfigMap或Secret挂载到特定目录的特定路径, 而该目录下已经有其他文件且不希望被覆盖掉原创 2023-03-01 21:21:39 · 765 阅读 · 0 评论 -
Helm安装Harbor
Harbor 是由 VMware 公司为企业用户设计的 Registry Server 开源项目,包括了权限管理 (RBAC)、LDAP、审计、管理界面、自我注册、HA 等企业必需的功能,同时针对中国用户的特点,设计镜像复制和中文支持等功能。目前该项目已经捐献给CNCF并且毕业。github:Harbor说白了,就是一个有web管理界面,具有高可用特性的docker仓库,现在又加入了chart仓库。docker官方提供的registry,功能简单,没有图形管理界面,使用不是很友好。原创 2023-02-24 17:05:38 · 855 阅读 · 0 评论 -
k8s生成docker镜像库密钥
一、生成kubectl create secret docker-registry regsecret --docker-server=registry.cn-hangzhou.aliyuncs.com --docker-username=xxx@aliyun.com --docker-password=xxxxxx --docker-email=xxx@aliyun.com其中:regsecret: 指定密钥的键名称, 可自行定义--docker-server: 指定docker仓库地址--原创 2021-01-19 19:53:19 · 1409 阅读 · 0 评论 -
docker 安装SqlServer 可在linux系统安装运行
官方地址docker官方镜像库镜像下载#下载最新版本docker pull mcr.microsoft.com/mssql/server#下载2019最新版本docker pull mcr.microsoft.com/mssql/server:2019-latest#下载2017最新版docker pull mcr.microsoft.com/mssql/server:2017-latest运行镜像docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWOR原创 2021-10-14 11:15:55 · 408 阅读 · 0 评论 -
docker常用命令
一、docker常用命令 docker images 查看当前系统下已经下载的镜像列表 docker pull 'imageUrl' 拉取地址镜像 docker ps 查看当前正在运行的容器 docker run 'imageName...原创 2020-05-08 11:56:00 · 896 阅读 · 1 评论 -
docker安装nginx
docker run --name nginx -v /some/content:/usr/share/nginx/html:ro -d nginxdocker run --name nginx -p 80:80 -p 443:443 -v /etc/docker-app/nginx/nginx.conf:/etc/nginx/nginx.conf -v /root/app/front:/usr/share/nginx -d nginx原创 2021-10-20 11:29:47 · 223 阅读 · 0 评论 -
Windows10家庭中文版如何安装Docker Desktop
自从有了win版的Docker Desktop,在win上安装docker就简单多了,安装之后你就有了docker环境了比较坑的一点是目前需要win10系统并且是专业版,一下提供win 10 家庭版安装现在大部分笔记本/电脑预装的都是win10家庭版,而家庭版又不支持Hyper-V,Docker Desktop是无法直接安装的。会提示你当前的系统版本不是专业版,无法进行安装。但其实家庭版...原创 2020-03-05 19:45:50 · 2295 阅读 · 1 评论 -
Docker 容器中配置nginx后报403 Forbidden 解决办法
1、Docker挂载主机目录,访问相应的文件出现Premission denied的权限访问问题问题原因及解决办法 原因是CentOS7中的安全模块selinux把权限禁掉了,主要是挂载的目录没有权限的问题2、添加selinux规则,改变要挂载的目录的安全性文本chcon -Rt svirt_sandbox_file_t /home/hct/sample/...原创 2018-10-24 18:40:54 · 15663 阅读 · 1 评论 -
docker安装运行redis
一、DockerHup redis仓库https://hub.docker.com/_/redis二、镜像拉取docker pull redis三、镜像启动docker run --name redis -v /root/redis/conf/redis.conf:/usr/local/etc/redis/redis.conf -d -p 6379:6379 redis redis-server /usr/local/etc/redis/redis.conf...原创 2020-09-27 13:24:44 · 470 阅读 · 0 评论 -
docker安装redmine
最简单安装docker run -d --name some-redmine -p 80:3000 redmine运行成功后,http://ip访问即可,默认用户密码:admin/admin,该方式使用SQLite3作为数据库,生产环境不推荐使用此方式安装选择数据库安装推荐使用该方式进行安装启动数据库容器(任选一种)PostgreSQLdocker run -d --name some-postgres --network some-network -e POSTGRES_PASSW原创 2020-10-12 11:38:20 · 3548 阅读 · 0 评论 -
docker push manifest invalid: manifest invalid
问题描述本地使用dockerfile制作镜像后,使用docker push命令推送到私有镜像仓库,报:manifest invalid: manifest invalid问题原因本地docker版本过高,制作出的镜像和仓库不匹配,到低版本docker环境下制作镜像,推送即可;或者升级registry到最新版本;...原创 2021-05-08 10:22:25 · 2372 阅读 · 0 评论 -
docker registry仓库转移及https启动
一、docker registry私有仓库搭建docker肯定是必备环境docker run -d -p 5000:5000 registry该命令会到docker hup上拉取最新registry镜像启动,映射端口为5000访问:http://localhost:5000/v2/_catalog查看镜像库里有哪些镜像,刚启动当然是空的,这样一个简单的私有仓库就搭建好了二、上传镜像docker tag registry 127.0.0.1:5000/registrydocker push原创 2020-07-16 20:43:30 · 885 阅读 · 0 评论 -
使用docker安装运行mysql数据库
docker pull mysqldocker pull mysql:5.7docker run --name mysql-5.7 --privileged=true -v /root/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -p 3306:3306 -d mysql:5.7–privileged=true :CentOS下权限问题chown: changing ownership of ‘/var/lib/mysql/’: Pe原创 2020-09-11 10:14:56 · 437 阅读 · 0 评论 -
k8s修改集群IP--不重置集群
背景公司产品基于k8s开发,到客户现场部署成为费时费力的工作,从安装机器、部署集群环境、安装k8s、拉取应用镜像、启动应用等;中间有任何一个环节出问题,都会导致最终应用跑不起来;为了减轻部署人员工作量,缩短部署时间,还是回到了虚拟机的老路上;k8s的节点部署为虚拟机,调试好后,导出为虚拟机镜像,到客户环境导入启动即可;大大降低工作量,缩减部署时间,降低部署人员技术门槛;问题客户环境部署集群后,一般需要修改k8s各个节点的IP地址为客户环境的IP,本文命令执行环境:CentOS 7.71. 修改原创 2021-11-13 23:32:32 · 8115 阅读 · 10 评论 -
Helm介绍安装及简单入门
一、简单介绍Helm是CNCF毕业项目,是K8S的包管理器,就像apt/yum/homebrew这些作为linux的包管理器一样;官网:https://helm.sh/zh/github:https://github.com/helm/helmChart 是Helm的包。它包含了 在Kubernetes 集群内部,运行应用程序、工具或服务所需的所有资源定义。类似于Homebrew formula,Apt dpkg,或 Yum RPM;Repository(仓库) 是用来存放和共享 charts 的原创 2021-07-21 19:36:08 · 993 阅读 · 1 评论 -
k8s的持久化存储PV&&PVC
1.PV和PVC的引入Volume 提供了非常好的数据持久化方案,不过在可管理性上还有不足。拿前面 AWS EBS 的例子来说,要使用 Volume,Pod 必须事先知道如下信息: 当前 Volume 来自 AWS EBS。 EBS Volume 已经提前创建,并且知道确切的 volume-id。 Pod 通常是由应用的开发人员维护,而 Volume 则通常是由存储系统的管理员维护。开发人员要获得上面的信息: 要么询问管理员。 要么自己就是管理员。 这样就带来转载 2021-07-21 17:45:31 · 335 阅读 · 0 评论 -
k8s高可用集群部署(二)部署实施
上篇文章:k8s高可用集群部署(一)方案对比 介绍了两种部署方案,从他们拓扑图中可以看出,方案一部署起来更容易些;因此选择方案一;高可用方案总体介绍k8s高可用方案和普通方案相比仅仅多了一个负载均衡器sudo kubeadm init --control-plane-endpoint "k8s-master:16443" --upload-certs --pod-network-cidr 10.244.0.0/16 --image-repository registry.cn-hangzhou.ali原创 2021-05-07 11:44:22 · 695 阅读 · 1 评论 -
k8s高可用集群部署(一)方案对比
本页面介绍了配置高可用(HA) Kubernetes 集群拓扑的两个选项。您可以设置 HA 集群:使用堆叠(stacked)控制平面节点,其中 etcd 节点与控制平面节点共存 使用外部 etcd 节点,其中 etcd 在与控制平面不同的节点上运行在设置 HA 集群之前,您应该仔细考虑每种拓扑的优缺点。说明:kubeadm 静态引导 etcd 集群。 阅读 etcd集群指南以获得更多详细信息。堆叠(Stacked) etcd 拓扑堆叠(Stacked) HA 集群是一种这样的..原创 2021-04-23 16:34:49 · 888 阅读 · 1 评论 -
k8s生成https证书的secret
kubectl create secret tls brain.test.com --cert=brainAll.crt --key=brainAll.key -n capbrain.test.com是secret的namebrainAll.crt为完整证书brainAll.key为证书私钥原创 2020-08-04 19:46:26 · 2440 阅读 · 0 评论 -
KubeSphere介绍和安装
一、介绍KubeSphere 是在 Kubernetes 之上构建的以应用为中心的多租户容器平台,提供全栈的 IT 自动化运维的能力,简化企业的 DevOps 工作流。KubeSphere 提供了运维友好的向导式操作界面,帮助企业快速构建一个强大和功能丰富的容器云平台。KubeSphere 愿景是打造一个基于 Kubernetes 的云原生分布式操作系统,它的架构可以很方便地与云原生生态进行即插即用(plug-and-play)的集成。...原创 2020-07-20 16:17:03 · 6521 阅读 · 0 评论 -
kubernetes(k8s)监控metrics-server java调用API
一、前言上篇介绍了如何安装metrics-server,本篇主要介绍如何使用java程序远程调用metrics-server的api二、代码调用k8s集群kubernetes-client为kubernetes官方维护的访问集群的api,各种语言基本都有,kubernetes-client/java为java版的api,用法示例import io.kubernetes.client.openapi.ApiClient;import io.kubernetes.client.openapi.ApiE原创 2020-06-17 15:14:28 · 3815 阅读 · 11 评论 -
kubernetes(k8s)之metrics-server安装与配置
一、metrics-server简介从 Kubernetes 1.8 开始,资源使用指标(如容器 CPU 和内存使用率)通过 Metrics API 在 Kubernetes 中获取, metrics-server 替代了heapster。Metrics Server 实现了Resource Metrics API,Metrics Server是集群范围资源使用数据的聚合器。Metrics Server 从每个节点上的 Kubelet 公开的 Summary API 中采集指标信息。二、met..原创 2020-06-11 12:59:06 · 4126 阅读 · 0 评论 -
K8S的apiVersion该用哪个
Kubernetes的官方文档中并没有对apiVersion的详细解释,而且因为K8S本身版本也在快速迭代,有些资源在低版本还在beta阶段,到了高版本就变成了stable。如Deployment:1.6版本之前 apiVsersion:extensions/v1beta11.6版本到1.9版本之间:apps/v1beta11.9版本之后:apps/v1一.各种apiVer...转载 2019-08-16 10:59:47 · 1894 阅读 · 0 评论 -
最精简kubernetes(1.15.1)(k8s)集群部署教程--基于CentOS 7
一、环境要求运行以下之一的一台或多台机器:Ubuntu 16.04+Debian 9CentOS 7RHEL 7Fedora 25/26 (best-effort)HypriotOS v1.0.1+Container Linux (tested with 1800.6.0)每台机器2 GB或更多的RAM(任何更少的内存将为您的应用留下很小的空间)2个CPU或更多群集中...原创 2019-09-02 15:34:20 · 1086 阅读 · 0 评论 -
k8s集群外访问集群内部服务的几种方式
前言 目前k8s+docker算是运维必修了,docker能让我们的环境一键迁移,k8s能自动编排还能保证服务高可用,两者结合自然是无敌了,当然任何技术的使用,都需要根据具体环境来定,就像你要杀鸡,却非要选牛刀,牛刀是很锋利,但还不够你折腾的 本文重点介绍k8s集群外如何访问集群内的服务一、hostPort或hostNetworkhostPort和host...原创 2020-06-03 16:33:04 · 6874 阅读 · 0 评论