记录关于Devops运维,虚拟化容器云计算,数据库,网络安全等各方面问题,
kubesphere3.2中jenkins的部署应用到k8s功能问题1,kubesphere3中自带的jenkins中kubernetesDeploy 插件的坑,真是让人脑火。 2,不知道是不是因为之前删除过jenkins,又重新安装的原因,整个流水线到部署k8s环境上时,一真有毛病。不是报 应用部署的YAML文件有问题,就是报一堆其它错误。3,一个应用部署的 Service 与Deployment ,都是先用UI界面,部署完后,导出来的YAML,再删除一个不需要的配置项目,尽然,再用UI 工具 从 YAML部署应用时,尽然报一堆错误,真是无语。搞的本人对K8S的YAML配置项都有怀疑了,虽然YAML文件还是挺bianTai的。4,终于把YAML文件搞好,测试UI,还是Kubectl命令部署都没问题了。结果 jenkins的插件又被坑了两天。整个流水线,一会提示,运行成功,可到UI上面一看,什么服务都没有部署。把YAML文件放到UI中执行,也提示成功,结果P的服务都没有。5,根据官方资料,提示如下:也就是说,这个插件没用了。以后直接使用kubect命令部署。为 DevOps CD 功能提供限制语句。背景从 v3.0.0 开始,在 DevOps 组件中,Jenkins 插件kubernets-cd 的版本是2.3.1。如果您尝试查看它的提交历史记录,您会发现它已停止维护。上一次发...
kubesphere3.2中jenkins的nodejs模板pod升级到nodejs161,kubesphere3.2中的jenkins流水线使用的pod最高版本还是nodejs8,实在是太旧了。2,经过折腾,可以将nodejs删除后,再安装新版本的nodejs。kubesphere的jenkins流水线在工作过程中, 会自动创建两个pod,其中一个是jnlp-slave,一个模板pod,用来运行流水线指令,所以只需要在模板pod中安装或是升级nodejs就可以了。3,具体流水线方法如下:pipeline { agent { node { label 'nodejs' } } stages { stage('pull-code') { agent { node { label 'nodejs' } } steps { container('nodejs') { sh 'yum -y remove nodejs' sh 'curl -sL https://rpm.nodesource.com/setup_16.x | bash' sh 'yum -y install nodejs-16.1.0 ...
nodejs 源码spec打包rpm并使用RPM包安装node.js RPM spec, Blanch, Status, RPM, :----------, :----------:, :----------:, master (v9, Current), , , v8.x (v8, LTS), , , v6.x (v6, LTS), , , v4.x (v4, LTS), , , - node.js rpm spec : https://github.com/kazuhisya/nodejs-rpm ¶node.js source : https://nodejs.org/dist/Compiled Package ¶You can find prebuilt rpm binary from here(el7 and fc24 or higher)Stable Release: FedoraCopr khara/nodejs CoprLTS Release: FedoraCopr khara/nodejs-lts Coprel7:$ sudo curl -sL -o /etc/yum.repos.d/khara-nodejs.repo https://copr.fedoraproject.org/coprs/khara/nodejs/repo/epel-7/khara-nodejs-epel-7.repo
$ sudo yum install -y nodejs nodejs-npm
fc24 or higher:$ sudo dnf copr enable khara/nodejs
$ sudo dnf install -y nodejs nodejs-npm
Building the RPM ¶Distro support ¶Tested ¶RHEL/CentOS 7 x86_64Fedora 25 x86_64 or higherProbably it works ...
kubesphere整合jenkins升级方法一,kubesphere3.2中的devops组件无法工作。 1,kubeshpere整合了jenkins,只是版本相对低此,这前可能我这里升级了jenkins中的组件,导致jenkins容器启动不了。 2,查看相关容器日志信息,报错如下:二,处理步骤。 1),第一种方法,找到devops-jenkins容器所挂载目录中,将报错的插件删除掉,然后重建容器。 2),第二种方法,直接升级jenkins的war包到新版,下面是第二种方法。 1,遇到这种坑,查看了devops-jenkins相关的pvc与pv信息, 2,由于kubesphere使用的kk工具安装的,因此使用是本地存储,工具软件为openebs,可以看到相关的pv挂载目录。 3,但是查看本机的存储目录与部署的YAML文件信息,Jenkins的war包目录位于/usr/share/jenkins/jenkins.war,此目录容器未挂载, 但是这个文件的子目录/usr/share/jenkins/ref/secrets却是挂载到pv了。因此如果把/usr/shar/jenkins目录挂载后,那么就是个空目录, 别的挂载就没法使用了。挂载Jenkins war目录升级的方法就不行了(当然要挂载的话,kubesphere只能使用子目录挂载的方法)。 4,经过查看 kubesphere/ks-jenkins:v3.2.0-2.249.1 镜像信息,找到了容器启动 jenkins的脚本文件存...
kubesphere的base容器安装nodejs方法1,kubesphere自带的nodejs模板容器,太旧了,想升级下,还是比较麻烦的。2,自己在流水线中将base容器中安装node-16版本,这样就比较新了,这种方法安装国内下载rpm包速度慢, 可以在k8s中安装一个nginx服务,将nodejs的rpm包挂载到nginx服务中,这样内部访问速度就快了。3,Jenkinsfile内容如下:pipeline { agent any stages { stage('checkout') { agent none steps { container('base') { git(url: 'https://gitee.com/micoder/simple-node-js-react-npm-app.git', branch: 'master', changelog: true, poll: false) } } } stage('build') { agent none steps { container('base') { sh 'curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo' ...
Centos7/RHEL7使用yum命令安装NodeJS/npm方法想要在CentOS7上安装NodeJS,在官网下载压缩包来安装,结果提示包错误,于是,决定直接使用yum命令来安装了。使用yum命令安装NodeJS,简单方便,只需要在终端依次执行下面的代码就可以了,不需要其他操作:[root@localhost]# curl -sL https://rpm.nodesource.com/setup_16.x | bash## Installing the NodeSource Node.js 16.x repo...
....
[root@localhost]# yum -y install nodejs gcc-c++ make wget rsync
安装完毕后使用 node -v 和 npm -v 来验证安装是否成功。[root@localhost]# node -vv16.6.2
[root@localhost]# npm -v
7.20.3
kubesphere普通用户无法运行流水线解决方法1,kubesphere集成的jenkins,不知怎么玩的,添加的devops项目,运行 流水线 时,普通用户无法执行,显示 未运行 ,登陆jenkins里面,查看有相关用户,但是流水线没动静。只有admin账号才可以正常运行 流水线 ,只有admin用户可以看见流水线,其他用户都不再拥有流水线的任何操作权限。2,找到的两种解决方法: 1),官网给的资料,但是没用过。 恢复 Jenkins 中的权限规则 - KubeSphere 开发者社区 2),自己折腾时,把devops功能组件删除了,再重新增加组件,还是一样的问题。 估计可能是openldap的相关功能有问题,也不清楚具体处理方法。然后就想着使用kubesphere重建普通用户, 还是没有解决相关问题。最后只能在jenkins中的安全配置中找解决方法了。直接一步到位吧,在 jenkins中 全局安全配置 --> 授权策略 ---> 打上勾 登陆用户可以作任何事 ,保存后,普通用户 再次运行流水线,终于正常了。以下是删除 devops组件的方法:以 admin 身份登录控制台,点击左上角的平台管理,选择集群管理。点击 CRD,在搜索栏中输入 clusterconfiguration,点击搜索结果查看其详细页面。信息...
文章目录 docker部署Nginx+keepalive实现高可用 1.流程说明 1)直观流程图 2)部署效果 情况一:三台服务正确启动Nginx和keepalive 情况二:三台服务中,关闭192.169.56.123的服务Nginx和keepalive 3)Keepalived说明 2.开始部署环境 2.1 nginx 1)拉取镜像 2)配置文件 3)访问界面 4)然后把写好的配置,复制到其他两台机器上 5)启动容器脚本 6)测试访问界面 2.1 keepalived 1)拉取镜像 2)配置文件不需要 3)启动容器脚本,三台服务都一样就行 4)测试就按照部署效果来操作就可以了 结束 docker部署Nginx+keepalive实现高可用 服务器环境说明 服务器三台:192.168.56.121,192.168.56.122,192.168.56.123 vip虚拟IP:192.168.56.111对外提供 1.流程说明 1)直观流程图 2)部署效果 我这边演示只到nginx的界面,具体nginx要代理到哪里,看业务需求 访问http://192.168.56.111:9000/index.html 情况一:三台服务正确...
linux抓包工具tcpdump基本使用tcpdump 是一款灵活、功能强大的抓包工具,能有效地帮助排查网络故障问题。tcpdump 是一个命令行实用工具,允许你抓取和分析经过系统的流量数据包。它通常被用作于网络故障分析工具以及安全工具。tcpdump 是一款强大的工具,支持多种选项和过滤规则,适用场景十分广泛。由于它是命令行工具,因此适用于在远程服务器或者没有图形界面的设备中收集数据包以便于事后分析。它可以在后台启动,也可以用 cron 等定时工具创建定时任务启用它。本文中,我们将讨论 tcpdump 最常用的一些功能。1、在 Linux 中安装 tcpdump$ which tcpdump
/usr/sbin/tcpdump如果还没有安装 tcpdump,你可以用软件包管理器安装它。 例如,在 CentOS 或者 Red Hat Enterprise 系统中,用如下命令安装 tcpdump:$ sudo yum install -y tcpdumptcpdump 依赖于 libpcap,该库文件用于捕获网络数据包。如果该库文件也没有安装,系统会根据依赖关系自动安装它。 现在你可以开始抓包了。2、用 tcpdump 抓包使用 tcpdump 抓包,需要管理员权限,因此下面的示例中绝大多数命令都是以 sudo 开头。首先,先用...
Kubernetes三种探针 k8s支持存活livenessProbe和就绪readinessProbe两种探针,两种探针都支持以下三种方式 一、exec 通过执行shell命令的方式,判断退出状态码是否是0,示例: exec:
command:
- cat
- /tmp/healthy 二、tcp 通过TCP请求的方式,是否能建立tcp连接,示例: tcpSocket:
port: 8080
initialDelaySeconds: 15
periodSeconds: 20 三、httpGet 通过发起http请求,判断返回结果是否符合预期,示例:...
livenessProbe:
httpGet:
path: /healthz
port: 8080
httpHeaders:
- name: X-Custom-Header
value: Awesome
initialDelaySeconds: 3
periodSeconds: 3 initialDelaySeconds指定了容器启动后多少秒后进行探测 periodSeconds指定每隔多少秒进行探测 Liveness 探测 Liveness 探测让用户可以自定义判断容器是否健康的条件。如果探测失败,Kubernetes 就会重启容器。还是举例说明,创建如下 Pod:启动进程首先...
总共260页,当前第14页 | 页数: - 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
最新评论