1.先创建题中的命名空间(Namespace)
kubectl configuse-context k8s kubectl get namespace kubectl create namespace internal kubectl create namespace big-corp kubectl label namespace big-corp name=big-corp2.打开官网,搜索ingress或egress或networkpolicy,然后第一个网络策略
3.复制上方yaml代码,新建yaml文件,例如networkpolicy.yaml,名字随意起
4.将复制的代码按照题意改为下图所示:
kubectl apply -f networkpolicy.yaml kubectl get networkpolicies.networking.k8s.io -n internal 6.7% k8s√
设置配置环境 kubectl config use-context k8s
请重新配置现有的部署 front-end 以及添加名为 http 的端口规范来公开现有容器 nginx 的端 口 80/tcp。
创建一个名为 front-end-svc 的新服务,以公开容器端口 http。 配置此服务,以通过在排定的节点上的 NodePort 来公开各个 pods。
解答: kubectl config use-context k8s kubectl get deployments.apps kubectl edit deployments.apps front-end (edit编辑时只能使用空格,不要TAB否则保存不了) ports: - name: http containePort: 80 protocol: TCP 创建front-end-svc服务: kubectl expose –-name=front-end-svc deployment front-end -–port=80 –-target-port=80 –-type=NodePort 7.7% k8s√设置配置环境 kubectl config use-context k8s
如下创建一个新的 nginx ingress 资源:
名称:pong
namespace: ing-internal
使用服务端口 5678 在路径/hello 上公开服务 hello
可以使用一下命令检查服务 hello 的可用性,该命令返回 hello: curl -kL < INTERNAL_IP>/hello/
解答: 1.kubectl config use-context k8s 2.打开官方文档,搜索ingress,选择第一个结果即可,进入后复制yaml模板并新建一个yaml文件 3.vim ingress.yaml 4.kubectl apply -f 7-ing.yaml 5.kubectl get ing -n ing-internal 8.4% k8s√设置配置环境 kubectl config use-context k8s
将 deployment 从 webserver 扩展至 6pods
解答: kubectl config use-context k8s kubectl get deploy kubectl scale deployment webserver –-replicas=6 kubectl get deploy 9.4% k8s√设置配置环境 kubectl config use-context k8s
按如下要求调度一个 pod:
名称:nginx-kusc00401
image: nginx
Node selector: disk=ssd
解答: kubectl run nginx-kusc00401 --image=nginx --image-pull-policy=IfNotPresent --dry-run=client -o yaml > 9-pod.yaml 加入如下标红代码 kubectl apply -f 9-pod.yaml kubectl get pods 10.4% k8s√设置配置环境 kubectl config use-context k8s
检查有多少个 worker nodes 已准备就绪(不包括被打上 Taint: NoSchedule 的节点),并将数 量写入/opt/KUSC00402/kusc00402.txt
解答: Kubectl get nodes 查看节点是否有污点 kubectl describe nodes [vms22.rhce.cc]() | grep Taint kubectl describe nodes [vms23.rhce.cc]() | grep Taint echo 1 > /opt/KUSC00402/kusc00402.txt 11.4% k8s√设置配置环境 kubectl config use-context k8s
创建一个名字为kucc4的pod,在pod里面分别为以下每个images单独运行一个app container (可能会有 1-4 个 images):
nginx+redis+memcached+consul
解答: kubectl run kucc4 1–image=nginx –1image-pull-policy=IfNotPresent –1dry-run=client -o yaml > 11-pod.yaml vim 11-pod.yaml(将图中标红项复制3次并修改pod名字即可) kubectl apply -f 11-pod.yaml kubectl get pod 12.4% k8s√设置配置环境 kubectl config use-context k8s
创建名为 app-data 的 persistent volume,容量为 1Gi,访问模式为 ReadWriteMany。volume 类型为 hostPath,位于/srv/app-data
解答: