
k8s+docker运维
文章平均质量分 61
运维
程序员阿俊
热爱code
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
k8s pod,ns,pvc 强制删除
k8s pod,ns,pv 强制删除原创 2023-03-08 14:09:55 · 3000 阅读 · 1 评论 -
解决SSH远程执行命令找不到环境变量的问题
通过SSH执行远程主机的命令或脚本时,经常会出现找不到自定义环境变量的问题。但是,如果通过SSH登录远程主机,然后再执行相同的命令或脚本,那么此时执行又是成功的。两种相似的方法,得到的结果却截然不同,看起来很诡异的现象,根本原因在于这两种方式使用的bash模式不同!...原创 2022-07-22 14:15:26 · 3135 阅读 · 0 评论 -
k8s重启导致node没有成功连接:The connection to the server localhost:8080 was refused - did you specify the righ
在底部增加新的环境变量exportKUBECONFIG=/etc/kubernetes/admin.conf。原因kubernetesmaster没有与本机绑定,集群初始化的时候没有绑定,此时设置在本机的环境变量即可解决问题。具体根据情况,此处记录linux设置该环境变量。方式二直接追加文件内容。步骤一设置环境变量。方式一编辑文件设置。...原创 2022-07-22 09:16:36 · 1392 阅读 · 0 评论 -
ingress-nginx详解和部署方案
ingress 官方网站ingress 仓库地址ingress-nginx v1.1 最新版本 v1.1适用于Kubernetes 版本 v1.19+ (也包括 v1.19 )Kubernetes-v1.22+ 需要使用 ingress-nginx>=1.0,因为 networking.k8s.io/v1beta 已经移除直接部署比较简单,直接拉去 的文件就可以了,如果遇到长时间无响应,可以终止任务从新拉取。拉取镜像部分,可以修改为一下的镜像地址检查ingress-nginx 状态测原创 2022-06-20 15:55:06 · 3080 阅读 · 1 评论 -
linux查看磁盘使用情况命令
1、工作中有时被分配的测试机空间不大,经常遇到磁盘空间占满的情况。排查过程如下:一、首先使用df -h 命令查看磁盘剩余空间,通过以下图看出/目录下的磁盘空间已经被占满。二、进入根目录,因为最近常用的目录就是usr目录,所以用du -bs命令看一下常用的usr目录大小,由下图可见/usr目录占据了11g。其实可以直接运行find命令,见第三步三、进入usr目录用find 命令找到大文件把日志,压缩包什么的都清空一下2、查看磁盘文件的可用空间1、df命令简介li原创 2022-03-02 11:40:37 · 23900 阅读 · 0 评论 -
Harbor构建企业级私有docker镜像的仓库的开源解决方案
一、Harbor1、Harbor是构建企业级私有docker镜像的仓库的开源解决方案,它是Docker Registry的更高级封装,它除了提供友好的Web UI界面,角色和用户权限管理,用户操作审计等功能外,它还整合了K8s的插件(Add-ons)仓库,即Helm通过chart方式下载,管理,安装K8s插件,而chartmuseum可以提供存储chart数据的仓库【注:helm就相当于k8s的yum】。另外它还整合了两个开源的安全组件,一个是Notary,另一个是Clair,Notary类似于私有CA原创 2022-02-24 16:16:21 · 4677 阅读 · 0 评论 -
kubernetes service 的nodePort、port、targetPort、containerPort字段说明
1.nodePortnodePort提供了集群外部客户端访问service的一种方式,:nodePort提供了集群外部客户端访问service的端口,即nodeIP:nodePort提供了外部流量访问k8s集群中service的入口。比如外部用户要访问k8s集群中的一个Web应用,那么我们可以配置对应service的type=NodePort,nodePort=30001。其他用户就可以通过浏览器http://node:30001访问到该web服务。而数据库等服务可能不需要被外界访问,只需被内.原创 2022-01-12 14:22:52 · 1790 阅读 · 0 评论 -
K8s中Pod容器挂载宿主机Docker
我们可以通过挂载本地资源的方式去挂载docker环境spec: volumes: - name: dockersock hostPath: path: /var/run/docker.sock - name: docker hostPath: path: /usr/bin/docker这样,我可以在容器内使用docker! (我也将其安装在容器内)。...原创 2022-01-12 10:48:46 · 2791 阅读 · 0 评论 -
Ubuntu 为主分区扩容 – 命令行
事情是这样的,服务器系统盘是块 120GB 的 SSD,当时装系统的时候只给了 50GB,还剩下 70GB 的剩余容量,那么现在由于东西越来越多,需要把剩下的 70GB容量也用上,先是去谷歌了一下,奇葩的事情发生了,全是Ubuntu图形界面的教程,史上第一次,震撼 czp。这个笔记只适用于同一块硬盘扩容为了不让服务器遭遇到毁灭级的打击,我还是开了台测试用的服务器先试试水,不然的话,万一狗带了,那什么都没了。过程:可以看到,根目录只有 50GBroot@localhost:~#...原创 2021-11-10 10:33:46 · 4859 阅读 · 2 评论 -
docker-compose安装rabbitmq集群实战配置
创建docker-compose.yml 文件version: '3.8'services: rabbitmq1: image: rabbitmq:management container_name: rabbitmq1 restart: always hostname: rabbitmq1 ports: - "5672:5672" - "15672:15672" volumes: - /opt/docker_vol原创 2021-03-23 09:09:35 · 741 阅读 · 1 评论 -
用acme.sh帮你免费且自动更新的HTTPS证书,省时又省力
前言一直想更新一下https,最近刚好有点空,就实现了一下。之前看过一篇教你快速撸一个免费HTTPS证书的文章,通过Certbot来管理Let's Encrypt的证书,使用前需要安装一堆库,觉得不太友好。所谓条条大路通罗马,肯定还有其他方法可以做这个事情。经过一番研究oneinstack的内部,也发现了oneinstack使用acme.sh这个库,这个是用Shell脚本编写的,不需要安装其他东西,比较纯净,觉得比较适合自己,记录一下过程。准备工作一个已解析好的域名(可以用http来..原创 2021-01-26 10:24:42 · 5351 阅读 · 0 评论 -
GitLab内存过多的问题-性能优化
使用GitLab作为自用或者公司内部使用的代码托管平台,都是很不错的,但是最近用户反映,Gitlab服务器总会宕机,经过排查确定,是开发人员同时操作的时候,内存跑满导致,很多时候不方便加内存,比如我个人用的阿里云Ecs内存太小,Gitlab要求的内存配置比较高,所以修改gitlab线程数来控制一下。二、gitlab内存过高的处理方法首先需要确定你已经知道官方明确要求的GitLab的硬件需求了,硬件需求详见GitLab Requirements,简单来讲,官方推荐最低物理配置是2核,4G,下面就总结原创 2020-07-22 10:17:38 · 5414 阅读 · 0 评论 -
LINUX | 谷歌阿里云腾讯云服务器开启SSH及设置root密码适用于
一、设置root密码1.打开ssh连接服务器2.切换到root账号sudo -i3.设置root密码passwd然后会要求输入新密码,然后再重复一次密码,输入密码的时候不会显示出来,所以直接输入密码,然后回车,再然后重复输入密码回车二、开启SSH权限①方法一1.修改SSH配置文件/etc/ssh/sshd_configvi /etc/ssh/sshd_config2.然后再输”i”进入编辑模式i3.找到以下内容并修改PermitR..原创 2020-07-15 21:02:40 · 901 阅读 · 0 评论 -
Ubuntu 18.04使用root 帐号开启 SSH 登录
测试环境为ubuntu18.04基本环境1.默认使用ubuntu用户登录,密码为服务器配置时设置的密码,可在重置密码中修改2.修改 root 密码sudo passwd root3.修改配置文件sudo vi /etc/ssh/sshd_config找到下面相关配置:# Authentication:LoginGraceTime 120PermitRootLogin prohibit-passwordStrictModes yes更改为:# Authenticatio原创 2020-07-13 09:21:42 · 937 阅读 · 0 评论 -
在 Docker 容器中运行宿机docker命令
在 Docker 容器里面使用docker run/docker build?Docker 容器技术目前是微服务/持续集成/持续交付领域的第一选择。而在 DevOps 中,我们需要将各种后端/前端的测试/构建环境打包成 Docker 镜像,然后在需要的时候,Jenkins 会使用这些镜像启动容器以执行 Jenkins 任务。为了方便维护,我们的 CI 系统如 Jenkins,也会使用 Docker 方式部署。Jenkins 任务中有些任务需要将微服务构建成 Docker 镜像,然后推送到 Har.原创 2020-07-06 22:48:11 · 5279 阅读 · 0 评论 -
Docker run 命令参数及使用
Docker run :创建一个新的容器并运行一个命令语法#运行示例docker run [OPTIONS] IMAGE [COMMAND] [ARG...] #运行docker内命令docker run -it IMAGE java -versionOPTIONS说明:01.[root@www ~]# docker run --help 02. 03.Usage: docker run [OPTIONS] IMAGE [COMMAND] [ARG...] ...原创 2020-07-06 22:42:07 · 5304 阅读 · 0 评论 -
docker容器中文控制台和日志打印输出都是问号
RUN apt-get update && apt-get install -y locales && rm -rf /var/lib/apt/lists/* \ && localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8ENV LANG en_US.utf8原创 2020-07-02 17:38:29 · 1719 阅读 · 0 评论 -
Docker常用镜像基本操作
DockerDocker镜像的首行从FROM alpine之类的镜像开始,但是最初的基础镜像是如何创建的,本文使用一个busybox创建一个基础镜像,相信在此过程中会对docker一些相关的概念有进一步的理解。什么是基础镜像(base image)简单来说,基础镜像就是没有From或者FROM scratch开头的Dockerfile所构建出来的镜像。比如alpine,这个很小的linux镜像目前只有4M左右Docker常用镜像选择因为Docker镜像是基于基础镜像来构建的,因此选择的基础镜像越.原创 2020-07-02 11:27:10 · 344 阅读 · 0 评论 -
docker-compose部署设置东八时区上海时间
前言部署的docker容器一定要是东八时区,才不至于导致程序部署时间错误,从而引起简单而又致命的错误。配置宿主机配置东八时区详见: centos7下配置中国时区docker-compose.yml文件配置东八时区上海时间version: "3.5"services: mysql: image: mysql:5.7 environment: #设置东八时区上海时间 - SET_CONTAINER_TIMEZONE=true - CONTAIN...原创 2020-07-02 10:28:28 · 5075 阅读 · 0 评论 -
Linux权限:提示-bash: ./startup.sh: Permission denied的解决方案
Linux上执行shell文件,显示:-bash: ./startup.sh: Permission denied 的提示。这是因为用户没有权限,而导致无法执行。用命令chmod 修改一下bin目录下的.sh权限就可以了。chmod u+x *.sh这里的u 这里指文件所有者,+x 添加可执行权限,*.sh表示所有的sh文件。...原创 2020-07-01 15:39:58 · 3544 阅读 · 1 评论 -
Linux系统关闭进程的集中方式
查找并关闭进程在Linux系统中可以使用lsof命令和kill命令,两个命令配合查找并关闭占用端口的进程查看关联的进程命令:ps -aux|grep frp| grep -v grep查看某一端口使用情况的命令:lsof -i:端口号netstat -nap | grep 端口号效果如下,PID即进程的ID根据PID关闭进程,使用命令:kill -9 进程号...原创 2020-06-13 15:31:37 · 310 阅读 · 0 评论 -
【cmd命令】关闭指定端口出现 ‘netstat’不是内部命令问题解决
1、查看指定端口的使用情况使用命令:netstat -ano | findstr 端口号手动关闭进程方法一:运行命令:tasklist | findstr 进程号1查看进程的详细信息,第一个参数是启动该进程的程序,即图中java.exe,使用任务管理器将其关闭方法二:运行命令:taskkill -PID 进程号 -F 2、‘netsta...原创 2020-05-07 10:57:10 · 1617 阅读 · 0 评论 -
删除Docker镜像报错image is being used by stopped container
删除某个容器时,报错image is being used by stopped container eca596ce0f9d该报错的原因是要删除的该镜像,被某个容器所引用.解决方法删除单个镜像执行命令docker ps -a该命令的含义是查看所有的容器,包括未运行的容器.通过执行该命令,可以看到,有一个容器引用了该镜像执行命令docker rm eca596ce0f9d 删除该容...原创 2020-05-06 11:39:34 · 23405 阅读 · 0 评论 -
Git 没有提交代码,强制切换分支后代码丢失后如何找回代码【go log VS go reflog】
今天 一个误操作,多次commit的代码,然后强制切换了分支,再切换回来发现代码丢失了。后面各种查也没有查到,后面自己重新写了。但是我不甘心,后面又去查了一些资料。发现:git log没有记录强制操作丢失的代码,如果强制操作之前没有git stash,是没法找回来的,非强制操作造成的丢失,基本可以通过Git reflog找回。后面使用git checkout -b back_d...原创 2020-04-28 00:06:11 · 5884 阅读 · 0 评论 -
SSH连接超时问题安全的解决方案
ssh连接超时问题解决方案:1.修改server端的etc/ssh/sshd_configClientAliveInterval 60 #server每隔60秒发送一次请求给client,然后client响应,从而保持连接ClientAliveCountMax 3 #server发出请求后,客户端没有响应得次数达到3,就自动断开连接,正常情况下,client不会不响应2.修改...原创 2020-04-25 00:40:17 · 691 阅读 · 0 评论 -
curl http请求基本用法
从curl的一个使用实例说起:将以下代码拷贝到命令行即可执行curl -X POST \ http://jd.dev.imdada.cn/pickup/addOrder/ \ -H 'cache-control: no-cache' \ -H 'content-type: application/json' \ -H 'postman-token: 2f6b7816-...原创 2020-04-12 10:05:38 · 15001 阅读 · 0 评论 -
Mac 安装RabbitMQ
通过Brew指令安装RabbitMQ brew指令可以安装、更新和卸载应用,通过brew指令安装RabbitMQ很简单。打开新的终端窗口,回到根目录之后输入 brew install rabbitmq指令即可进行rabbitmq服务的自动安装。通过brew安装rabbitmq安装完成之后会出现一下提示:rabbit安装完成RabbitMQ安装后...原创 2020-04-07 18:41:28 · 7593 阅读 · 1 评论 -
UUID算法分析:如何保证唯一性
UUID具有以下涵义:经由一定的算法机器生成为了保证UUID的唯一性,规范定义了包括网卡MAC地址、时间戳、名字空间(Namespace)、随机或伪随机数、时序等元素,以及从这些元素生成UUID的算法。UUID的复杂特性在保证了其唯一性的同时,意味着只能由计算机生成。非人工指定,非人工识别UUID是不能人工指定的,除非你冒着UUID重复的风险。UUID的复杂性决定了“一般人“不能直接从...原创 2020-04-07 18:32:28 · 1608 阅读 · 0 评论 -
wrk 服务器性能HTTP压测工具
wrk是一款简单的HTTP压测工具,托管在Github上,https://github.com/wg/wrk.wrk 的一个很好的特性就是能用很少的线程压出很大的并发量. 原因是它使用了一些操作系统特定的高性能 io 机制, 比如 select, epoll, kqueue 等. 其实它是复用了 redis 的 ae 异步事件驱动框架. 确切的说 ae 事件驱动框架并不是 redis 发明的,...原创 2020-04-07 10:58:43 · 525 阅读 · 0 评论 -
Elasticsearch Kibana for Mac的安装与使用
Elasticsearch 安装好了之后,Kibana 插件可以为这个功能强大的搜索工具添加可视化功能。在我之前的文章中,我向 Mac 用户介绍了安装 Elasticsearch的步骤,这是世界上最受欢迎的企业级搜索引擎。(这里有一篇针对 Linux 用户的单独文章。)其自然语言处理能力使得 Elasticsearch 在数据集中查找细节方面表现出色。一旦你发现了你需要的数据,如果你已经...原创 2020-04-06 21:08:31 · 2279 阅读 · 2 评论 -
使用Docker搭建etcd集群
Step 1Mac下安装etcd 进行测试brew install etcd执行etcd --version确保安装成功Step 2使用docker-machine创建3个docker主机docker-machine create --driver virtualbox box0docker-machine create --driver virtualb...原创 2020-04-06 14:12:10 · 828 阅读 · 1 评论 -
Mac下Kafka、zookeeper安装与启动
安装原本想想MySQL一样编译安装,遇到各种各样的问题,还是屈服了,没必要一开始就较劲。使用brew进行安装,非常方便。brew install kafka安装完之后,安装目录为:# kafka安装目录/usr/local/Cellar/kafka/2.1.0# 配置文件目录/usr/local/etc/kafka/如果需要修改配置,可以进入对应目录...原创 2020-04-05 18:16:28 · 1080 阅读 · 0 评论 -
Mac下ElasticSearch安装
Elasticsearch是一个基于Apache Lucene(TM)的开源搜索引擎。无论在开源还是专有领域,Lucene可以被认为是迄今为止最先进、性能最好的、功能最全的搜索引擎库。下面介绍一下Mac下安装Elasticsearch的步骤更新brewbrew update安装java8brew cask install homebrew/cask-versi...原创 2020-04-05 18:08:37 · 1424 阅读 · 0 评论 -
CentOS 7 配置静态IP
在新安装好的CentOS7上和之前的CentOS6版本一样,初始状态是没有网络配置的,则需要使用dhclient命令来自动获取IP地址,查看获取的IP地址则使用命令 ip addr,则会看到网卡信息和lo卡信息,进入配置文件修改IP信息vi /etc/sysconfig/network-scripts/ifcfg-xxxxxxx点击i进入编辑状态修改:onboot=yes...转载 2020-04-05 16:41:37 · 624 阅读 · 0 评论 -
Docker docker-compose.yml文件配置和 docker-compose命令
docker-compose.yml包含version、services、networks3大部分services的书写规则1.iamgeservices: web: # 服务名称,用户自定义 image: busybox # 镜像名称/镜像ID,如果本地不存在compose会拉取镜像 # 以下格式...原创 2020-04-04 14:28:13 · 3188 阅读 · 1 评论 -
linux完美安装yum简单方法
一、下载yum安装包并解压wget http://yum.baseurl.org/download/3.2/yum-3.2.28.tar.gztar xvf yum-3.2.28.tar.gz二、进入yum-3.2.28文件夹中进行安装,执行安装指令cd yum-3.2.28sudo apt install yum三、更新到新版本yum check-update...原创 2019-12-24 12:35:53 · 613 阅读 · 1 评论