AidanSu

Quick notes


  • 首页

  • 归档

  • 标签

  • 关于

快速部署开发使用的 RocketMQ

发表于 2020-12-08 | 分类于 编程 | 阅读次数

本文使用 RocketMQ 4.5.0

本文所使用的配置文件,在GiHub项目中 https://github.com/aidansu/spring-cloud-alibaba-components-install

本文部署的是开发环境,用于开发测试,并不是高可用的生产环境!

RocketMQ 是一款具有低延迟,高性能和可靠性的分布式消息中间件,最初由阿里团队研发并大规模应用于生产系统,在2016年底捐赠给 Apache 开源基金会成为孵化项目,经过不到一年时间正式成为了Apache顶级项目;RocketMQ 和 Kafka 在概念和原理上都非常相似,所以也经常被拿来对比;官方也给出了 ActiveMQ、Kafka 和 RocketMQ 的对比:http://rocketmq.apache.org/docs/motivation/ 。

官方有提供 RocketMQ 的安装教程,地址:http://rocketmq.apache.org/docs/quick-start/ 。本文将不再重复官方的安装方式,直接给出 docker-compose 和 kubernetes 的安装方式,其中 rocketmq 的 docker 镜像采用官方提供的:apacherocketmq/rocketmq:4.5.0(这已经是官方最低版本的镜像了),rocketmq-console 的 docker 镜像官方只提供一个版本:apacherocketmq/rocketmq-console:2.0.0,很不幸,这个版本是有 Bug 的,我在使用过程中遇到了这个BUG,并发现有人已经提交了Issues,地址:https://github.com/apache/rocketmq-externals/issues/614 。于是我根据源代码构建了一个 rocketmq-console 1.0.1版本的镜像,镜像地址:aidansu/rocketmq-console:1.0.1

阅读全文 »

快速部署开发使用的 Sentinel-Dashboard

发表于 2020-12-01 | 分类于 编程 | 阅读次数

本文使用 Sentinel-Dashboard 1.7.1

本文所使用的配置文件,在GiHub项目中 https://github.com/aidansu/spring-cloud-alibaba-components-install

本文部署的是开发环境,用于开发测试,并不是高可用的生产环境!

Sentinel 控制台是流量控制、熔断降级规则统一配置和管理的入口,它为用户提供了机器自发现、簇点链路自发现、监控、规则配置等功能。在 Sentinel 控制台上,我们可以配置规则并实时查看流量控制效果。官网 Github 地址:https://github.com/alibaba/Sentinel/wiki/%E6%8E%A7%E5%88%B6%E5%8F%B0

官方提供了源代码和 jar 包的启动方式,但没有提供 docker 镜像,对于习惯使用 docker 的用户非常不友好,当然你可以使用官方的 jar 包打包成 docker 镜像。我这里已经打包并放在 docker Hub 上了,image 地址:aidansu/sentinel-dashboard:1.7.1

阅读全文 »

快速部署开发使用的 Nacos

发表于 2020-12-01 | 分类于 编程 | 阅读次数

本文使用 Nacos 1.2.1 + MySQL 5.7

本文所使用的配置文件,在GiHub项目中 https://github.com/aidansu/spring-cloud-alibaba-components-install

本文部署的是开发环境,用于开发测试,并不是高可用的生产环境!

Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。官网有提供不同环境、不同方式的部署方案,有需要的同学可以查看官网教程。官网地址:https://nacos.io/

使用 Spring Cloud Alibaba 微服务框架开发项目,必须要使用到 nacos 这款中间件,不然项目无法启动。快速部署一个可用的nacos,能快速开发项目就显得比较重要,所以下文通过两种方式来介绍快速部署nacos,其中kubernetes还提供集群的模式。

阅读全文 »

安装部署 Harbor

发表于 2020-08-18 | 分类于 编程 | 阅读次数

安装 docker-compose

如果已安装 docker-compose 可以跳过此步

1
2
3
4
5
6
7
8
$ curl -L https://github.com/docker/compose/releases/download/1.25.5/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
# 添加执行权限
$ chmod +x /usr/bin/docker-compose
# 测试是否可用
$ docker-compose --version
docker-compose version 1.25.5, build 8a1c60f6

安装并配置harbor

安装harbor

推荐离线安装,下载适合版本的离线安装包,地址:https://github.com/vmware/harbor/releases

1
2
# 下载完成后解压文件
$ tar -zxvf harbor-offline-installer-v1.10.4.tgz
阅读全文 »

kubernetes 部署 ingress-nginx

发表于 2020-08-16 | 分类于 编程 | 阅读次数

本文所使用的配置文件,在GiHub项目中 https://github.com/aidansu/kubernetes-kubeadm-install
Kubernetes 版本为 1.14

获取配置文件

这里已经整合了配置文件 位于配置文件/addons/mandatory.yaml 以下内容需要注意

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 下面的 nodeSelector 为pod定向调度配置 表明只会运行在带有 app=ingress 标签的node节点上 如果所有node节点都不带有此标签 则会一直处于pending状态
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-ingress-controller
...
template:
spec:
nodeSelector:
app: ingress
...
# 对node添加标签
$ kubectl label node <node-name> app=ingress
# 去除一个标签 结尾为减号
$ kubectl label node <node-name> app-

阅读全文 »

kubernetes 高可用集群搭建---kubeadm方式

发表于 2020-08-14 | 分类于 编程 | 阅读次数

本文所使用的配置文件,在GiHub项目中 https://github.com/aidansu/kubernetes-kubeadm-install
Kubernetes 版本为 1.14

服务器说明

我这里使用的是4台centos-7.5的虚拟机,具体信息如下表:

系统类型 IP地址 节点角色 CPU Memory Hostname
centos-7.5 192.168.0.51 master >=2 >=2G manager1
centos-7.5 192.168.0.60 harbor >=2 >=2G harbor
centos-7.5 192.168.0.61 worker >=2 >=2G worker1
centos-7.5 192.168.0.62 worker >=2 >=2G worker2

集群数量可以根据自己的实际情况而定,建议最少应有一个master和两个worker。

系统设置(所有节点)

主机名

主机名必须每个节点都不一样,并且保证所有点之间可以通过hostname互相访问。

1
2
3
4
5
6
7
8
9
10
# 查看主机名
$ hostname
# 修改主机名
$ hostnamectl set-hostname <your_hostname>
# 配置host,使所有节点之间可以通过hostname互相访问
$ vim /etc/hosts
# <node-ip> <node-hostname>

阅读全文 »

Spring Boot 模板引擎 Thymeleaf

发表于 2017-09-14 | 分类于 编程 | 阅读次数

Thymeleaf 是一款用于渲染 XML/XHTML/HTML5 内容的模板引擎。类似 JSP,Velocity,FreeMaker 等,它也可以轻易的与 Spring 等框架进行集成作为 Web 应用的模板引擎。虽然我们现在比较流行 Restfull 的风格,API可以解决很多问题,但有时候可能会用到模板页面。我之前在 Spring MVC 上用 JSP 比较多,由于 Spring Boot 官方默认使用 Thymeleaf,所以我们不妨来试一试。在上一个 spring-boot-jpa 项目已经使用到了,但没详细说明,所以非常有必要学习一下 Thymeleaf 。

引入依赖

pom.xml 加入 Thymeleaf 依赖

1
2
3
4
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

阅读全文 »

Spring Boot 连接 MySQL 数据库 JPA

发表于 2017-09-13 | 分类于 编程 | 阅读次数

Spring Boot 是一个在 Spring 的基础上搭建的全新的微框架,简化了 Spring 的搭建和开发工程。Spring Boot 也得到很多大厂的支持,国外有 Pivotal 和 Netflix ,国内有很多企业都在使用,它在搭建微服务上得到更多的支持,版本迭代很快,前途一片光明。Spring Boot 的快速搭建真的太简单了,直接参考官网文档就可以了,我博客就不写搭建并运行 Hello World 了。我们直接来连接 MySQL 数据库,并使用前面文章《Spring MVC 连接 MySQL 数据库 JPA》提到的 JPA 来连接,如果对 JPA 还是不太了解的可以前往阅读。在本例子中 Spring Boot 跟 Spring MVC 最大的不同就是配置文件,实现功能逻辑的代码基本一样,还有 JSP 不是页面首选,官方默认使用 Thymeleaf 。大家可以去对比一下这两个项目的代码,领略一下 Spring Boot 的简约美。

创建项目

使用 maven 创建 maven-archetype-quickstart 为原型的项目 spring-boot-jpa 。

阅读全文 »

Android Studio 使用 WiFi 调试 App

发表于 2017-09-07 | 分类于 编程 | 阅读次数

最近要开发一个 USB Camera 的 android 软件,发现插上 USB 摄像头以后就不能插数据线了,也就没办法直接调试了,只能用 WiFi 调试。WiFi 调试很早就有了,那时候还没有插件,用起来很麻烦,所以没去研究。现在 Android Studio 有插件,使用起来非常方便,也不会因为插拔次数过多弄坏手机。这次为大家推荐两个 wifi 调试插件,一个是 ADB WIFI,下载量大,另一个是 ADB WiFi Connect,我个人比较喜欢这个,大家使用其中的一个就可以了。

注意:手机和电脑必须在同一个局域网内

ADB WIFI

下载并安装插件

打开 Android Studio
File -> Settings -> Plugins -> Browse repositories
搜索 adb wifi,选择第一个 ADB WIFI


安装并重启 Android Studio

阅读全文 »

《人人都是产品经理》读书笔记

发表于 2017-08-18 | 分类于 阅读 | 阅读次数


阅读全文 »
12345
aidan

aidan

沉迷学习无法自拔

49 日志
4 分类
50 标签
GitHub 微博 豆瓣 知乎
© 2017 - 2021 aidan
由Hexo强力驱动 | 粤ICP备12003586号