K8s-Demo实现】的更多相关文章

在上一篇<基本概念快速一览>中,我们把基本的一些概念快速地简单地不求甚解地过了一下,本篇开始我们会将ASP.NET Core WebAPI部署到K8S,从而结束初探的旅程. Section 1 - ASP.NET Core on K8S学习初探(1)K8S单节点环境搭建 Section 2 - ASP.NET Core on K8S学习初探(2)K8S基本概念快速一览 Section 3 - ASP.NET Core on K8S学习初探(3)部署API到K8S 一.准备一个WebAPI 这里…
上一篇<K8S集群部署>中搭建好了一个最小化的K8S集群,这一篇我们来部署一个ASP.NET Core WebAPI项目来介绍一下整个部署过程的运行机制,然后部署一下Dashboard,完成可视化管理.本篇已加入了<.NET Core on K8S学习实践系列文章索引>,更多内容请到索引中查看. 一.部署示例项目 1.1 准备一个ASP.NET Core WebAPI 这里准备一个空的ASP.NET Core WebAPI项目,使用默认自带的ValuesController控制器,…
1. Intro 最近在了解日志聚合系统,正好前几天看到一篇文章<用了日志系统新贵Loki,ELK突然不香了!>,所以就决定动手体验一下.本文就带大家快速了解下Loki,并简单介绍.NET Core如何集成Loki. 2. What's Loki Stack Grafana Loki like Prometheus, but for logs.其是一个水平可扩展,高可用性,多租户的日志聚合系统,基于Apatch 2.0开源.其有三部分组成: Loki 是主服务器,负责存储日志和处理查询.对标E…
body { margin: 0; overflow: auto; font: normal 14px Verdana; background: rgba(255, 255, 255, 1); padding: 2px 4px 0; cursor: text } body, p, font, div, li { line-height: 1.5 } body, td, th { color: rgba(0, 0, 0, 1) } .i { width: 100%; *width: auto; t…
学习了K8S的基础知识,我们的目的就是解决我们服务的迁移,那么接下去通过几个案例来感受一下K8s部署带来的便捷与效率. 环境准备: 3个节点,然后我这边也安装了 Ingress. 部署wordpress+mysql(Service:NodePort模式): (1)创建wordpress命名空间 kubectl create namespace wordpress kubectl get ns (2)创建wordpress-db.yaml文件,根据wordpress-db.yaml创建资源[mys…
前言: 之前文章 对Kubernetes 的一些基础概念及在windows下的环境搭建,接下来把.Net Core 运行到Kubernetes 中,在实际的操作中,对Kubernetes 的进一步学习了解. 一.程序准备 1.创建.net core 项目,修改Index页面显示当前ip和机器名: public class IndexModel : PageModel { public string HostName { get; set; } public string HostIP { get…
一.前言 上一篇文章中对yaml文件格式进行了解,并对k8s中各种主要资源通过yaml创建时的定义模板.接来下就进一步学习k8s的各种特点.并应用在示例中. 接下来先实现.Net Core Api程序版本滚动升级.回滚,并在过程中进一步的对k8s进行了解 二.滚动升级 1.推送新版本服务镜像v3到docker hub. 2.实现k8s中滚动升级: 新建k8sweb-dep.yaml文件,用于创建Deployment资源: apiVersion: apps/v1 kind: Deployment…
apiVersion: extensions/v1beta1 kind: Deployment metadata: name: go-demo-hostname spec: replicas: 2 template: metadata: labels: app: go-demo-hostname spec: volumes: - name: apps hostPath: path: /home/docker/go_path/src/go_demo containers: - name: go-d…
Production-Grade Container Orchestration - Automated container deployment, scaling, and management. 生产级别的容器编排系统--自动化的容器部署.扩展和管理. 1. 引言 由于最近在学习微服务,所以就基于之前docker的基础上把玩一下k8s(Kubernetes),以了解基本概念和核心功能. 2. What's k8s? k8s涉及到很多基本概念,可以看十分钟带你理解Kubernetes核心概念快…
1docker版本 docker 17.09 https://docs.docker.com/ appledeAir:~ apple$ docker version Client: Docker Engine - Community Version:           18.09.0 API version:       1.39 Go version:        go1.10.4 Git commit:        4d60db4 Built:             Wed Nov …
本文首发于我的公众号 Linux云计算网络(id: cloud_dev),专注于干货分享,号内有 10T 书籍和视频资源,后台回复「1024」即可领取,欢迎大家关注,二维码文末可以扫. 从前面的文章我们知道,Kubernetes 脱胎于 Google 的 Borg,Borg 在 Kubernetes 诞生之初已经在 Google 内部身经百战 10 余年,且不说它的历史源远流长,就凭它是出自 Google 那帮天才工程师之手,就知道它的学习难度不低. 对于这种有一定学习门槛的技术,最好的入门方式…
在公司,使用dns切换,可能会比keepalived+haproxy,更精简的易维护. 毕竟,高可用只是偶尔切换,不是时时切换. 且dns解析在自己可控时,更不会影响k8s线上使用了. (部分代码,由于担心太冗长,已使用xxx代替,这些xxx完全可以自己生成的) 使用步骤如下: 先在每个master上安装etcd,运行如下命令: sh k8s.sh k8s.xxx.com.cn etcd 等每个master上的etcd安装好之后,运行如下命令: sh k8s.sh k8s.xxx.com.cn…
k8s的heapster项目中止以后, 事件收集的项目,就推荐使用https://github.com/heptiolabs/eventrouter项目了. 部署文档很简单,但有两个问题要解决: 一,eventrouter的官方镜像如何拿到? 官方yaml文件里,镜像地址为: gcr.io/heptio-images/eventrouter:latest 众所周知,这个url不***,在国内是不可能下载的. 于是,我们迂回一点操作. 1,在github上新建一个项目,里面只有一个文件,Docke…
一.概述 harbor是什么呢?英文单词的意思是:港湾.港湾用来存放集装箱(货物的),而docker的由来正是借鉴了集装箱的原理,所以harbor是用于存放docker的镜像,作为镜像仓库使用.官方的说法是:Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器. harbor镜像仓库是由VMware开源的一款企业级镜像仓库,它包括权限管理(RBAC).LDAP.日志审核.管理界面.自我注册.镜像复制等诸多功能. 二.harbor安装部署 1.安装需求 资源 要求 CPU…
https://www.kancloud.cn/huyipow/prometheus/527092 https://songjiayang.gitbooks.io/prometheus/content/demo/target.html   创建 monitoring namespaces apiVersion: v1 kind: Namespace metadata: name: monitoring Prometheus RBAC 权限管理 创建prometheus-k8s 角色账号 apiV…
一.概述 由于服务器有限,因此只能用虚拟机搭建 k8s.但是开3个节点,电脑卡的不行. k8s中文社区封装了一个 Minikube,用来搭建单机版,链接如下: https://yq.aliyun.com/articles/221687 我测试过了,是可以运行.但是,没有calico网络插件.根据其他文档来部署calico,始终无法使用! 因此,靠人不如靠自己.自己搭建的,心里有数! 二.环境依赖 环境说明 配置 操作系统 主机名 IP地址 功能 2核4G 40G磁盘 ubuntu-16.04.5…
Kubernetes 是Google的一种基于容器的开源服务编排解决方案,在我们进行Kubernetes的学习前,为了对Kubernetes的工作有一个大概的认识, 我们需要先安装一个单节点的实例服务,用于平常的开发与测试.在官网 中,有各种各样的搭建方式,但这里我们想要有更贴近实际的例子,只有这样才能让docker和k8s体现出关系的紧密. 我们先看k8s的架构图,以便对它的部署有个直观的了解 环境准备 本文的例子是基于Centos 7的Linux版本,大家也可以使用ubuntu或其他发行版,…
从网上我们看到的好多kubeadm 安装k8s 的时候都说需要下拉取镜像,然后修改,实际上 我们可以使用配置参数,快速的跳过墙的问题 说明: 基础镜像,我们仍然存在,拉取的问题,但是dockerhub 上已经包含了好多拉取好的,我们只需要拉取,统一命名 下就可以了,简单测试我使用了别人以及配置好的 index.docker.io/mirrorgooglecontainers 简单demo 准备coredns 镜像   默认上边的仓库没有处理coredns 的镜像,我拉取,本地处理了 docker…
k8s常用命令  原贴地址 查看集群信息: [root@kubernetes-master pods]# kubectl cluster-info kubectl cluster-info展示结果 kubectl cluster-infoKubernetes master is running at https://10.24.103.1:6443KubeDNS is running at https://10.24.103.1:6443/api/v1/namespaces/kube-syste…
如果公司的docker仓库(harbor),需要用户认证之后,才能拉取镜像. 那如何在k8s里生成这个secret呢? 这个secret如何还原呢? 在k8s的yaml文件里如何实现呢? 这里提供几个命令小贴士: 1,生成docker-registry的secret kubectl create secret docker-registry harborsecret --docker-server=harbor.demo.com.cn --docker-username='docker-admi…
例子来源于<Kubernetes实践指南>一书.问题依然没有解决,求助大神. 测试环境 Centos 7.0 docker 1.13.1 kubectl v1.5.2 etcd 3.2.18 都是通过yum安装,防火墙已关闭. 入坑问题 浏览器输入:http://ip:30001/demo/ Error:com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The last pa…
目前,有很多种基于Kubernetes搭建RabbitMQ集群的解决方案.今天笔者今天将要讨论我们在Fuel CCP项目当中所采用的方式.这种方式加以转变也适用于搭建RabbitMQ集群的一般方法.所以如果你想要设计自己的解决方案,你应该收集一些更符合你定制化需求的文章. 命名你的集群 在Kubernetes内部运行RabbitMQ集群会遇到一系列有意思的问题.最先会遇到的问题是为了使各个节点之间互相可见,我们应该如何命名各个节点.以下是一些符合规范的不同的命名方法: rabbit@hostna…
之所以用k8s来部署应用,就是因为k8s可以灵活的控制集群规模,进行扩充或者收缩.生产上我们要配置的参数较多,命令行的方式显然不能满足需求,我们应该使用基于配置文件的方式.接下来做一个部署的demo: ------------------------------------------------------------------------------------------------------------------------------- 场景:一个数据库,一个应用程序,数据库要暴…
在 12 月 22 日 ECUG 的下午场 ,七牛云容器计算部技术总监袁晓沛为大家带来了主题为<基于 K8S 的 DCOS 之路>的精彩分享,向大家介绍了七牛容器云目前 K8S 的状况和产品思考. 同时,他在会上讲述了如何通过七牛公有云业务容器化的操作实践,组建 K8S 翻译团队,对<Kubernetes in Action>这本书进行落地的翻译. 以下是演讲内容的实录整理. 大家下午好!我是七牛云容器计算部技术总监袁晓沛, 我今天想分享的是七牛云基于 K8S 的 DCOS 之路,…
目录 ceph配置 k8s 配置 通过静态pv,pvc使用ceph 测试多pod挂载静态pv数据不一致问题 StoragaClass 方式 ceph 常用命令 k8s 常用命令 k8s各类端口及IP说明 端口说明 问题 PV访问模式 测试结果 参考 ceph配置 rbd create --size 100 rbd/nginx-image [root@localhost my-cluster]# rbd list nginx-image [root@localhost my-cluster]# r…
k8s学习 - 概念 - ReplicationController 我们有了 pod,那么就需要对 pod 进行控制,就是同一个服务的 podv我需要启动几个?如果需要扩容了,怎么办?这里就有个控制器,ReplicationController(简称rc). 不过我们看官网: 这里告诉我们,ReplicationController 现在已经过时了,现在建议使用 Deployment 配合ReplicaSet.ReplicationController的主要功能是保证Pod的数量.健康,弹性收…
前言 上一篇我们讲述了使用Kubectl管理k8s集群,那么接下来,我们将使用kubeadm来启动k8s集群. 部署k8s集群存在一定的挑战,尤其是部署高可用的k8s集群更是颇为复杂(后续会讲).因此本教程会在部署的过程中穿插讲解一些部署相关知识.原理和步骤,比如kubeadm.kubelet以及启动集群时的实际部署动作等等.整个部署过程全部脚本化,以便各位参考和学习. 因整个集群部署教程篇幅较长,因此会拆分成几篇进行说明. 目录 使用Kubeadm创建k8s集群 Kubeadm概述  Kube…
9.deployment:声明式的升级应用 9.1.使用RC实现滚动升级 #kubectl rolling-update kubia-v1 kubia-v2 --image=luksa/kubia:v2 使用kubia-v2版本应用来替换运行着kubia-v1的RC,将新的复制控制器命名为kubia-v2,并使用luksa/kubia:v2最为镜像. 升级完成后使kubectl describe rc kubia-v2查看升级后的状态. 为什么现在不再使用rolling-update? 1.直接…
本篇已加入<.NET Core on K8S学习实践系列文章索引>,可以点击查看更多容器化技术相关系列文章. 一.什么是Rolling Update? 为了服务升级过程中提供可持续的不中断的服务,K8S提供了Rolling Update机制,它可以使得服务近乎无缝地平滑升级,即在不停止对外服务的前提下完成应用的更新.滚动更新采用渐进的方式逐步替换旧版本Pod,如果更新不如预期,那么也可以通过回滚操作恢复到更新前的状态. 滚动更新的最大好处在于零停机,整个更新过程始终有副本在运行,从而保证了业务…
关于spring-cloud-kubernetes spring-cloud-kubernetes是springcloud官方推出的开源项目,用于将Spring Cloud和Spring Boot应用运行在kubernetes环境,并且提供了通用的接口来调用kubernetes服务,GitHub上官方地址是:https://github.com/spring-cloud/spring-cloud-kubernetes 系列文章列表 本文是<spring-cloud-kubernetes实战系列>…