首页 > 其他分享 >17_1_kubernetes 常用命令与应用部署

17_1_kubernetes 常用命令与应用部署

时间:2022-11-20 17:48:20浏览次数:50  
标签:kubectl kubernetes 17 访问 deployment nginx context 常用命令

01 基本概念

  • Pod:K8s最小部署单元,一组容器的集合

  • Deployment:最常见的控制器,用于更高级别部署和管理Pod

  • Service:为一组Pod提供负载均衡,对外提供统一访问入口

  • Label :标签,附加到某个资源上,用于关联对象、查询和筛选

  • Namespaces :命名空间,将对象逻辑上隔离,也利于权限控制

  • Context 上下文,通过 kubeconfig 文件中的 context 元素,使用简便的名称来对访问参数进行分组。每个上下文都有三个参数:cluster、namespace 和 user。默认情况下,kubectl 命令行工具使用 当前上下文 中的参数与集群进行通信。

02 常用命令

2.1 自动补全工具

# 安装依赖包
yum install bash-completion
# 刷新并配置开机启动
source <(kubectl completion bash)
echo "source <(kubectl completion bash)" >> ~./bashrc

2.2 kubeconfig配置文件

可以通过以下命令查看切换上下文

# 查看当前所在的context
kubectl config current-context
output: kubernetes-admin@kubernetes

# 使用指定的context
kubectl config use-context kubernetes-admin@kubernetes  
output: Switched to context "kubernetes-admin@kubernetes".

2.2 命令集合


03 nginx 部署测试

集群外节点访问

外部流量访问K8s的一种方式,即nodeIP:nodePort,是提供给外部流量访问K8s集群资源的一种方式。

例如需要暴露服务的端口给外界访问的话,需要首先实现Kubenetes 里 Pod 和 Service 绑定

# 1 创建一个叫nginx-deployment的deployment
kubectl create deploy nginx-deployment --image=nginx
# 2 然后创建一个同名的 service
kubectl create service nodeport nginx-deployment --tcp 80:80
# 3 查看服务
kubectl get svc
# 4 得到名称为 nginx-deployment 对外暴露的端口号:32617:
# 5 通过虚拟机 ip 加端口号 32617,实现集群外访问


标签:kubectl,kubernetes,17,访问,deployment,nginx,context,常用命令
From: https://www.cnblogs.com/moranyuantian/p/16909010.html

相关文章

  • Kubernetes 1.25.4数据平面自带nginx负载均衡实现高可用
    1、环境准备要点:1、使用一个FQDN统一作为APIServer的接入点;2、加入集群之前,每个节点都将该FQDN解析至第一个Master;3、加入集群之后,每个Master节点将该FQDN都解析至自身......
  • MongooseServerSelectionError: connect ECONNREFUSED ::1:27017 的一种解决办法
    参考:https://www.mongodb.com/community/forums/t/mongodb-doesnt-work-with-node-js-18-12-1/199571/3::1是ipv6的localhost地址,不等同于ipv4的localhost(127.0.0.1)。mo......
  • [NOIP2017 提高组] 列队
    我有病吧我挑这个题做。题意:$n,m,q\le3e5$解题思路:一眼看上去相当没有头绪。但如果仔细观察的话会发现这种操作本质上是改变某一个编号的位置,将其放在序列最后并......
  • 2022-2023-1 20221317《计算机基础与程序设计》第十二周学习总结
    作业信息这个作业属于哪个课程:首页-2022-2023-1-计算机基础与程序设计-北京电子科技学院-班级博客-博客园(cnblogs.com)这个作业的要求在:2022-2023-1《计算......
  • K8s系列---【K8s常用命令】
    K8s常用命令1.查看所有node节点状态kubectlgetnodeskubectlgetnode-A 2.查看所有pod状态#查看所有命名空间下的podkubectlgetpod-A#默认查看default默认命名空间下......
  • Kubernetes(k8s)CNI(Calico)网络模型原理
    目录一、概述二、Calico架构和核心组件三、什么是BGP?三、Calico两种网络模式1)IPIP模式2)BGP模式四、安装Calico插件1)通过helm安装Calico2)通过yaml文件安装3)k8sflannel......
  • 洛谷:P1789 【Mc生存】插火把
        代码:#include<stdio.h>structhuobaye{intx;inty;};structstoneye{intx;inty;};intabs(intn){intflag;if(......
  • 洛谷P3917 异或序列
     题意:给出一个大小为n的序列a[n],求∑1≤i≤j≤n Ai​⨁Ai+1​⨁⋯⨁Aj的值​分析:根据异或的性质我们很容易想到一个O(n*n)的做法,即进行一个异或前缀和。......
  • 题解 CF1759G【Restore the Permutation】
    problem给定长为\(n/2\)的数组\(b\),试求出字典序最小的排列\(p\)使得\(b_i=\max_{p_{2i-1},p_{2i}}\),或者报告无解。\(n\leq10^5\)。solution考虑显然的结论:\(p_......
  • 1732. 找到最高海拔
    1732.找到最高海拔classSolution{publicintlargestAltitude(int[]gain){intres=0;inthigh=0;for(inti=0;i<gain.len......