再不努力提高效率,小姐姐都被人追走了:K8S一键部署了解一下?
随着互联网时代的不断发展,开发者可能会面临这样的困境:为了解决问题、提升开发效率而竭力研发出来的“创新”,似乎削弱了他们在公司的重要程度,甚至取代了他们原先的地位。比如,在云原生时代,部分企业更愿意选择 K8s 来解决运维、弹性的问题,而不是组建一支需要耗费大量雇佣资金、管理资金的研发团队。
对于 K8s,它的价值在于不仅能帮助公司降低运维成本,同时还可以带来弹性、敏捷、可移植能力,但是对于开发者而言,我们的价值不应该仅仅停留在能与 K8s 解决同样的问题,而是从困境跳脱出来,思考如何更灵活、更高效地运用 K8s 这些 “能为你所用” 的东西,来提升自己的综合技能。
涉及开发的技术人员,永远绕不开的就是将应用部署到相应服务器上,今天给大家讲解,对于容器服务 K8s,怎么实现真正“一键部署“,提高开发部署效率,在 K8s 的运用上做到快人一步。以下是本文提纲:
- 什么是容器服务 K8s
- 如何实现”一键部署“到容器服务 K8s
- 如何实现”一键部署“到 host,开发部署提速 8 倍
一、 什么是容器服务 K8s
容器服务 K8s 是基于原生 K8s 进行适配和增强,简化集群的搭建和扩容等工作,提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理,整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。其中的核心功能为:
- 集群管理:灵活的地域和网络环境选择,可以根据自己的需求,选择不同的地域创建和删除集群。
- 多种服务器托管方式:支持授权容器服务创建云服务器加入到指定集群,支持将已购买的云服务器添加到指定集群。
- 一站式容器生命周期管理:包括网络、存储、日志、监控、调度、路由、权限。
- 灵活扩展调度策略,轻松打通上下游交付流程:支持服务级别的亲和性策略和横向扩展、跨 AZ 高可用和灾难恢复、集群和应用管理的 OpenAPI,轻松对接持续集成和私有部署系统。
二、如何实现”一键部署“到容器服务 K8s
提高开发部署的效率有很多种方法,今天给大家分享的是一款本地 IDE 插件——Cloud Toolkit,据说是开发者用得最多的插件之一,不仅能够将代码开发到最终部署这整个流程自动化,更是可以部署到任意服务器 & 云端(ECS、EDAS、K8s 和小程序云等),而且附带很多功能:Arthas 诊断、Dubbo工具、Terminal 终端、文件上传和 MySQL 执行器等,最重要的一点是:免费!免费!免费!网上很多博客、技术网站、公众号都有相关的测评,大家可以参考看看,或者自己安装试用,一定要试用【一键部署】的功能!下面介绍,如何借助这个插件,将应用一键部署到容器服务 k8s 上。
(一)安装插件
免费插件链接:https://www.aliyun.com/product/cloudtoolkit
(二)配置插件首选项
点击:顶部菜单Tools --> Alibaba Cloud Toolkit --> Preferences-->左边列表的 Alibaba Cloud Toolkit--> Accounts ,出现如下界面,配置阿里云账号的 AK 和 SK,即可完成首选项配置。(如果是子账号,则填写子账号的 AK 和 SK)
(三)设置本地 Docker 镜像打包
点击:顶部菜单Tools --> Alibaba Cloud Toolkit --> Preferences --> 左边列表的 Alibaba Cloud Toolkit --> Docker,如下图,设置本地 Docker 镜像打包。
(三)部署应用
在 Intellij IDEA 中,鼠标右键项目工程名,在出现的菜单中点击 Alibaba Cloud --> Deploy to CS Kubernetes...,出现如下部署窗口:
第一步:设置 Image
- 在 Image 标签页中,选择本地应用程序的 Context Directory 和 Dockerfile (通常会根据您本地的应用工程自动识别并设置)。
- 选择容器镜像服务的地域、命名空间和镜像仓库,然后单击 Container 标签页。
(说明:如果您还没有镜像仓库,在对话框右上角单击 Create a new repository 跳转到容器镜像仓库创建镜像仓库,创建步骤请参考容器镜像仓库文档。)
第二步:设置 Container
- 在 Container 标签页,选择容器服务 Kubernetes 的 Deployment(部署)、Clusters(集群)和Namespace(命名空间) 。
- 选择指定的 Container(容器)。
(说明:如果您还没有创建容器服务 Kubernetes 的 Deployment,在对话框右上角单击 Create a new Kubernetes deployment,跳转到容器服务 Kubernetes 控制台创建 Deployment,创建步骤请参考容器服务 Kubernetes 版文档。)
第三步:执行部署
点击 Run 按钮之后,即可完成本地应用程序向容器服务 Kubernetes 的部署。
三、如何实现”一键部署“到 host,开发部署提速 8 倍
这款插件可以将应用部署到 6 种服务器上,分别是:
- Host (任意服务器)
- ECS
- CS K8s
- EDAS(包括 EDAS for ECS Application & EDAS for K8s Application)
- Mini Program (小程序云)
- SAE
下面为大家详细解说,如何将应用一键部署到 host。
第一步:添加服务器
- 点击:顶部菜单 Tools --> Alibaba Cloud --> Alibaba Cloud View --> Host ,打开机器视图界面,如下图:
- 点击:右上角 Add Host 按钮,出现添加机器界面,如下图,设置相关配置。
第二步:执行部署
在 IntelliJ IDEA 中,鼠标右键项目工程名,在出现的菜单中点击 Alibaba Cloud --> Deploy to Host...,会出现如下部署窗口,设置部署参数,然后单击 Deploy,即可执行初次部署。
部署参数说明:
- Deploy File:部署文件包含两种方式:
- Maven Build:如果当前工程采用 Maven 构建,可以使用 Cloud Toolkit 直接构建并部署。
- Upload File:如果当前工程并非采用 Maven 构建,或者本地已经存在打包好的部署文件,可以选择并直接上传本地的部署文件。
- Target Deploy host:在下拉列表中选择 Tag,然后选择要部署的服务器。
- Deploy Location :输入在 ECS 上部署路径,如 /root/tomcat/webapps。
- Commond:输入应用启动命令,如 sh /root/restart.sh。表示在完成应用包的部署后,需要执行的命令 —— 对于 Java 程序而言,通常是一句 Tomcat 的启动命令。
最后,希望今天推荐的插件能够真正帮助大家提高开发部署的效率,提高对工具运用的能力,大家可安装试用起来,有任何疑问都可以加入社群进行提问,听说他们的客服也是一流,而且不定期有各种有奖活动/排位赛,最近就有 2 个中奖率较高的活动,点击本链接在文末查看具体的活动详情。
欢迎关注我的公众号:程序猿DD,获得独家整理的学习资源和日常干货推送。
如果您对我的专题内容感兴趣,也可以关注我的博客:didispace.com
再不努力提高效率,小姐姐都被人追走了:K8S一键部署了解一下?的更多相关文章
- 刷抖音太累,教你用Python把高颜值的小姐姐都爬下来慢慢看
前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 星安果.AirPython 目 标 场 景 相信大家平时刷抖音短视频 ...
- 不得不用的提高效率小技巧让你用Mac更顺手| Mac小技巧(三)
文章内容及图片来源于:知乎,如果涉及版权问题,请联系作者删除 文章收录于:风云社区(提供上千款各类mac软件的下载) 1. 用预览给GIF删帧 我们在给文章配图或者做表情包的过程中,常需要截取 GIF ...
- 小I的小姐姐
小 I 的小姐姐 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 小 I 去天津玩啦,一路上,他跟他的同学发生了许多有趣 ...
- 分享两个提高效率的AndroidStudio小技巧
这次分享两个 Android Studio 的小技巧,能够有效提高效率和减少犯错,尤其是在团队协作开发中. Getter 模板修改--自动处理 null 判断 格式化代码自动整理方法位置--广度 or ...
- 都是假的!这位小姐姐 P 的图,认真看你就输了!
开门见山,先来看张图: 肯定有不少小伙伴用不屑的语气说,嗬!一看就是 P 的! 是的,任谁都能一眼看出来是假的.但你可能想象不到,这张图的原始素材是有多么……支离破碎,熊是动物园里的,小孩是在家门口站 ...
- 一次C#和C++的实际应用性能比较(C++允许我们使用任何手段来提高效率,只要愿意做出足够的努力)
05年时,在微软的Rico Mariani做了一次实际应用的C#和C++的性能比较.事情起源于微软著名的元老Raymond Chen(在下敬仰的超级牛人)用C++写了一个英汉词典程序,来描述讲解优化C ...
- 用python爬取之后发现果然如此,都说知乎的小姐姐漂亮
前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取http ...
- 应小姐姐要求,整理常用Git操作命令,她都学会了,你确定不收藏
前言 因为个人原因,转化了部门之后已经很久没有接触过开发层级的东西了,好多东西基本都忘记了,但是新的部门有时候会用到相应的研发部的代码和文档手册,所以耳边就充斥这一句话 这个为什么下载不了?这个为什么 ...
- 计算机天才Aaron Swartz 名作 《如何提高效率》——纪念真正的“hacker"!
如何提高效率 <HOWTO: Be more productive>(如何提高效率)作者:Aaron Swartz 肯定有人跟你说过这样的话,“你有看电视的那么长时间,都可以用来写一本书了 ...
随机推荐
- 给Xshell增加快速命令集
一.显示快速命令栏 二.配置快速命令集 在工具中找到快速命令集 添加快速命令集 三.使用快速命令集
- C# 反射基础用法
1.引用命名空间 using System.Reflection; 2.object[] parameters = { 参数 }; 调用方法的参数数组 3.Type t = Type.GetType( ...
- 云服务器 ECS Linux 系统 MySQL 备份的导入导出
MySQL 备份的导出 注意: 如果您使用的是帮助中心的一键环境配置,那么 MySQL 的安装目录是 /alidata/server/mysql. 如果您将 MySQL 安装到其他目录,您需要输入您 ...
- 『嗨威说』算法设计与分析 - STL中Sort函数的实现原理初探
本文索引目录: 一.对Sort算法实现的个人阅读体会 二.Sort算法使用的三个排序算法的优点介绍 2.1 插入排序的优缺点 2.2 堆排序的优缺点 2.3 快速排序的优缺点 2.4 新的结合排序—— ...
- ZIP压缩和解压字符串
由于ZIP压缩会产生头信息, 所以当字符串长度没有达到一定规模的时候, 压缩后的长度可能比原来的还长 // 将一个字符串按照zip方式压缩和解压缩 public class ZipUtil { // ...
- Flask学习之旅--用 Python + Flask 制作一个简单的验证码系统
一.写在前面 现在无论大大小小的网站,基本上都会使用验证码,登录的时候要验证,下载的时候要验证,而使用的验证码也从那些简简单单的字符图形验证码“进化”成了需要进行图文识别的验证码.需要拖动滑块的滑动验 ...
- .Net Core 商城微服务项目系列(七):使用消息队列(RabbitMQ)实现服务异步通信
RabbitMQ是什么,怎么使用我就不介绍了,大家可以到园子里搜一下教程.本篇的重点在于实现服务与服务之间的异步通信. 首先说一下为什么要使用消息队列来实现服务通信:1.提高接口并发能力. 2.保证 ...
- Dart数据类型
变量与常量: 变量: 使用var声明变量,可以赋予不同数据类型的值, 未初始化时默认值是null 使用final声明的变量只能被赋值一次 void main(){ var a; print(a); a ...
- LeetCode正则表达式匹配
题目描述 给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 '.' 和 '*' 的正则表达式匹配. '.' 匹配任意单个字符 '*' 匹配零个或多个前面的那一个元素 所谓匹配,是要涵盖 整个 ...
- Java 学习笔记之 线程Yield
线程Yield: yield()方法的作用是放弃当前的CPU资源,将它让给其他的任务去占用CPU执行时间,但放弃的时间不确定,有可能刚刚放弃,马上又获得CPU时间片. public class Yie ...