JDK导致Geoserver的地图出现锯齿和无法正常预览字体?

近期安装了Geoserver,在测试的的时候发现在Arm架构的环境的地图有锯齿,而在x86下的能正常显示。我刚开始装的时候以为是Arm架构的锅导致的。虽然通过设置stlye来掩饰锯齿,但是也不可能没个地图都配置一下吧,让Arm背了一段时间的锅后在昨天的通宵研究中好像发现是什么原因导致的了。

继续阅读JDK导致Geoserver的地图出现锯齿和无法正常预览字体?

Centos7搭建分布式Postgresql集群(Citus MX)来处理地理数据(PostGIS)

本文的分布式Postgresql集群是通过citus扩展实现的,Citus是PostgreSQL的扩展(not a fork),采用shared nothing架构,节点之间无共享数据,由协调器节点和Work节点构成一个数据库集群。相比单机PostgreSQL,Citus可以使用更多的CPU核心,更多的内存数量,保存更多的数据。通过向集群添加节点,可以轻松的扩展数据库。
Citus支持新版本PostgreSQL的特性,并保持与现有工具的兼容 Citus使用分片和复制在多台机器上横向扩展PostgreSQL。它的查询引擎将在这些服务器上执行SQL进行并行化查询,以便在大型数据集上实现实时(不到一秒)的响应。
其实我了解到citus没几个月,当时因为程序不太支持Hive(后端的包没给对Hadoop的版本)就准备使用其他的数据库做数据仓库,几经抉择选中了Postgresql,而为了能支撑“大量”的数据就去找该数据库搭建集群的教程。
难受的是,Postgresql主从我几次折腾还是没能成功,虽然主从模式没有成功但功夫不负有心人让我找到了Citus。当时我只是基于测试的目的只在虚拟机上面搭建了一个简单的集群就搁置了,这不最近因为需要使用Postgis扩展来处理地理数据了,本来是打算使用OpenGauss搭建集群的,苦于arm架构下二进制包是openeuler系统的,暂时不得不使用Postgresql来解决问题了。

于是又只好对Citus进行一番测试了,苦于不能在实际的arm环境上面进行测试,下面的“教程”是在x86架构下进行的。。。。。。
继续阅读Centos7搭建分布式Postgresql集群(Citus MX)来处理地理数据(PostGIS)

Centos7扩容根目录

貌似默认情况下Centos7给根目录分配的容量是50GB,在生产环境中太小了可能会出现一些奇奇怪怪的问题。在k8s中虽然已经将docker的目录挂载到数据盘了但是还是有些日志导致日常使用率超过80%,导致我要经常清理后来干脆搞个定时脚本清理了。。。
以前没得选,现在能让我选择得话我想给根目录分配大一点,可是还是不能如愿只能扩容了。
继续阅读Centos7扩容根目录

重新编译etcd以解决出现ETCD_UNSUPPORTED_ARCH警告

在github中的etcd已经有arm64的打包可供下载使用了,但是在使用时会有警告,就算是按照搜索到的设置了 export ETCD_UNSUPPORTED_ARCH=arm64 环境变量但是这不过是 running etcd on unsupported architecture arm64 since ETCD_UNSUPPORTED_ARCH is set 或者 etcd on unsupported platform without ETCD_UNSUPPORTED_ARCH=arm64 set 的区别而已。
直接执行etcd虽然会出现警告但是还是能运行起来可是使用service启动却会因为这个错误而不断重启。刚开始还在为难不知道要修改哪个文件时出现的一个提示让我快速的找到了文件。

继续阅读重新编译etcd以解决出现ETCD_UNSUPPORTED_ARCH警告

Arm架构安装Kubernetes(k8s)环境(Centos7)

在前面的文章中已经水了离线安装单主控的Kubernetes,虽然是单主控,但是对于多主控集群来说也至少把第一次安装生成的证书放置到其他主控节点才初始化就完事的了。同时也用自己拙略的技术写了一个引导式安装k8s的脚本,但是这一切都是x86架构的虽说都是在Centos7系统上安装的。
最近接触了Arm架构的服务器于是就有了在arm架构上安装的经验,本来我想安装当前yum源最新新的1.21.0的。但是由于自己暂时没有解决Cgroup Driver: cgroupfs的问题和初始化的yaml文件不知道要怎么写只能使用命令行初始化而暂时装回了1.14.0的版本应急了。
本次教程安装

Docker:
Server Version: 18.09.4
Operating System: CentOS Linux 7 (AltArch)
Architecture: aarch64
kubectl:
Client Version: v1.14.0
Server Version: v1.14.0
etcd:
etcd Version: 3.2.32
Git SHA: GitNotFound
Go Version: go1.13
Go OS/Arch: linux/arm64
继续阅读Arm架构安装Kubernetes(k8s)环境(Centos7)