- 博客(81)
- 收藏
- 关注
原创 交通网络分析性能再升级,SuperMap iServer新增开启SSC分析模型
SuperMap iServer开启SSC后的最佳路径分析,相比常规最佳路径分析性能提升20倍以上。
2023-08-24 16:35:03
23540
原创 SuperMap iServer新增支持FlatGeobuf数据格式,查询渲染性能提升2-3倍
FlatGeobuf是一种用于存储地理要素的坐标、类型的二进制编码格式,能够存储简单要素规范下的要素数据(如点、线、面等)。FlatGeobuf 格式与传统的 Shapefile、GeoJSON 等文件格式类似,均支持地理空间矢量数据的存储,但 FlatGeobuf 格式具有更高的存储效率和更快的读写速度,适用于大量静态数据的编码与传输。使用 FlatGeobuf 格式存储和传输数据,可以加快网络传输速度,缩短矢量要素的渲染时间,从而优化用户的使用体验。
2023-07-19 13:51:32
24076
原创 Kubernetes DaemonSet 控制器(二十二)
通过该控制器的名称我们可以看出它的用法:Daemon,就是用来部署守护进程的,DaemonSet用于在每个 Kubernetes 节点中将守护进程的副本作为后台进程运行,说白了就是在每个节点部署一个 Pod副本,当节点加入到 Kubernetes 集群中,Pod 会被调度到该节点上运行,当节点从集群只能够被移除后,该节点上的这个 Pod 也会被移除,当然,如果我们删除 DaemonSet,所有和...
2022-12-27 11:57:00
704
原创 Kubernetes StatefulSet 控制器(二十一)
前面我们学习了 Deployment 和 ReplicaSet 两种资源对象得使用,在实际使用的过程中,Deployment 并不能编排所有类型的应用,对无状态服务编排是非常容易的,但是对于有状态服务就无能为力了。我们需要先明白一个概念:什么是有状态服务,什么是无状态服务。无状态服务(Stateless Service):该服务运行的实例不会在本地存储需要持久化的数据,并且多个实例对于同一个...
2022-12-27 11:55:00
629
原创 Kubernetes Deployment控制器(二十)
前面我们学习了 ReplicaSet 控制器,了解到该控制器是用来维护集群中运行的 Pod 数量的,但是往往在实际操作的时候,我们反而不会去直接使用 RS,而是会使用更上层的控制器,比如我们今天要学习的主角 Deployment,Deployment 一个非常重要的功能就是实现了 Pod 的滚动更新,比如我们应用更新了,我们只需要更新我们的容器镜像,然后修改 Deployment 里面的 Pod...
2022-12-27 11:49:00
342
原创 Kubernetes ReplicaSet 控制器(十九)
前面我们一起学习了 Pod 的原理和一些基本使用,但是在实际使用的时候并不会直接使用 Pod,而是会使用各种控制器来满足我们的需求,Kubernetes 中运行了一系列控制器来确保集群的当前状态与期望状态保持一致,它们就是 Kubernetes 的大脑。例如,ReplicaSet 控制器负责维护集群中运行的 Pod 数量;Node 控制器负责监控节点的状态,并在节点出现故障时及时做出响应。总而言...
2022-12-27 11:43:00
143
原创 Kubernetes Pod(Pod Hook?Pod 健康检查?Pod 资源配置?)(十八)
一、Pod Hook我们知道 Pod 是 Kubernetes 集群中的最小单元,而 Pod 是由容器组成的,所以在讨论 Pod 的生命周期的时候我们可以先来讨论下容器的生命周期。实际上 Kubernetes 为我们的容器提供了生命周期的钩子,就是我们说的Pod Hook,Pod Hook 是由 kubelet 发起的,当容器中的进程启动前或者容器中的进程终止之前运行,这是包含在容器的生命周期...
2022-12-27 11:38:00
208
原创 Kubernetes Pod生命周期(十七)
前面我们已经了解了 Pod 的设计原理,接下来我们来了解下 Pod 的生命周期。下图展示了一个 Pod 的完整生命周期过程,其中包含 Init Container、Pod Hook、健康检查 三个主要部分,接下来我们就来分别介绍影响 Pod 生命周期的部分:首先在介绍 Pod 的生命周期之前,我们先了解下 Pod 的状态,因为 Pod 状态可以反应出当前我们的 Pod 的具体状态信息,也是我...
2022-12-27 11:31:00
224
原创 Kubernetes Pod原理(十六)
一、Pod Kubernetes 最基本的调度单元前面我们了解了 Kubernetes 的基本架构,以及如何使用资源清单在集群中部署一个应用。我们也了解到了 Pod 是 Kubernetes 集群中最基本的调度单元,我们平时在集群中部署的应用都是以 Pod 为单位的,而并不是我们熟知的容器,这样设计的目的是什么呢?为何不直接使用容器呢?二、为什么需要 Pod假设 Kubernetes 中调...
2022-12-27 11:27:00
126
原创 YAML编写应用的资源清单文件(十五)
上面我们在 Kubernetes 中部署了我们的第一个容器化应用,我们了解到要部署应用最重要的就是编写应用的资源清单文件。那么如何编写资源清单文件呢?日常使用的时候我们都是使用 YAML 文件来编写,但是现状却是大部分同学对 JSON 更加熟悉,对 YAML 文件的格式不是很熟悉,所以也导致很多同学在编写资源清单的时候似懂非懂的感觉,所以在了解如何编写资源清单之前我们非常有必要来了解下 YAML...
2022-12-27 11:21:00
186
原创 YAML 文件基本语法格式(十四)
一、YAML 文件基本语法格式前面我们得 Kubernetes 集群已经搭建成功了,现在我们就可以在集群里面来跑我们的应用了。要在集群里面运行我们自己的应用,首先我们需要知道几个概念。第一个当然就是应用的镜像,因为我们在集群中运行的是容器,所以首先需要将我们的应用打包成镜像,前面的课程中我们已经学习过如何将应用打包成镜像,这里就不再赘述了。镜像准备好了,Kubernetes 集群也准备好了...
2022-12-27 11:15:00
593
原创 Kubernetes集群安装(十三)
为了根据最新的集群特性,我们这里安装目前最新的版本 v1.19.3,如果你是在生产环境使用,建议使用上一个版本中最大的修正版本,比如 v1.15.5,由于 v1.16 版本之后和之前的版本有很大变化,主要体现在 APIVersion 移除了之前的一些版本,所以我们这里采用最新的 v1.19.3 的版本。由于我们这里主要目的也是学习 Kubernetes 的一些知识点,所以采用的是 Kubeadm...
2022-12-27 11:01:00
93
原创 Kubernetes基础(Pod?Label?Namespace?Deployment?Service?)(十二)
上面我们都是在架构层面了解 Kubernetes,但是似乎没有发现关于容器的说明,Kubernetes 作为容器编排引擎,那么他是怎么去对容器进行编排的呢?在 Kubernetes 集群中抽象了很多集群内部的资源对象,我们可以通过这些资源对象去操作容器的编排工作。一、PodPod 是一组紧密关联的容器集合,它们共享 PID、IPC、Network 和 UTS namespace,是Kuber...
2022-12-27 10:58:00
148
原创 Kubernetes基础(kube-apiserver?kube-controller-manager?kube-scheduler?kubelet?kube-proxy?kubectl?)(十一)...
一、kube-apiserverAPI Server 提供了资源对象的唯一操作入口,其它所有组件都必须通过它提供的 API 来操作资源数据。只有 API Server 会与 etcd 进行通信,其它模块都必须通过 API Server 访问集群状态。API Server 作为 Kubernetes 系统的入口,封装了核心对象的增删改查操作。API Server 以 RESTFul 接口方式提供...
2022-12-27 10:50:00
271
原创 Kubernetes基础(基本概念、架构)(十)
一、介绍Kubernetes(简称 K8S) 的出现是容器化技术发展的必然结果,容器化是应用程序级别的虚拟化,运行单个内核上有多个独立的用户空间实例,这些实例就是容器;容器提供了将应用程序的代码、运行时、系统工具、系统库和配置打包到一个实例中的标准方法,而且容器是共享一个内核的;由于容器技术的兴起,导致大量的容器应用出现,所以就出现了一些用来支持应用程序容器化部署和组织的容器编排技术,一些流行...
2022-12-27 10:44:00
117
原创 Dockerfile相关(推送镜像?私有仓库?)(九)
上面我们讲到了 Dockerfile 的基本写法以及构建镜像的时候一些注意事项,那么镜像构建完成后,如何把我们的镜像给到别人使用呢?第一种方法就是利用 Docker 官方提供的公共的 Docker Hub 仓库,我们可以将镜像推送上去,然后别人就可以直接拉取镜像。一、推送到官方镜像仓库1.1 注册首先需要 https://cloud.docker.com 免费注册一个 Docker 账...
2022-12-27 10:39:00
176
原创 Dockerfile构建镜像(八)
一、构建镜像现在让我们再回到之前定制的 nginx 镜像的 Dockerfile 来。现在我们明白了这个 Dockerfile 的内容,那么让我们来构建这个镜像吧。在 Dockerfile 文件所在目录执行:$ docker build -t nginx:v1 .Sending build context to Docker daemon 2.048 kBStep 1 : FROM ng...
2022-12-27 10:35:00
122
原创 Dockerfile定制镜像(FROM?RUN ?WORKDIR ?ADD & COPY指令)(七)
一、Dockerfile镜像的定制实际上就是定制镜像的每一层所添加的配置、文件等信息,实际上当我们在一个容器中添加或者修改了一些文件后,我们可以通过docker commit命令来生成一个新的镜像,但是这个方法不够直观,没办法追溯我们镜像里面到底有哪些内容,所以实际定制镜像的过程我们很少采用这种方式。而是使用一个名为 Dockerfile 的文本文件来进行镜像定制,我们可以把镜像的每一层修改、...
2022-12-27 10:31:00
368
原创 Docker数据共享与持久化(六)
接下来介绍如何在 Docker 内部以及容器之间管理数据,在容器中管理数据主要有两种方式:数据卷(Data Volumes)挂载主机目录 (Bind mounts)一、数据卷数据卷是一个可供一个或多个容器使用的特殊目录,它绕过 UFS,可以提供很多有用的特性:数据卷可以在容器之间共享和重用对数据卷的修改会立马生效对数据卷的更新,不会影响镜像数据卷默认会一直存在,即使容器...
2022-12-27 10:20:00
97
原创 Docker基本操作(端口?网络模式?)(五)
一、端口暴露Docker 容器更多情况下是用来运行 Web 应用的,所以要如何访问到容器中的 Web 服务呢?比如我们现在运行一个 nginx 容器服务:$ docker run --name webserver -d nginxUnable to find image 'nginx:latest' locallylatest: Pulling from library/nginx8d...
2022-12-27 10:16:00
240
原创 Docker基本操作(镜像操作?容器操作?)(四)
Docker 的基本原理我们已经了解了,也已经安装上了,接下来我们就一起来学习下 Docker 的常用操作,实际上主要就是 Docker CLI 的一些常用命令使用。一、镜像操作之前我们提到过 Docker 官方提供了一个公共的镜像仓库:Docker Hub,我们就可以从这上面获取镜像,获取镜像的命令:docker pull,格式为:$ docker pull [选项] [Docker...
2022-12-27 10:09:00
105
原创 Docker安装(安装Docker-CE)(三)
现版本安装Docker已经非常简单了,有很多种方式,而自17年开始,Docker分为Docker-CE(社区版)、Docker-EE(企业版),另外Docker-IO是较早的版本,通常用的都是Docker-CE版;目前CentOS内核对Docker支持情况:CentOS7必须是64位、系统内核版本为 3.10 以上。CentOS6.5或更高的版本的CentOS6上,要求系统为64位、...
2022-12-27 09:41:00
1269
原创 支持Docker的底层技术(Namespaces?CGroups?UnionFS?Docker 架构?)(二)
上一篇介绍了Docker基本概念,这一篇介绍下支持Docker的底层技术Docker 本质就是宿主机的一个特殊进程,Docker 是通过 namespace 实现资源隔离,通过cgroup 实现资源限制,通过写时复制技术(copy-on-write)实现了高效的文件操作(类似虚拟机的磁盘比如分配 500g 并不是实际占用物理磁盘 500g)一、Namespaces命名空间 (names...
2022-12-27 09:29:00
160
1
原创 Docker基本概念(LXC?镜像、容器、仓库是什么?容器和虚拟机又是什么?)(一)...
学习Docker前,我们有必要了解下Docker的前生LXC(Linux Container)。一、LXC介绍LXC 可以提供轻量级的虚拟化,用来隔离进程和资源,和我们传统观念中的全虚拟化完全不一样,非常轻量级。LXC 可以将单个操作系统管理的资源划分到独立的组中,和传统的虚拟化技术相比,LXC 有如下一些优势:和宿主机使用同一个内核,所以性能损耗小不需要指令级模拟不需要即时编译容器...
2022-12-27 09:14:00
683
原创 普元中间件Primeton AppServer6.5部署SuperMap iServer
本文使用Windows环境普元中间件Primeton AppServer6.5(以下简称PAS)部署SuperMap iServer。
2022-11-29 11:58:54
917
原创 普元中间件Primeton AppServer6.5安装(Windows)
本文在Windows环境下安装普元中间件Primeton AppServer6.5(以下简称PAS)
2022-11-29 11:34:21
1126
原创 K8S命名空间处于Terminating状态,如何强制删除
一、现象当删除命名空间后,发现该空间一直处于Terminating状态[root@imanager-beta-arm-21756-5g5ap ~]# kubectl get nsNAME STATUS AGEdefault Active 48mkube-public Active 48mkube-system Active 48msupermap Terminating 37m二、强
2022-03-23 09:40:45
1768
1
原创 SuperMap iManager for K8S 删除旧环境修改NFS地址流程
一、完整删除SuperMap iManager找到SuperMap iManager安装目录,执行:./shutdown.sh -v二、修改NFS存储路径有两种办法,一种是直接修改/etc/exports,然后重启rpcbind,重启nfs server等等,但是流程较多,用户就问有没有最简单最暴力的方法。另一种可以借助超图提供的NFS离线包来进行此次使用第二种,借助离线包来进行2.1 查询原来地址showmount -e2.2 找到nfs包目录,例如:/opt/superma
2022-03-18 10:57:04
309
原创 信创环境经典版SuerMap iManager ARM版部署流程
一、环境操作系统:银河麒麟kylin V10CPU:鲲鹏920SuperMap iManager 10.2.1硬件:4H32G机器磁盘分区格式建议如下(请严格按照如下,减少后期有用/目录资源不够,导致Docker调度失败,还需要重新更换Docker相关配置):二、部署流程2.1 安装Docker可以直接使用我已经做好的离线镜像offline_docker_1809_for_kylin10_aarch64.tar.gz链接:https://pan.baidu.com/s/1LwxH
2022-03-18 10:35:38
1422
原创 信创环境经典版SuerMap iManager启动崩溃
一、问题环境操作系统:银河麒麟kylin V10CPU:鲲鹏920SuperMap iManager 10.2.1硬件:16H64G机器二、现象磁盘和内存都有空闲,首次启动SuperMap iManager就崩溃查看iManager日志,发现free space不够导致OOM三、排错思路3.1 先看崩溃日志究竟有什么内容进入SuperMap iManager容器内部,查看JVM崩溃日志,发现free space不够导致OOM3.2 临时修改JVM值,将默认 -Xmx1536
2022-03-18 09:54:40
228
原创 信创环境经典版SuperMap iManager监控外部SuperMap iServer资源失败,无法监控目标GIS服务器CPU与内存使用情况
一、问题环境操作系统:银河麒麟kylin V10CPU:鲲鹏920SuperMap iServer 10.2.0SuperMap iManager 10.2.1二、现象部署完经典版SuperMap iManager 10.2.1,添加外部GIS服务器(SuperMap iServer)后,安装监控脚本后无法查看所监控GIS服务器的CPU和内存。三、排错&解决步骤3.1 访问经典版SuperMap iManager Zabbix UI(88端口),用户名、密码:Admin/zHlm
2022-03-18 09:13:13
271
原创 Vue 3 + Vite + SuerMap iClient构建报错Uncaught TypeError utils.inherits is not a function
一、现象Uncaught TypeError: utils.inherits is not a function二、问题产生原因Elasticsearch本身就需要这些东西,以前没有问题是因为Webpack4本身就加了node模块的polyfill,而Webpack5和Vite默认是没有这个polyfill的,所以需要自己配置。三、解决办法增加2个地方:1.package.json>devDependencies里增加 "events": "^3.3.0", "util": "^0.
2022-03-17 17:36:14
4670
1
原创 东方通TongWeb7部署SuperMap iServer War包
一、软件版本操作系统: CentOS 7.5.1804JDK:1.8_201东方通:TongWeb7.0.4.2SuperMap iServer:10.2二、东方通TongWeb7部署流程参考《Linux部署东方通TongWeb7》三、SuperMap iServer War包部署3.1 解压SuperMap iServer War包将supermap-iserver-10.2.0-war.zip放到/opt目录下进行解压unzip supermap-iserver-10.2.0-w
2021-10-22 09:29:00
1343
原创 Linux部署东方通TongWeb7
一、软件版本操作系统: CentOS 7.5.1804JDK:1.8_201东方通:TongWeb7.0.4.2二、部署流程2.1 安装JDK2.1.1 下载JDK并发明回到/opt下解压,并将目录重命名为jdktar -zxf jdk-8u201-linux-x64.tar.gzmv jdk-8u201-linux-x64 jdk2.1.2 将JDK环境变量配置环境变量中编辑/etc/profilevi /etc/profile增加:export JAVA_HOME=/o
2021-10-22 09:25:34
10731
3
原创 SuperMap iServer&iPortal&iEdge结合CAS 5.3服务器实现单点登录
一、本例环境说明JDK 1.8CAS 5.3apache-maven-3.6.0mysql-5.6.32SuperMap iServer 10.1.3SuperMap iPortal 10.1.3二、CAS 5.3基础环境搭建与验证需要参考《CAS 5.3服务器搭建》搭建好环境,并使用系统默认用户名密码验证通过。三、CAS 5.3结合MySQL配置需要参考《CAS 5.3使用MySQL数据库登录》,并使用MySQL数据库中自定义用户名与密码验证通过。四、CAS 5.3 配置Supe
2021-08-20 14:21:02
625
1
原创 CAS 5.3使用MySQL数据库登录
一、本例环境说明JDK 1.8CAS 5.3apache-maven-3.6.0mysql-5.6.32二、CAS 5.3基础环境搭建与验证需要按照《CAS 5.3服务器搭建》搭建好环境,并使用系统默认用户名密码验证通过。三、MySQL相关准备3.1 创建MySQL数据库(创建过程略)3.2 新建user表,并增加2条记录SET NAMES utf8mb4;SET FOREIGN_KEY_CHECKS = 0;-- -----------------------------
2021-08-20 14:01:17
877
原创 CAS 5.3服务器搭建
一、本例环境说明JDK 1.8CAS 5.3apache-maven-3.6.0二、CAS安装步骤2.1 提前安装好JDK和Maven环境安装步骤略2.2 CAS环境搭建2.2.1 CAS 5.3软件获取1)从GitHub上获取https://github.com/apereo/cas-overlay-template2)选择5系列最后一个版本5.3,如下图所示3)点击Code->Download ZIP 进行下载2.2.2 下载完成后解压ZIP文件,文件内容如下:
2021-08-20 13:42:55
1876
原创 Kubernetes集群证书过期解决办法
问题现象K8S集群证书过期后,会导无法创建Pod,通过kubectl get nodes也无法获取信息,甚至dashboard也无法访问。一、确认K8S证书过期时间查看k8s某一证书过期时间:openssl x509 -in /etc/kubernetes/pki/apiserver.crt -noout -text | grep Not显示如下,通过下面可看到证书有效期是1年,从2021到2022年:其它证书同理,K8s各个证书过期时间如下:/etc/kubernetes/pki/api
2021-08-18 11:34:38
4018
1
原创 SuperMap iManager云套件数据动态更新刷新地图与数据服务
一、使用背景有这么一个需求,后端也就通过SuperMap iDesktop或数据库更新了新增或更新某个数据地理信息后,云套件SuperMap iManager中的服务没有更新,无法实时查看到更新的数据,原因是SuperMap iManager没有主动监测第三方修改数据的变化,今天介绍两种刷新数据的方法,让SuperMap iManager也能获取到。二、云原生环境2.1 云套件版本10.1.2版本及其以上版本2.2 云原生环境中两种数据刷新方法方法一、云套件-页面服务实例点击刷新按钮即可
2021-08-17 13:35:11
491
原创 SuperMap iServer数据动态更新刷新地图与数据服务
一、使用背景一般会有这么一个需求,后端也就通过SuperMap iDesktop或数据库更新了新增或更新某个数据地理信息后,服务端也就是SuperMap iServer无法实时查看到更新的数据,原因是SuperMap iServer没有主动监测第三方修改数据的变化(使用SuperMap iServer接口增删改无该问题)解决方式要么通过重启SuperMap iServer解决,要么通过删除服务重新发布解决,但是这两种版本都比较麻烦,SuperMap iServer 10.1.3版本中可以通过调用Supe
2021-08-17 10:52:29
1632
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人