码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Dapr学习(2)之Rancher2.63(k8s&k3s)环境安装Dapr


    前言:前面写过一篇关于dapr入门安装的文章,self-host模式,使用docker安装的本地调试环境,并进行了测试;本篇介绍k8s方式安装dapr,此文主要基于的环境是k3s,通过rancher2.6.3版管理工具进行快捷安装,并进行相关demo测试

    1.k8s安装dapr介绍

    参考官网:https://docs.dapr.io/zh-hans/operations/hosting/kubernetes/kubernetes-deploy/

    官网推荐使用helm方式安装&高可用安装;这里不在赘述

    image

    2.Rancher2.6.3安装Dapr

    • Rancher 添加商店helm源:添加 Dapr 源;https://dapr.github.io/helm-charts/ 最新的安装源,添加到商店

      image

    • 进入应用商店,搜索dapr

      image

    • 安装最新版本,1.7.2版

      image

    • 由于我们安装了1.6.1版本,我们选择升级版本

      image

    • 安装成功后,我们可以在Rancher管理界面看到几个dapr组件

      image

    3.配置 状态存储 和 发布/订阅 消息代理,查看官网:https://docs.dapr.io/zh-hans/reference/components-reference/supported-state-stores/ 可以看到状态存储等支持的数据库类型;

    • 我们这里使用官网推荐的redis作为状态存储

      image

    • 使用Rancher创建一个单实例的redis容器;Dapr使用redis存储,要求redis版本>5;镜像:index.docker.io/library/redis:6.2.6

      image

      image
      设置密码命令:redis-server --requirepass 123456
      环境变量也可以设置成空密码访问:ALLOW_EMPTY_PASSWORD=yes

    4.Dapr快速入门demo之hello-kubernetes

    • 去github官网下载demo-1.7版本代码:https://github.com/dapr/quickstarts/tree/release-1.7/tutorials/hello-kubernetes

      image
    • 创建一个daprdemo的命名空间,部署nodejs服务
        命令:sudo kubectl apply -f node.yaml -n daprdemo
        查看部署状态:sudo kubectl rollout status deploy/nodeapp -n daprdemo
      
      image
    • 修改node.yaml文件,因为80端口已被占用,会导致部署问题,把80端口改为3000端口,与nodeapp释放端口一致

      image
    • nodeapp服务部署完毕后,可以通过rancher查看或者编辑对外访问端口,然后可通过k8s任一节点ip+端口访问nodeapp服务

      image
    • 我们也可以通过命令指定对外访问的端口,这样我就可以通过30018端口访问nodeapp:

        kubectl port-forward service/nodeapp 30018:3000
      
    • 我们通过浏览器,可以访问nodeapp服务,返回dapr的端口信息

      image
    • 我们在daprdemo的命名空间下,创建一个state组件,供nodeapp服务使用;要保证state组件与nodeapp服务同属于同一命名空间下,否则nodeapp服务是无法访问到state组件的

      image
    • 输入命令,构建state组件

        sudo kubectl apply -f redis-state.yaml -n daprdemo
      
      image
    • 使用apifox工具,请求nodeapp服务,新建一个订单

      image
    • 获取订单

      image

    5.Rancher2.6.3 Dapr dashboard访问

    • 找到Dapr dashbord服务信息

      image

    • 点击进入dashbord界面

      image

    6.部署python服务app

    • 输入命令部署app,并查看部署状态

        kubectl apply -f python.yaml -n daprdemo
        kubectl rollout status deploy/pythonapp -n daprdemo
      

      image

    • 查看nodeapp的日志

        kubectl logs --selector=app=node -c node --tail=-1 -n daprdemo
      

      image

    • 获取订单号

      image

    7.清理所有应用(进入到yaml文件所在目录)

    kubectl delete -f . -n daprdemo
    

    8.Rancher查看Dapr组件信息

    • 在Rancher管理界面的“更多资源”节点下,dapr.io节点下查看

      image

    9.组件的作用域参考官网:https://www.bookstack.cn/read/dapr-1.6.0-zh/38630b93719234c7.md

  • 相关阅读:
    【2023最新美团笔试题目分析】“求最多出现数字及次数“、坦克大战在线对战游戏(问题描述 + 示例代码 + 时间复杂度分析)
    Linux内核TCP参数优化
    OpenKylin适配和虚拟打印机
    手撕红黑树的插入(C++)
    DASCTF X CBCTF 2022九月挑战赛 dino3d
    C++ Reference: Standard C++ Library reference: C Library: cwchar: wctob
    记录一次典型oom的处理过程
    OceanBase 如何通过日志观测冻结转储流程?
    信息学奥赛一本通 2074:【21CSPJ普及组】分糖果(candy) | 洛谷 P7909 [CSP-J 2021] 分糖果
    不能一棍子敲死刚诞生不久的USB-C,虽然它有时确实很惹人厌
  • 原文地址:https://www.cnblogs.com/kunwn/p/16271944.html
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号