kubernetes简单命令

#!/bin/bash

aliyuns="registry.aliyuncs.com/google_containers"
google="k8s.gcr.io"
image_list=`kubeadm config images list | awk -F "/" '{print $2}'`

for image in ${image_list}
do
    docker image pull ${aliyuns}/${image}
    docker image tag ${aliyuns}/${image} ${google}/${image}
    docker image rm ${aliyuns}/${image}
    echo -e "\033[32m ${google}/${image} download.\033[0m"
done
~                                                                                                                                                                                          
~        

master kube-apiserver 接受请求与授权操作
kube-scheduler 是负责找到最佳都Node节点
kube-controller 负责弹性伸缩等
node kubelet 收集node info
kube-porxy 负责网络都负载均衡
container runtime 容器运行时

查看命令对应都包
yum whatprovides "*bin/swapoff"
kubectl get nodes -n namespacename
kubectl get cs 就是输去componentstatus
kubectl get pods -o wide  就是获取所有pod详细信息
kubectl apply -f calico.yaml 创建一个calico都pod资源用于网络通信。
kubectl api-resources 获取简写方式
帮助kubectl 的命令补全
yum install bash-completion -y
source /usr/share/bash-completion/bash_completion
kubectl completion bash 
kubectl completion bash >/etc/profile.d/kubectl.sh

kubectl describe node node-2
-n 选择命名空间
kubectl describe pod calico-kube-controllers-6dfcd885bf-hsth2 -n kube-system

创建一个deployment资源 内部跑nginx
kubectl create deployment app-demo --image=nginx:1.7.9
kubectl describe deployments.apps app-demo 

**进入容器:**
kubectl exec -it app-demo-6b476b769d-nspsw /bin/bash
扩展deployment scale 扩展制定类型 副本数 以及deploy name
kubectl scale deployment --replicas=3 app-demo 
并且会自动加入到service中去实现负载均衡
clusterIP所有都新增都pod会注侧到clusterIP中去
为deployment创建一个service服务、
kubectl expose deployment app-demo --port=80 --protocol=TCP --type ClusterIP
kubectl  edit services app-demo 
kind: Service
metadata:
  creationTimestamp: "2021-01-24T07:27:19Z"
  labels:
    app: app-demo
  name: app-demo
  namespace: default
  resourceVersion: "14530"
  uid: e35bf570-6e80-4f9e-a1ab-cc99b449786a
spec:
  clusterIP: 10.96.105.12
  clusterIPs:
  - 10.96.105.12
  externalTrafficPolicy: Cluster
  ports:
  - nodePort: 30044
    port: 80
    protocol: TCP
    targetPort: 80
  selector:
    app: app-demo
  sessionAffinity: None
  type: NodePort
status:

将type 改为NodePort 外部网络可以通过新端口访问(30044)。
kubectl get service
NAME         TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)        AGE
app-demo     NodePort    10.96.105.12   <none>        80:30044/TCP   26m
更新 deployement镜像
kubectl set image deployment app-demo nginx=nginx:1.8.1
查看更新状态
kubectl rollout status deployment app-demo 

回退版本
kubectl rollout undo deployment app-demo  --to-revision=1



在这里插入图片描述
kubectl create deployment test_xx --image=nginx:1.7.9 --dry-run -o yaml
W0125 21:06:03.319451 95198 helpers.go:553] --dry-run is deprecated and can be replaced with --dry-run=client.
apiVersion: apps/v1
kind: Deployment
metadata:
creationTimestamp: null
labels:
app: test_xx
name: test_xx
spec:
replicas: 1
selector:
matchLabels:
app: test_xx
strategy: {}
template:
metadata:
creationTimestamp: null
labels:
app: test_xx
spec:
containers:
- image: nginx:1.7.9
name: nginx
resources: {}
status: {}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值