实例结构
创建redis-master-controller.yaml
apiVersion: v1kind: ReplicationControllermetadata: name: redis-masterspec: replicas: 1 selector: name: redis-master template: metadata: name: redis-master labels: name: redis-master spec: containers: - name: redis-master image: kubeguide/redis-master ports: - containerPort: 6379
发布到kubernetes集群,自动创建pod
kubectl create -f redis-master-controller.yamlkubectl get rckubectl get pods
创建redis-master-service.yaml
apiVersion: v1kind: Servicemetadata: name: redis-master labels: name: redis-masterspec: ports: - port: 6379 targetPort: 6379 selector: name: redis-master
创建service
kubectl create -f redis-master-service.yamlkubectl get services
创建redis-slave-controller.yaml
apiVersion: v1kind: ReplicationControllermetadata: name: redis-slavespec: replicas: 2 selector: name: redis-slave template: metadata: name: redis-slave labels: name: redis-slave spec: containers: - name: redis-slave image: kubeguide/guestbook-redis-slave env: - name: GET_HOSTS_FROM value: env ports: - containerPort: 6379
创建
kubectl create -f redis-slave-controller.yamlkubectl get rckubectl get pods
创建redis-slave-service.yaml
apiVersion: v1kind: Servicemetadata: name: redis-slave labels: name: redis-slavespec: ports: - port: 6379 selector: name: redis-slave
创建
kubectl create -f redis-slave-service.yamlkubectl get services
创建frontend-controller.yaml
apiVersion: v1kind: ReplicationControllermetadata: name: frontend labels: name: frontendspec: replicas: 3 selector: name: frontend template: metadata: labels: name: frontend spec: containers: - name: frontend image: kubeguide/guestbook-php-frontend env: - name: GET_HOSTS_FROM value: env ports: - containerPort: 80
创建
kubectl create -f frontend-controller.yamlkubectl get rckubectl get pods
创建frontend-service.yaml
apiVersion: v1kind: Servicemetadata: name: frontend labels: name: frontendspec: type: NodePort ports: - port: 80 nodePort: 30001 selector: name: frontend
创建
kubectl create -f frontend-service.yamlkubectl get services
访问
全部启动后的kubernetes-ui
删除
kubectl delete -f frontend-controller.yamlreplicationcontroller "frontend" deletedkubectl delete -f redis-master-controller.yamlreplicationcontroller "redis-master" deletedkubectl delete -f redis-slave-controller.yamlreplicationcontroller "redis-slave" deletedkubectl delete -f redis-slave-service.yamlservice "redis-slave" deletedkubectl delete -f redis-master-service.yamlservice "redis-master" deletedkubectl delete -f frontend-service.yaml