自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(84)
  • 资源 (6)
  • 问答 (1)
  • 收藏
  • 关注

原创 编译 Istio 镜像

查看 docker hub 镜像仓库,已存在上述镜像。5. 构建并推送特定的镜像。

2023-06-25 11:29:54 548

原创 Caretta 利用 eBPF 实现 Kubernetes 应用网络拓扑

Caretta 是一种轻量级的独立工具,快速展示集群中运行的服务可视化网络图。Caretta 利用 eBPF 有效地展示 K8s 集群中的服务网络交互图,并利用 Grafana 查询和可视化收集的数据。科学家们早就知道,海龟和许多动物一样,通过感应磁场中看不见的线在海上航行,类似于水手使用纬度和经度的方式。

2023-06-21 17:35:05 1393 2

原创 解决 git 推送大仓库失败问题

批量推送 git 提交信息,解决 git 仓库过大问题,

2023-05-31 11:59:50 215

转载 如何分析 istio 控制平面与数据平面性能

【代码】如何分析 istio 控制平面与数据平面性能。

2023-04-24 19:09:26 415

原创 k8s 批量删除 状态为 Terminating 的 pod(强制删除)

kubectl get pods | grep Terminating | awk '{print $1}' | xargs kubectl delete pod --force --grace-period=0

2023-04-20 14:47:04 750

原创 镜像拉取并且重命名推送到第三方镜像仓库

镜像拉取并且重命名推送到第三方镜像仓库

2022-12-30 19:46:30 630

原创 envoyfilter 使用 lua 案例

使用 envoyfilter 与 lua 拓展 istio 案例。

2022-09-08 19:15:48 879

原创 拉取 gcr.io 镜像,如 Kubernetes,istio 等

dockerhub根镜像代理官方命令:docker pull nginx:latest代理命令:docker pull dockerproxy.com/library/nginx:latestdockerhub常规镜像代理官方命令:docker pull stilleshan/frpc:latest代理命令:docker pull dockerproxy.com/stilleshan/frpc:latestgithub常规镜像代理官方命令:docker pull ghcr.io/usern

2022-05-24 20:52:27 2177

原创 Kubernetes 命名空间不能被正确地删除

kubectl --kubeconfig=path/config get namespace istio-system -o json | tr -d "\n" | sed "s/\"finalizers\": \[[^]]\+\]/\"finalizers\": []/" | kubectl --kubeconfig=path/config replace --raw /api/v1/namespaces/istio-system/finalize -f -

2022-04-26 20:07:40 2319

原创 如何构建多架构多平台 Docker 镜像?

如何构建多架构多平台 Docker 镜像?前言在不同操作系统和处理器架构上运行应用是很普遍的需求,因此为不同平台单独构建发布版本是一种常见做法。当我们用来开发应用的平台与部署的目标平台不同时,实现这一目标并不简单。例如在 x86 架构上开发一个应用程序并将其部署到 ARM 平台的机器上,通常需要准备 ARM 平台的基础设施用于开发和编译。在工作和生活中,我们可能经常需要将某个程序跑在不同的 CPU 架构上,比如让某些不可描述的软件运行在树莓派或嵌入式路由器设备上。但是想要跨平台构建

2022-04-09 14:34:34 6373 2

原创 批量删除github上的仓库

DELETE_KOKEN=""GithubName=""for repName in $(cat repos.txt)do echo "Delete "$repName curl -XDELETE -H "Authorization: token ${DELETE_KOKEN}" https://api.github.com/repos/${GithubName}/${repName}done

2022-04-04 12:14:08 443

原创 容器批量拉取与重新推送脚本

#!/bin/bashset -esrc_repo=xxx.comdest_repo=xxx.comsource_user=xxxdest_user=xxxwhile read sc_image; do if [ -z "${sc_image}" ] then continue fi echo "pull ${sc_image}" docker pull ${src_repo}/${source_user}/${sc_image}.

2022-03-05 23:24:24 341

原创 Istio 服务网格如何处理安全问题?

Istio 服务网格如何处理安全问题?《本文翻译自https://istio.tetratelabs.io/blog/istio-security/》在这篇博客中,我将解释 Istio 如何解决诸如流量加密、提供灵活的服务访问控制、配置双向 TLS 和细粒度访问策略与审计等问题。Istio 安全架构Istio 主要由以下组件提供安全功能:1、用于管理密钥和证书的证书颁发机构 (CA)2、Sidecar 代理:实现客户端和服务器之间的安全通信(它们用作策略执行点 (PEP))3、.

2022-03-05 23:06:42 1264

原创 常见容器网络调试工具

bash bind-tools busybox-extras curl iproute2 iputils jq mtr net-tools nginx openssl perl-net-telnet procps tcpdump tcptraceroute wget部署 YAML 文件apiVersion: apps/v1kind: Deploymentmetadata: name: network-multitool labels: app: network-multitoo

2021-12-28 14:06:16 10091

原创 批量下载以及导出镜像

images_base.txt 内容如下所示:gcr.io/spiffe-io/spire-agent:1.0.0gcr.io/spiffe-io/spire-server:1.0.0#!/bin/bash# 创建文件夹rm -rf images/*rm -rf images.tar.gzmkdir images# pull、save 镜像echo "拉取并且保存镜像"for pull_image in $(cat images_base.txt)do echo "开始拉.

2021-12-27 21:34:02 957

原创 调度框架 Scheduling Framework 实践

调度框架 Scheduling Framework架构设计工作流程图可以查看相关文档参见sig-scheduling前提调度框架定义了一组扩展点,用户可以实现扩展点定义的接口来定义自己的调度逻辑,并将扩展注册到扩展点上,调度框架在执行调度工作流时,遇到对应的扩展点时,将调用用户注册的扩展。调度 Pod 时一般会有两个步骤:调度过程和绑定过程。将调度过程和绑定过程合在一起,称之为调度上下文(scheduling context)。调度是同步的,绑定过程是异步运行的。 调度过..

2021-12-18 20:23:19 1115

原创 Apache Log4j 远程代码注入漏洞

漏洞说明2021年12月9日,Apache Log4j2 Java 日志模块存在远程命令执行漏洞可直接控制目标服务器问题,攻击者攻击难度极低。由于 Apache Log4j2 某些功能存在递归解析功能,攻击者可直接构造恶意请求,触发远程代码执行漏洞。该漏洞可通过 critical、error、warining、notice、info、debug等日志级别触发,只需部分日志内容可控,此漏洞波及大量开源组件,包括 ELK、 Apache 、Struts2、Apache Solr、Apache Druid、A

2021-12-11 23:00:23 5549

原创 科普操作系统与芯片那些事儿

科普操作系统与芯片那些事儿操作系统操作系统(operatingsystem,简称OS)是管理计算机硬件与软件资源的计算机程序。操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入设备与输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作界面。【百度百科】在计算机中,操作系统是其最基本也是最为重要的基础性系统软件。从计算机用户的角度来说,计算机操作系统体现为其提供的各项服务;从程序员的角度来说,其主要是指用户登录的界面或者接口;如果从设计...

2021-12-04 17:00:09 6698

原创 Wasm C++ Filter 拓展 Envoy

使用 Wasm C++ filter 拓展 Envoy

2021-12-04 11:23:26 593

翻译 使用 Golang 扩展 Envoy 代理 - WASM 过滤器

Envoy 是一个开源的服务代理,Envoy 专为云原生应用而设计。 Envoy具有很多的特性,如连接池、重试机制、TLS 管理、压缩、健康检查、故障注入、速率限制、授权等。而这些功能都是通过内置的http 过滤器实现的。现在,我们我们介绍一个特殊的过滤器 - WASM 过滤器。这篇文章不会解释什么是 WASM,所以对 WASM 不做过多的介绍,而是在文章末尾添加相关资源链接。为什么使用 WASM 过滤器在 Trendyol 科技公司。...

2021-11-28 13:29:48 1675

原创 harbor2.0 通过 api 创建项目

harbor 通过 api 创建项目{"project_name": "tanjunchen","metadata": {"public": "true"}}curl -u "admin:onceas_123" -X POST -H "Content-Type: application/json" "harbor.mesh.com:8088/api/projects" -d @createproject.json harbor2.0 通过 api 创建项目curl -u "admin...

2021-04-28 22:56:36 2251

原创 shell 脚本批量导入 docker 镜像并且替换镜像仓库地址

#!/usr/bin/env bashexport SOURCE_HUB="xxxx"export TARGET_HUB="xxxx/example"repositories=$(docker images | grep $SOURCE_HUB |awk '{print $1":"$2}'|awk 'NR>1')for project in ${repositories[@]};doecho "source image $project"arr=(${project//\//

2021-03-28 20:32:08 1066

原创 脚本批量删除consul不健康的service

#!/bin/bashCONSUL_ADDRESS="10.20.1.177:8500"CONSUL_CRITICAL=`curl -H"X-Consul-Token:p2BE1AtpwPbrxZdC6k+eXA==" ${CONSUL_ADDRESS}/v1/health/state/critical | python -m json.tool | grep ServiceID | awk '{print $2}' |sed 's/"//g' | sed 's/,//g'`for critical

2021-01-11 18:04:05 1382 1

原创 常见问题总结笔记

常见问题总结在 Kubernetes 上使用 NodePort 暴露的服务,只有在 pod 所调度的那个 node 节点 ip 能够访问,集群其他节点不能访问,这一般是由于节点的 iptables 链规则导致的。iptables -S -t filteriptables -P FORWARD ACCEPTcurl 定时访问某个链接while true; do curl xxx ;sleep 1 ;done;curl -s -I -HHost:httpbin.example.com “http

2020-12-20 20:59:26 166

原创 docker login Error response from daemon: Get http://ip:port/v2/: net/http: request canceled

Docker 登录 harbor 出现出现 (Client.Timeout exceeded while awaiting headers)1. 可以检查下 docker 是配置了网络代理。(web 可以登录,其他的机器可以登录 harbor 就行这台机器不能登录 这个基本上是 docker 的网络配置出现问题)2. 检查 /etc/docker/daemon.json 是否配置了 harbor 仓库 url 地址。3. 排除错误思路:1. login 报什么错?2. 到机器上看一下,网络是否通

2020-10-30 20:53:15 7086

原创 社区常用术语

Pls sign the CLA in order for the PR to be reviewed.1. Login to the CLA site and change it to match what you use as your default email address on your GitHub account1. Change your default email address on your GH account to the same one you used to sign

2020-10-09 13:42:44 310

翻译 为什么 Kubernetes 是软件产品研发中迈出的跨越性的一步?

**为什么Kubernetes是软件产品研发中迈出的跨越性的一步?**6年前,Docker横空出世。开发人员愉快地将其从VM上运行的应用程序移至Docker,尽管遇到了错误,但依旧乐此不疲。但是,一年后,Kubernetes诞生了,并成为了容器革命的关键一环。它基于Google十几年的容器编排经验[Borg,Omega,andKubernetes(中文译篇)](http://dockone.io/article/1153),由Google专家团队精心制作。它不仅使应...

2020-10-06 20:56:02 121

原创 参与 Kubernetes 开源社区

项目原地址https://github.com/tanjunchen/ParticipateCommunity

2020-10-06 18:17:09 122

原创 Kubernetes 的那些事

Kubernetes 是什么?Kubernetes 是一个可移植的、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化流程。Kubernetes 拥有一个庞大且快速增长的生态系统。Kubernetes 拥有强大的开源社区、并且拥有 Google、IBM、RedHat 等世界一流公司的鼎力支持,在世界上引起了新的基础设施变革。Kubernetes 是用于自动部署、扩展和管理 容器化(containerized)应用程序的开源系统。Kubernetes 是一个自动化的容器编排平.

2020-10-06 15:34:04 128

原创 Python MapReduce 案例

import sysimport rep = re.compile(r'\w+')for line in sys.stdin: ss = line.strip().split(' ') for s in ss: if len(p.findall(s)) < 1: continue s_low = p.findall(s)[0].lower() print(s_low + ',' + '1')im.

2020-09-24 20:56:53 533

原创 Python 爬虫处理字体加密 汽车之家、猫眼、去哪儿网

Python 爬虫处理字体加密完整代码下载:https://github.com/tanjunchen/SpiderProject/tree/master/fontfaceDecrypt汽车之家:#!/usr/bin/env python# -*- coding: utf-8 -*-import requestsfrom lxml import etreeimport reimport sysimport iofrom fontTools.ttLib import TTFont

2020-09-21 20:11:56 1062

原创 python 获取东方财富网站的数据

python 获取东方财富网站的数据完整代码下载:https://github.com/tanjunchen/SpiderProject/tree/master/EastWealthWebsite#!/usr/bin/env python# -*- coding: utf-8 -*-import pandas as pdfrom selenium import webdriverfrom selenium.webdriver.support import expected_cond.

2020-09-21 20:11:51 3615

原创 python 爬取全国农产品批发指数网站 charles 抓取 flash 数据包 分析数据包数据

python 爬取全国农产品批发指数网站charles 抓取 flash 数据包 分析数据包数据amf 数据请求与返回格式 flash 数据完整代码下载:https://github.com/tanjunchen/SpiderProject/tree/master/agriculture#!/usr/bin/env python# -*- coding: utf-8 -*-import requestsimport uuidimport pyamfimport da..

2020-09-21 20:11:46 943 1

原创 python 爬取 csdn 网站信息

python 爬取 csdn 网站信息完整代码下载:https://github.com/tanjunchen/SpiderProject/tree/master/csdn#!/usr/bin/env python# -*- coding: utf-8 -*-import requestsfrom bs4 import BeautifulSoupimport multiprocessingimport timesuccess_num = 0CONSTANT = 0d.

2020-09-21 20:11:40 231

原创 Python 分布式爬取 InfoQ 信息

Python 分布式爬取 InfoQ 信息完整代码下载:https://github.com/tanjunchen/SpiderProject/tree/master/InfoQ#!/usr/bin/env python# -*- coding: utf-8 -*-import jsonimport datetimeimport timeimport randomfrom InfoQ.tool.header import headersimport requestsfrom In

2020-09-21 20:11:35 174

原创 python 爬取 全网代理 IP 网站 + 破解端口加密混淆

python 爬取 全网代理 IP 网站完整代码下载:https://github.com/tanjunchen/SpiderProject/tree/master/IP#!/usr/bin/env python# -*- coding: utf-8 -*-from lxml import etreeimport requestsdef spider(): url = 'http://www.goubanjia.com/' headers = { 'A

2020-09-20 11:05:23 375

原创 python 爬取 IT 桔子网

python 爬取 IT 桔子网完整代码下载:https://github.com/tanjunchen/SpiderProject/tree/master/ITOrangeimport requestsimport reimport pymongoimport randomimport timeimport jsonimport randomimport numpy as npimport csvimport pandas as pdfrom fake_useragent i

2020-09-20 11:05:18 1319

原创 python selenium 爬取去哪儿网的数据

python selenium 爬取去哪儿网的数据完整代码下载:https://github.com/tanjunchen/SpiderProject/tree/master/selenium+qunaerwang#!/usr/bin/python# -*- coding: UTF-8 -*-from selenium import webdriverimport datetimefrom selenium.webdriver.support.ui import WebDriverWai

2020-09-20 11:05:13 918

原创 python 爬取拉钩网数据

python 爬取拉钩网数据完整代码下载:https://github.com/tanjunchen/SpiderProject/blob/master/lagou/LaGouSpider.py#!/usr/bin/env python# -*- coding: utf-8 -*-import randomimport timeimport requestsfrom openpyxl import Workbookimport pymysql.cursorsdef get_c

2020-09-20 11:05:06 307

原创 mitmproxy python 使用案例

python mitmproxy 使用案例完整代码下载:https://github.com/tanjunchen/SpiderProject/tree/master/mitmproxyspider#!/usr/bin/env python# -*- coding: utf-8 -*-from mitmproxy import ctx, flowdef job(url): injected_javascript = ''' // overwrite the `la..

2020-09-20 11:04:56 1217

Linux 内核

Linux内核代码分析源码

2016-06-24

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除