Kubernetes之kubectl常用命令
2017-12-19 15:30
477 查看
kubectl是一个用于操作kubernetes集群的命令行接口,通过利用kubectl的各种命令可以实现各种功能,是在使用kubernetes中非常常用的工具。
(一)pod
对Pod的创建可以通过Yaml或Json格式的配置文件来完成。关于Yaml或Json中都能写哪些参数,参考官网http://kubernetes.io/docs/user-guide/pods/multi-container/,其中YAML(
Ain't Markup Language),另一种标记语言。
编写yaml文件
创建pod
验证
登入到容器实际所在的机器上验证下:
Web端验证
php-base中php有添加了个info.php页面,通过浏览器访问http://192.168.174.130/info.php,发现容器正常工作,说明pod没问题。
删除
kubectl delete pod NAME
举例:
(二)RC
编写YAML文件
php-controller.yaml
创建
(三)Service
编写YAML文件
php-service.yaml
创建
(四)区别
本文只列出了简单的使用,里面还有很多负责的使用,比如balance等后续再介绍。可以注意到三者的YAML,主要是通过kind来区分的。
(一)pod
对Pod的创建可以通过Yaml或Json格式的配置文件来完成。关于Yaml或Json中都能写哪些参数,参考官网http://kubernetes.io/docs/user-guide/pods/multi-container/,其中YAML(
Ain't Markup Language),另一种标记语言。
编写yaml文件
apiVersion: v1 kind: Pod metadata: name: php-test labels: name: php-test spec: containers: - name: php-test image: 192.168.174.131:5000/php-base:1.0 env: - name: ENV_TEST_1 value: env_test_1 - name: ENV_TEST_2 value: env_test_2 ports: - containerPort: 80 hostPort: 80
kubectl create -f ./php-pod.yaml查看pod
#kubectl get pods #kubectl get pod php-test -o wide #kubectl describe pod php-test
[root@localhost k8s]# kubectl get pod php-test -o wide NAME READY STATUS RESTARTS AGE NODE php-test 1/1 Running 0 3m 192.168.174.130 [root@localhost k8s]#
验证
登入到容器实际所在的机器上验证下:
192.168.174.130执行
sudo docker ps可以看到新创建的pod,发现有2个容器,一个对应的镜像是php-base,一个对应的镜像是kubernetes/pause,它是Netowrk Container,每启动一个Pod都会附加启动这样一个容器,它的作用就只是简单的等待,设置Pod的网络。
Web端验证
php-base中php有添加了个info.php页面,通过浏览器访问http://192.168.174.130/info.php,发现容器正常工作,说明pod没问题。
http://192.168.174.130/info.php
删除
kubectl delete pod NAME
举例:
kubectl delete pod php-test
(二)RC
编写YAML文件
php-controller.yaml
apiVersion: v1 kind: ReplicationController metadata: name: php-controller labels: name: php-controller spec: replicas: 2 selector: name: php-test-pod template: metadata: labels: name: php-test-pod spec: containers: - name: php-test image: 192.168.174.131:5000/php-base:1.0 env: - name: ENV_TEST_1 value: env_test_1 - name: ENV_TEST_2 value: env_test_2 ports: - containerPort: 80
创建
kubectl create -f php-controller.yaml查询
# kubectl get rc # kubectl get rc php-controller # kubectl describe rc php-controller删除
#kubectl delete -f php-controller.yaml #会删除rc,也会删除rc下的所有pod #kubectl delete rc rcName #删除rc,但是pod不会收到影响
(三)Service
编写YAML文件
php-service.yaml
apiVersion: v1 kind: Service metadata: name: php-service labels: name: php-service spec: ports: - port: 8081 targetPort: 80 protocol: TCP selector: name: php-test-pod
创建
kubectl create -f php-service.yaml查询
kubectl get service删除
kubectl delete service php-service
(四)区别
本文只列出了简单的使用,里面还有很多负责的使用,比如balance等后续再介绍。可以注意到三者的YAML,主要是通过kind来区分的。
相关文章推荐
- Kubernetes之kubectl常用命令使用指南:2:故障排查
- Kubernetes之kubectl常用命令使用指南:1:创建和删除
- Kubernetes之kubectl常用命令使用指南:3:故障对应
- Kubernetes之kubectl常用命令使用指南:4:docker命令 vs kubectl
- Kubernetes之kubectl常用命令
- Kubernetes之kubectl常用命令
- Kubernetes之kubectl常用命令使用指南:4:docker命令 vs kubectl
- Kubernetes之kubectl常用命令
- Kubernetes之kubectl常用命令
- Kubernetes之kubectl常用命令使用指南:3:故障对应
- Kubernetes之kubectl常用命令使用指南:4:docker命令 vs kubectl
- k8s技术预研6--Kubernetes集群kubectl命令的常见使用方法
- Kubernetes常用命令与常见问题
- kubectl常用命令总结
- kubectl常用命令
- Kubernetes 常用命令及应用实例
- kubectl常用命令
- Kubernetes常用命令
- Kubernetes学习笔记---常用命令
- kubernetes-kubectl命令说明