BLCL的博客小馆

📢📢📢 阿里云双十一,2核2G3M的服务器,99元一年,新老用户续费同享!!

首页

关于

归档

loading..
数据中心云原生技术Kubernetes容器编排集群管理

谈谈 Kubernetes 的问题和局限性

2014 年发布的 Kubernetes 在今天俨然已成为容器编排领域的事实标准,相信谈到 Kubernetes 的开发者都会一再复述上述现象。如下图所示,今天的大多数个人或者团队都会选择 Kubernetes 管理容器,而也有 75% 的人会在生产环境中使用 Kubernetes。图 1 - Kubernetes 容器编排1在这种全民学习和使用 Kubernetes 的大背景下,我们也应该非常清晰地知道 Kubernetes 有哪些局限性。虽然 Kubernetes 能够解决容器编排领域的大多数问题,但是仍然有一些场景是它很难处理、甚至无法处理的,只有对这些潜在的风险有清晰的认识,才能更好地驾驭这项技术,这篇文章将从集群管理和应用场景两个部分谈谈 Kubernetes 社区目前的发展和一些局限性。集群管..

更多
TECHNOLOGYArduinoSTM32PlatformIO

对 PlatformIO 有点失望

PlatformIO 目前只是玩具,单片机开发还得用 Keil好久不碰单片机,现在想搞个项目,选型 STM32xxxxxx,想找一套“现代化”的 IDE,于是找到了 PlatformIO。刚开始很新奇很激动,VSCode 开发环境很友好,各种单片机型号、库很丰富,而且 STM32 可以直接用 Arduino 开发,各种一键式部署。最主要的是商用免费,差点就选用了。但是问题很快就出现了,Arduino 框架对于底层的封装太完美,我甚至不能方便地修改 SPI 或者 I2C 的引脚,而且 GPIO 读写速度也相较使用 CMSIS 慢很多,STM32duino 虽然仍然在发展,但是,我认为还处在“玩具”的阶段。如果抛弃 Arduino 框架,去使用 CMSIS ,那也太不方便了,而且 STM32 标准库在 Pla..

更多
loading..
树莓派

使用树莓派制作手机遥控小车

先看小车上路效果: 上路效果 其实买树莓派的契机,就是想自己动手做个遥控车,小时候没有条件去做,现在圆一下当初的梦想。男人的快乐,如此简单。 废话不多说,直接进入正题。 准备 一颗爱手工的心 已经配置好的树莓派一只,之前我写过入门树莓派的文章 工具材料以及大概价格: 热融胶枪+热融胶,¥30 雪糕棍(宽18mm),¥10 四种杜邦线(长30cm),¥5 四只tt马达,带橡胶轮胎,¥12 MG995舵机,¥12 一次性筷子,¥0 5V2A充电宝,用于给树莓派单独供电,¥自备 12V可充电电池,¥自行购买 双路L298N电路板,¥5 4个小轴承,按照一次性筷子的尺寸买..

更多
大数据分布式系统数据库

HBase集群的搭建和使用

HBase是一个分布式的列族数据库,我们可以简单的将其看成一个kv数据库,每个[列 + rowkey + 时间戳]对应了一个单元格。下载HBase的压缩包并解压我们有三台机器,预计它们的角色将会如下Node NameMasterRegionServer172.19.65.196yesno172.19.72.108backupyes172.19.72.112noyes在官网下载HBase的压缩包并分发到三台机器上,然后解压压缩包。设置免密登录学习我们在HDFS的安装和使用中了解到的SSH免密登录的方法,设置196和108两台机器要能够免密访问所有的机器。搭建HDFS和ZooKeeper服务根据文章HDFS的安装和使用和ZooKeeper的简单介绍中所介绍的内容,搭建HDFS和ZooKeeper服务。修改配置..

更多
大数据分布式系统

ZooKeeper的简单介绍

用了很久的ZooKeeper了,稍微做个总结。ZooKeeper(以下简称ZK)是一个分布式组件,基于类似Paxos的ZAB一致性算法来实现。ZK保存的数据结构类似于一般的文件系统,只不过在ZK中文件夹也可以拥有数据,整体文件结构为一棵树型。安装ZooKeeper去官网下载压缩包,随后使用rsync同步到三台机器上,我使用如下三台机器172.19.65.196172.19.72.108172.19.72.112解压压缩包,使用cp conf/zoo_sample.cfg conf/zoo.cfg得到配置文件,在三台机器的conf/zoo.cfg中添加如下配置dataDir=/home/zookeeper/apache-zookeeper-3.8.0-bin/dataserver.1=172.19.65.1..

更多
loading..
大数据分布式系统

Hadoop中YARN和MapReduce的安装和使用

在上一篇文章中我们已经搭建好了HDFS环境,现在我们在这个环境的基础上继续搭建YARN和MapReduce环境。修改三台机器的etc/hadoop/mapred-site.xml文件,添加如下配置123456<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property></configuration>修改三台机器的etc/hadoop/yarn-site.xml文件,添加如下配置1234567891011121314<configurat..

更多
loading..
WEB技术ViewportJS

JS 检查元素是否在视口内

分享两个监测元素是否在视口内的方法前言分享两个监测元素是否在视口内的方法1. 位置计算使用 Element.getBoundingClientRect() 方法返回元素相对于视口的位置123const isElementVisible = (el) => {const rect = el.getBoundingClientRect();};获取浏览器窗口的宽高12345const isElementVisible = (el) => {const rect = el.getBoundingClientRect(); const vWidth = window.innerWidth || document.documentElement.clientWidth; const vHeight ..

更多
loading..
大数据分布式系统

HDFS的安装和使用

正如在Hadoop学习笔记中所介绍的那样,我们已经安装好了Java环境并且设置好了JAVA_HOME环境变量,并且下载解压了Hadoop的压缩包。我们准备三台机器,并且预计将它们的职责设置如下机器角色172.19.65.196NameNode172.19.72.108DataNode172.19.72.112DataNode实现ssh免密访问在三台机器上面创建hadoop用户并且进入用户的根目录,在三台机器上执行命令创建ssh公私钥ssh-keygen -t rsa之后在NameNode上面执行cat ~/.ssh/id_rsa.pub获取到master节点的公钥,之后在三台机器(包括master节点自己)上面执行vi ~/.ssh/authorized_keys把获取到的master节点的公钥复制进去并..

更多
大数据分布式系统

Hadoop学习笔记

Hadoop用于提供可信赖的弹性分布式计算,hadoop使得我们可以把计算逻辑分布到海量的机器上面去以提升计算性能并且实现高可用。Hadoop分为以下四个模块模块功能通用模块用于支撑Hadoop的工具模块Hadoop Distributed File System (HDFS)分布式的文件系统YARN用于任务调度和集群资源管理的框架MapReduce基于YARN的海量数据并行处理系统HDFS模块HDFS模块用于存储数据,它的核心思想是Google的GFS,即把数据分成块(block)存储在多个机器上,同时每个块可能还会有多个备份以保证数据的高可用。HDFS运行在多个节点之上,不同的节点可能有不同的身份。节点类型节点介绍命名节点(NameNode)命名节点用于管理其它存储节点,是“管理员”节点并且只有一个,..

更多
loading..
Linux为什么这么设计操作系统文件系统macOS

为什么 Linux 和 macOS 不需要碎片整理

为什么这么设计(Why’s THE Design)是一系列关于计算机领域中程序设计决策的文章,我们在这个系列的每一篇文章中都会提出一个具体的问题并从不同的角度讨论这种设计的优缺点、对具体实现造成的影响。如果你有想要了解的问题,可以在文章下面留言。相信今天很多的软件工程师使用的都是 Linux 或者 macOS 系统,与 Windows 不同,我们很难看到磁盘碎片整理这一概念,从个人的经验来看,作者在过去七八年没有在 macOS 中整理过磁盘的碎片,你在今天的磁盘工具中也找不到相关的操作,只能通过 diskutil 命令设置某一块磁盘是否开启或者关闭碎片整理。图 1 - macOS 磁盘工具我们在 前一篇文章 中曾经分析过为什么早期 Windows 操作系统每隔一段时间可能需要整理磁盘上的碎片1,该问题背后..

更多
1666768697080