K3s快速搭建入门

k3s Traekfix v2版本开启dashboard并进行项目的部署及使用

1、什么是traefix?

官网介绍:Træfɪk 是一个为了让部署微服务更加便捷而诞生的现代HTTP反向代理、负载均衡工具。 它支持多种后台 (Docker, Swarm, Kubernetes, Marathon, Mesos, Consul, Etcd, Zookeeper, BoltDB, Rest API, file…) 来自动化、动态的应用它的配置文件设置。
Traefix是k3s里面的Ingress Controller。支持负载均衡和反向代理,类似于ngnix。

2、在k3s中开启traefix dashboard

k3s安装启动的时候,默认使用traefix为Ingress Controller,Traefik ingress controller 将使用主机上的 80 和 443 端口(即这些端口不能用于 HostPort 或 NodePort)。traekfix有一个可视化界面,可以通过dashboard查看路由信息等。开启可视化界面有两种方式,一种是通过port-forward;一种是添加ingress,通过域名访问。

2.1、通过port-forward方式访问dashboard

kubectl -n kube-system port-forward $(kubectl -n kube-system get pods --selector "app.kubernetes.io/name=traefik" --output=name) 9000:9000

端口转发开启后,可以通过http://127.0.0.1:9000/dashboard来访问可视化界面:

2.2、通过自定义IngressRoute CRD

# dashboard.yaml
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:name: dashboard
spec:entryPoints:- webroutes:- match: Host(`traefik.example`) && (PathPrefix(`/dashboard`) || PathPrefix(`/api`))kind: Ruleservices:- name: api@internalkind: TraefikService

执行命令kubectl apply -f dashboard.yaml
部署成功后,可通过http://traefik.example/dashboard/ 访问 Dashboard:

3、部署docker-demo应用

minikube 实战篇 - 镜像打包部署 - 2中有关于部署docker-demo的脚本,执行:

kubectl create deployment docker-demo --image=halo26812/docker-demo:0.0.1
kubectl expose deployment docker-demo --type=ClusterIP --port=8080

--type=NodePort修改成--type=ClusterIP,部署的服务是通过ingress提供给外部访问。

type 描述
ClusterIP 只对集群内部可见,外部无法访问
NodePort 对外部可见

执行如下:

[root@localhost halo]# kubectl create deployment docker-demo --image=halo26812/docker-demo:0.0.1
deployment.apps/docker-demo created
[root@localhost halo]# kubectl expose deployment docker-demo --type=ClusterIP --port=8080
service/docker-demo exposed

执行成功。现在需要通过自定义IngressRoute,开放docker-demo服务,定义IngressRoute文件docker-demo-ingressRoute.yaml,如下:

#docker-demo-ingressRoute.yaml
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:name: docker-demo-ingressnamespace: default
spec:entryPoints:- webroutes:- match: Host(`docker.halo.io`) && PathPrefix(`/hello`)kind: Ruleservices:- name: docker-demoport: 8080

以下是相关配置参数的一些说明:

参数 描述
match 是匹配host地址“docker.halo.io”及访问路径前缀匹配“hello”
services.name 是应用名:docker-demo
services.port 是服务端口:8080

执行docker-demo-ingressRoute.yaml文件

halo at MacBook-Pro-3 in ~/minikube/k3s
○ kubectl apply -f docker-demo-ingressRoute.yaml
ingressroute.traefik.containo.us/docker-demo-ingress created

执行成功之后在host文件中配置。

192.168.2.42 docker.halo.io

配置完成之后,在浏览器端访问http://docker.halo.io/hello。如图:

浏览器界面显示“hello world!”。访问成功!

k3s 快速入门 - traefix 使用 - 1相关推荐

  1. k3s 快速入门 - 集群搭建

    K3s快速搭建入门 1.什么是 K3s?# K3s 是一个轻量级的 Kubernetes 发行版,它针对边缘计算.物联网等场景进行了高度优化.K3s 有以下增强功能: 打包为单个二进制文件. 使用基于 ...

  2. 02-K3S 架构及快速入门

    1 架构介绍 原理就是,将 K8S 的相关组件封装到 K3S 的二进制文件中去,然后启动这二进制文件就可以启动一个成熟的 K8S 集群.我们可以看到 K3S 和 K8S 的架构基本差不多,其中 k3s ...

  3. Shiro第一个程序:官方快速入门程序Qucickstart详解教程

    目录 一.下载解压 二.第一个Shiro程序 1. 导入依赖 2. 配置shiro配置文件 3. Quickstart.java 4. 启动测试 三.shiro.ini分析 四.Quickstart. ...

  4. 计算机入门新人必学,异世修真人怎么玩?新手快速入门必备技巧

    异世修真人怎么快速入门?最近新出来的一款文字修仙游戏,很多萌新不知道怎么玩?进小编给大家带来了游戏新手快速入门技巧攻略,希望可以帮到大家. 新手快速入门攻略 1.开局出来往下找婆婆,交互给点钱,旁边有 ...

  5. Spring Boot 2 快速教程:WebFlux 快速入门(二)

    2019独角兽企业重金招聘Python工程师标准>>> 摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘 ...

  6. Apache Hive 快速入门 (CentOS 7.3 + Hadoop-2.8 + Hive-2.1.1)

    2019独角兽企业重金招聘Python工程师标准>>> 本文节选自<Netkiller Database 手札> 第 63 章 Apache Hive 目录 63.1. ...

  7. 《iOS9开发快速入门》——导读

    本节书摘来自异步社区<iOS9开发快速入门>一书中的目录,作者 刘丽霞 , 邱晓华,更多章节内容可以访问云栖社区"异步社区"公众号查看 目 录 前 言 第1章 iOS ...

  8. BIML 101 - ETL数据清洗 系列 - BIML 快速入门教程 - 序

    BIML 101 - BIML 快速入门教程 做大数据的项目,最花时间的就是数据清洗. 没有一个相对可靠的数据,数据分析就是无木之舟,无水之源. 如果你已经进了ETL这个坑,而且预算有限,并且有大量的 ...

  9. python scrapy菜鸟教程_scrapy学习笔记(一)快速入门

    安装Scrapy Scrapy是一个高级的Python爬虫框架,它不仅包含了爬虫的特性,还可以方便的将爬虫数据保存到csv.json等文件中. 首先我们安装Scrapy. pip install sc ...

  10. OpenStack快速入门

    OpenStack云计算快速入门(1) 该教程基于Ubuntu12.04版,它将帮助读者建立起一份OpenStack最小化安装.我是五岳之巅,翻译中多采用意译法,所以个别词与原版有出入,请大家谅解.我 ...

最新文章

  1. bind日志配置详解
  2. Google 已正式结束对 Eclipse Android 的支持
  3. PPT资料下载 - 问题驱动的软件测试设计:强化测试用例设计
  4. python excel导入oracle数据库_【Python代替Excel】12:Python操作oracle数据库
  5. puppet(2)-资源介绍
  6. Sentinel 哨兵 实现redis高可用
  7. 敏捷开发总结(2)开发过程活动
  8. 海外直播公会Tik Tok,蓝海项目官方火热招募中
  9. Excel小技巧分享-自动缩放的表格来了
  10. 元转万元单位换算_excel数值单位转换-----元与万元、千元、百元的转换
  11. 如何从论文中挖掘和研究思路的办法
  12. 中文论文检索证明怎么开_SCI论文检索后收录证明怎么开?
  13. 凌恩客户文献|《ISME》解析土壤侵蚀对微生物群落结构以及网络功能复杂性影响
  14. referenced before assignment
  15. 3月18日短线黑马牛股公开验证
  16. AK7739手册解读
  17. JAVA 好用的文件备份代码
  18. 4G时代会带给我们什么新体验?
  19. 计算机应用评估和调整,随时评估并进行相应的调整.doc
  20. mysql yog32位下载_Sqlyog32位下载

热门文章

  1. [软件笔试] 2014暴风影音校招技术笔试题(长春站)
  2. i18n国际语言代码对照表
  3. 淘宝首页性能优化实践
  4. Mac系统怎样设置开机启动项
  5. Spring项目启动时Error creating bean with name ‘xxxxxx‘: Bean with name ‘xxxxxx‘ has been injected into ot
  6. echarts设置主标题和副标题样式
  7. 微信群二维码活码生成管理系统源码
  8. ArduinoUNO实战-第十三章-步进电机驱动实验
  9. JS 微信公众号如何跳转到另一个微信公众号的链接
  10. c语言求圆锥的表面积和体积_c语言问题,输入圆锥的半径和高,得出表面积和体积。请问程序该如何改....