前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Custodian-自动化管理云环境

Custodian-自动化管理云环境

原创
作者头像
枕头君
发布于 2024-03-17 12:45:08
发布于 2024-03-17 12:45:08
3090
举报
文章被收录于专栏:云运营日记云运营日记

什么是Custodian?让我们看看官方是怎么说的吧


官方文档

Cloud Custodian 是一种工具,它将大多数组织用于管理其公共云帐户的数十种工具和脚本统一到一个开源工具中。它使用无状态规则引擎进行策略定义和执行,并为云基础设施提供指标、结构化输出和详细报告。它与无服务器运行时紧密集成,以低运营开销提供实时修复/响应。

组织可以使用 Custodian 来管理其云环境,通过单一工具确保遵守安全策略、标签策略、未使用资源的垃圾收集以及成本管理。

Cloud Custodian 可以绑定到跨多个云提供商的无服务器事件流,这些事件流映射到安全、操作和治理用例。托管人遵循合规性即代码原则,因此您可以验证、试运行和审查对策略的更改。

Cloud Custodian 策略以 YAML 表示,包括以下内容:

  • 运行策略所针对的资源类型
  • 过滤器以缩小资源范围
  • 对过滤后的资源集采取的操作

也就是说我们只需要通过Custodian,通过编辑YAML文件的规则从而即可确保安全策略、标签策略、未使用资源的垃圾收集以及成本管理,具体拿一下场景进行举例


常见管理场景如何用Custodian去实现

  • 检测资源是否规范,有没达到统一标准,比如标记资源使用人,联系方式等必要标签
  • 密钥到期乱换检测
  • 安全组开放0.0.0.0/0,并开放高危端口检测
  • 防止资源浪费、比如负载均衡创建很久却没有使用检测、虚机资源使用不合理,购买大规格检测
  • 对象存储开启公有读写检测
  • 云盘创建了却一直没有挂载实列
  • ........

以下都只需要通过以下命令即可实现

代码语言:bash
AI代码解释
复制
custodian run -s . xxx.yml

检测资源(虚机)是否打上对应标签

标签是管理资源很重要的一个途径,比如给对应资源打上对应标签,资源负责人、手机、邮箱,用途,开发or生产等等一系列常用标签,即可一眼看出资源的用途,负责人,以及当资源发生异常时快速定位到负责人。

该policy表示,虚机创建一天后,并且该虚机是开机状态,该虚机没有补齐op、op_phone、op_email、des、env等一系列标签,那么该虚机将会标记在三天后关机,并且通知管理员

代码语言:yml
AI代码解释
复制
 policies: 
   - name: cvm-mark-tag-stop                                                                                                                
    resource: tencentcloud.cvm                                                                                                             
    filters:                                                                                                                                                                                                                                
      - type: value                                                                                                                        
        key: InstanceState                                                                                                                 
        value: RUNNING                                                                                                                     
      - type: value                                                                                                                        
        key: CreatedTime                                                                                                                   
        op: gte                                                                                                                            
        value_type: age                                                                                                                    
        value: 1                                                                                                                           
      - or:                                                                                                                                                                                                                                    
          - "tag:op": empty         # 负责人
          - "tag:op_phone": empty   # 负责人电话
          - "tag:op_email": empty   # 负责人邮箱                                                                                                          
          - "tag:des": empty        # 用途描述                                                                                                       
          - "tag:env": empty        # 开发or生产环境                                                                                           
    actions:                                                                                                                               
      - type: mark-for-op                                                                                                                  
        days: 3                                                                                                                            
        tag: tag_status_stop                                                                                                               
        op: stop
      - type: notify
        action_desc: 创建的虚机没有满足标签规范,将在三天后关机,请管理员关注

密钥Ak/SK轮换到期提醒

密钥的使用是最常见的,但我们却也需要经常去轮换密钥以保证密钥的安全性。

该policy表示,密钥创建100天后还在使用,即视为没有轮换,到期即删除该密钥(直接删除太暴力了,容易发生生产事故,这里可以把remove-keys换成邮件通知)

代码语言:yml
AI代码解释
复制
policies:                                                                                                                                                                                                                                         
  - name: cam-aksk-update                                                                                      
    resource: tencentcloud.cam-user                                                                                                        
    filters:                                                                                                                               
      - type: credential                                                                                                                   
        key: access_keys.CreateTime                                                                                                        
        op: gt                                                                                                                             
        value_type: age                                                                                                                    
        value: 100                                                                                                                                                                                                                    
    actions:                                                                                                                               
      - type: remove-keys                                                                                                                
        matched: true                                                                                                                                                                                               

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
2019-05-31 ojdbc6 安装到本地maven仓库
https://www.oracle.com/technetwork/cn/database/enterprise-edition/jdbc-112010-094555-zhs.html
Albert陈凯
2019/06/02
8330
Mybatis-Plus实践学习(二十五)
由于版权原因,我们不能直接通过maven的中央仓库下载oracle数据库的jdbc驱动包,所以我们需要将驱动包安装到本地仓库。
用户1289394
2024/02/26
1420
Mybatis-Plus实践学习(二十五)
Maven 菜鸟教程 4 常用dos命令
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/10/04
4130
maven上传就私库
mvn deploy:deploy-file -DgroupId=com.cmos -DartifactId=itframe-boot-base -Dversion=1.0.1-SNAPSHOT -Dpackaging=jar -Dfile=D:\s\itframe-boot-base-1.0.1-SNAPSHOT.jar -Durl=http://10.97.85.11:38081/repository/maven-snapshots -DrepositoryId=nexus
全栈程序员站长
2022/09/09
3300
JAR包安装报错requires a project to execute but there is no POM的解决
  本文介绍在Windows中,通过Maven的mvn install:install-file命令安装JAR包时,提示The goal you specified requires a project to execute but there is no POM in this directory错误的解决方法。
疯狂学习GIS
2025/03/10
4270
JAR包安装报错requires a project to execute but there is no POM的解决
Hudi数据湖技术引领大数据新风口(二)编译安装
(1)上传apache-maven-3.6.1-bin.tar.gz到/opt/software目录,并解压更名
Maynor
2023/07/28
5840
Hudi数据湖技术引领大数据新风口(二)编译安装
Mavan 引入本地Jar
通常情况下,我们都是通过 Maven 从中央仓库或者阿里仓库直接拉取依赖的 JAR 包来构建我们的项目。然而,在实际工作中,有时候会遇到一些特殊情况,比如对接三方平台时,对方提供的是一个直接下载链接的 JAR 包,而不是通过 Maven 仓库管理的方式提供依赖。
刺槐儿
2024/01/17
3640
maven向本土仓库导入jar包(处理官网没有的jar包)
1、将pinyin4j-2.5.0.jar文件放在“D:\JAR_LIB”目录下(该目录任意)
EltonZheng
2021/01/26
1.2K0
maven 安装alipay-sdk包到本地及远程仓库
一、安装到本地: mvn install:install-file -DgroupId=com.alipay -DartifactId=sdk-Java -Dversion=*** -Dpackaging=jar -Dfile=alipay-sdk-java*.jar 二、安装到远程仓库: maven配置: <!-- Another sample, using keys to authenticate. <server> <id>siteServer</id> <privateKey>/path/t
WindWant
2020/09/11
1K0
本地私服仓库nexus3.3.1使用手册
私服架构 私服是指私有服务器,是架设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构建。有了私服之后,当 Maven 需要下载构件时,直接请求私服,私服上存在则下载到本地仓库;否则,私服
小柒2012
2018/04/16
8.5K0
本地私服仓库nexus3.3.1使用手册
SpringBoot项目Oracle报AbstractMethodError
java.lang.AbstractMethodError: oracle.jdbc.driver.T4CConnection.isValid(I)Z
I Teach You 我教你
2023/07/18
3790
SpringBoot项目Oracle报AbstractMethodError
maven命令大全
Maven常用命令: 创建Maven的普通Java项目: mvn archetype:create -DgroupId=packageName -DartifactId=projectName 创建Maven的Web项目: mvn archetype:create -DgroupId=packageName -DartifactId=webappName-DarchetypeArtifactId=maven-archetype-webapp 编译源代码: mvn compile 编译测试代码:mvn t
小柒2012
2018/04/16
1.6K0
如何使用 Java 生成二维码?
 QRCode生成二维码网址:http://swetake.com/qrcode/index-e.html
芋道源码
2019/10/24
2.2K0
jar包导入到项目中、本地maven仓库、私库
配置Jar包的dependency,包括groupId,artifactId,version三个属性,同时还要包含scope和systemPath属性;
ha_lydms
2023/08/09
2.5K0
jar包导入到项目中、本地maven仓库、私库
数据库文档生成工具- screw
在企业级开发中、我们经常会有编写数据库表结构文档的时间付出,从业以来,待过几家企业,关于数据库表结构文档状态:要么没有、要么有、但都是手写、后期运维开发,需要手动进行维护到文档中,很是繁琐、如果忘记一次维护、就会给以后工作造成很多困扰、无形中制造了很多坑留给自己和后人,于是需要一个插件工具 screw 来维护。
Remember_Ray
2020/09/15
1.4K0
数据库文档生成工具- screw
Maven 常用命令
mvn deploy:deploy-file -DgroupId=com.sun.pdfview -DartifactId=pdf -Dversion=1.0 -Dpackaging=jar -Dfile=/home/homer/Desktop/pdf.jar -Durl=http://172.27.9.104:8081/nexus/content/repositories/thirdparty/ -DrepositoryId=thirdparty
阳光岛主
2019/02/19
7550
maven打包本地jar到本地仓库
该命令会使用E:\dev\maven\xinao\apache-maven-3.6.0\bin\mvn路径下的settings.xml文件
九转成圣
2024/04/10
1980
将下载到本地的JAR包手动添加到Maven仓库(转)
常用Maven仓库网址: http://mvnrepository.com/ http://search.maven.org/ http://repository.sonatype.org/content/groups/public/ http://people.apache.org/repo/m2-snapshot-repository/ http://people.apache.org/repo/m2-incubating-repository/
HUC思梦
2020/09/03
2.1K0
将下载到本地的JAR包手动添加到Maven仓库(转)
Maven安装本地jar
以Oracle数据库的驱动为例 oracle驱动安装 下载驱动这里 安装在本地maven库 mvn install:install-file -Dfile=ojdbc8路径 -DgroupId=com.oracle -DartifactId=ojdbc8 -Dversion=版本号 -Dpackaging=jar
DH镔
2019/12/20
9440
快速学习Maven-Nexus把第三方jar包放入本地仓库或私服
需要在 maven 软件的核心配置文件 settings.xml 中配置第三方仓库的 server 信息
cwl_java
2019/12/25
1.8K0
相关推荐
2019-05-31 ojdbc6 安装到本地maven仓库
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档