Frank

Frank

[AWS]API Gateway, API网关

1. API网关的一些中英文资料 * 谈谈微服务中的 API 网关(API Gateway) [https://www.cnblogs.com/savorboard/p/api-gateway.html] * 架构设计(4)--API网关 [https://blog.csdn.net/hguisu/article/details/79143584] * 架构|如何架构一个合适的企业API网关(1)API网关的介绍、应用场景、作用及常用方案 [https://cloud.tencent.com/developer/article/1131895] * (✓)API Gateway explained [https://www.youtube.com/watch?reload=9&v=
1 min read

[AWS]记一次连接EC2 MySQL的问题

帮实习生解决连不上ec2上mysql的问题。 AMI是Amazon Linux 2, MySQL版本是Ver 14.14 Distrib 5.7.29 1. 先看了眼security group的inbound rules,是允许公司内网所有端口的。 2. 检查本地连接,尝试本地登录 安装后尝试本地连接报错 (env) [root@XXXXXXX ec2-user]# mysql -u root ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) 也不允许看版本 (env) [root@XXXXXXX ec2-user]# mysql -v ERROR 1045 (28000): Access
3 min read

由Python对数据库操作的一点展开: ORM

在上篇关于自写synthetics工具的文章里,我写入数据库采用的是psycopg2,直接写入。今天想讲一下另一种方法,ORM(Object-relational mapping)和Python里的ORM工具:SQLAlchemy。 SQLAlchemy的三个好处: * 简化db workflow * 提供ORM * 和其他Python库的集成 http://www.ruanyifeng.com/blog/2019/02/orm-tutorial.html https://hackersandslackers.com/python-database-management-sqlalchemy https://hackersandslackers.com/sqlalchemy-data-models https://hackersandslackers.com/database-queries-sqlalchemy-orm https://hackersandslackers.com/psycopg2-postgres-python/ https://www.youtube.
1 min read

[AWS][Elasticsearch]记又一次Elasticsearch捕捉日志问题及解决

之前有过一次,可参见[AWS]记一次Elasticsearch无法捕捉到fargate log的解决 [https://hanzhu.dev/ghost/#/editor/post/5e15e98ae936373176049064] 错误现象 第一步跑去查看lambda有没有报错日志,发现需先在Lambda里开启更详细的日志: // Set this to true if you want to debug why data isn't making it to // your Elasticsearch cluster. This will enable logging of failed items // to CloudWatch Logs. var logFailedResponses = false; 看到类似于如下的报警信息: this action would
3 min read

[AWS]Fargate网络

Task Networking in AWS Fargate 本章节内容编译自这篇官方博客 [https://aws.amazon.com/blogs/compute/task-networking-in-aws-fargate/]。 跑Fargate的第一步是定义ECS Task. Task是一个Logical Group,由一或多个Docker container组成,根据特定配置进行部署。当跑Fargate Task时,需要考虑两种类型的网络: * Container (local) networking * External networking Container Networking 通常用于tightly coupled application components.比方服务静态内容同时需要生成动态页面的应用,把web tier和 api tier放一起,用local networking,这样web tier可以从api tier拿信息。单机下,web tier application process可以和API process在同一机器内通过local
7 min read

[Network]记一次简单的抓包

背景 工作需要,抓包查看一下来自某ip的Request 思路 在服务器端抓包后,导入到本地用wireshark查看 具体步骤 1. 服务器安装tcpdump yum -y install tcpdump 2. ifconfig查看本地网卡 3. 执行一下命令抓包eth0的包,并保存到/tmp/zhuabao.cap tcpdump -tttt tcp -i eth0 -w /tmp/zhuabao.cap -tttt 是为了 > Print a timestamp, as hours, minutes, seconds, and fractions of a second since midnight, preceded by the date,
1 min read

[AWS]使用lambda向Slack和Google Chat推送pipeline状态

动机:在Slack Channel中显示Codepipeline的运行消息。 Feature包括: * 自动判断Account(Dev or Prod) * 用对应颜色展示管线运行成功与否 * 管线URL link * 自动提取GitHub Hash 具体实现组成部分如下: * Slack Webhook * Cloudwatch Event * Lambda (Python) Slack 准备Slack Webhook:Sending messages using Incoming Webhooks [https://api.slack.com/messaging/webhooks]。 legacy的互动方法用的是通过attachments,官方推荐的新方法是block:Creating rich message layouts [https://api.slack.com/messaging/composing/layouts]。 Cloudwatch Cloudwatch Event可以选择codepipeline作为源头,
5 min read

[AWS][Elasticsearch]记一次Elasticsearch无法捕捉到fargate log的解决

说问题前,首先说一下这个做法的思路和实现步骤: * Cloudformation定义Resource时需要AWS::Logs::LogGroup * 在Cloudwatch Log group里找到对应ECS fargate产生的Log, 选中后Actions-->Stream to Amazon Elasticsearch Service,选中已创建的ES Cluster, 选择Log Format,后续会自动生成对应的Lambda和Role * 修改Lambda, 将indexName由原先的 payload.logEvents.forEach(function(logEvent) { var timestamp = new Date(1 * logEvent.timestamp); var indexName = [ 'cw-' + timestamp.getUTCFullYear(), // year ('0' + (timestamp.getUTC
2 min read

记一次Jira和Confluence的云端迁徙

将本地单容器化Jira和Confluence应用依次迁徙至Atlassian Cloud 步骤: 前期准备 * SAML Integration, 在Atlassian Cloud上添加证书 * 复现Confluence生产环境: * 复制生产环境DB VM * 拷贝生产环境DB Snapshot至复制环境 中期演习和实操: * JIRA项目数据由UI直接导出,附件从服务器中拷贝,打包上传。 * Confluence因为版本问题需要先容器化升级,之后导出数据: * 在准备好的复制环境中Rsync同步NFS * 启动旧容器 * 更新Config file * 启动新容器 * 导出Space数据 后期的一些集成和收尾: * GitHub Integration via Smart Commits * Scriptrunner用于和Jenkins的集成 * 在JIRA XML里更新Comments/Descriptions里旧的linkage * JIRA Macro Repair 中途遇到的一些
2 min read

Subscribe to 隅

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.
jamie@example.com
Subscribe