kubernetes容器集群管理创建node节点kubeconfig文件
1、创建TLS Bootstrapping Token
2、创建kubelet kubeconfig
3、创建kube-proxy kubeconfig
安装和设置kubectl
[root@master ~]# curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl
[root@master ~]# chmod +x ./kubectl
[root@master ~]# mv ./kubectl /opt/kubernetes/bin/
[root@master ~]# cat kuberconfig.sh
#创建TLS Bootstrapping Token
export BOOTSTRAP_TOKEN=$(head -c 16 /dev/urandom|od -An -t x|tr -d ' ')
cat >token.csv <<EOF
${BOOTSTRAP_TOKEN},kubelet-bootstrap,10001,"system:kuberlet-bootstrap"
EOF
#----------------------
#创建kubelet bootstrapping kubeconfig
export KUBE_APISERVER="https://192.168.238.130:6443"
#设置集群参数
kubectl config set-cluster kubernetes \
--certificate-authority=/opt/kubernetes/ssl/ca.pem \
--embed-certs=true \
--server=${KUBE_APISERVER} \
--kubeconfig=/opt/kubernetes/ssl/bootstrap.kubeconfig
#设置客户端认证参数
kubectl config set-credentials kubelet-bootstrap \
--token=${BOOTSTRAP_TOKEN} \
--kubeconfig=/opt/kubernetes/ssl/bootstrap.kubeconfig
#设置上下文参数
kubectl config set-context default \
--cluster=kubernetes \
--user=kubelet-bootstrap \
--kubeconfig=/opt/kubernetes/ssl/bootstrap.kubeconfig
#设置默认上下文
kubectl config use-context default --kubeconfig=/opt/kubernetes/ssl/bootstrap.kubeconfig
#-------------------------
#创建kube-proxy kubeconfig文件
kubectl config set-cluster kubernetes \
--certificate-authority=/opt/kubernetes/ssl/ca.pem \
--embed-certs=true \
--server=${KUBE_APISERVER} \
--kubeconfig=/opt/kubernetes/ssl/kube-proxy.kubeconfig
kubectl config set-credentials kube-proxy \
--client-certificate=/opt/kubernetes/ssl/kube-proxy.pem \
--client-key=/opt/kubernetes/ssl/kube-proxy.pem \
--embed-certs=true \
--kubeconfig=/opt/kubernetes/ssl/kube-proxy.kubeconfig
kubectl config set-context default \
--cluster=kubernetes \
--user=kube-proxy \
--kubeconfig=/opt/kubernetes/ssl/kube-proxy.kubeconfig
kubectl config use-context default --kubeconfig=/opt/kubernetes/ssl/kube-proxy.kubeconfig
[root@master ~]# export BOOTSTRAP_TOKEN=$(head -c 16 /dev/urandom|od -An -t x|tr -d ' ')
cat >token.csv <<EOF
${BOOTSTRAP_TOKEN},kubelet-bootstrap,10001,"system:kuberlet-bootstrap"
[root@master ~]# cat >token.csv <<EOF
> ${BOOTSTRAP_TOKEN},kubelet-bootstrap,10001,"system:kuberlet-bootstrap"
> EOF
[root@master ~]# cat token.csv
a53c293d5aaab99101e2cdae3351a2e1,kubelet-bootstrap,10001,"system:kuberlet-bootstrap"
[root@master ~]# export KUBE_APISERVER="https://192.168.238.130:6443"
[root@master ~]# kubectl config set-cluster kubernetes \
> --certificate-authority=/opt/kubernetes/ssl/ca.pem \
> --embed-certs=true \
> --server=${KUBE_APISERVER} \
> --kubeconfig=/opt/kubernetes/ssl/bootstrap.kubeconfig
Cluster "kubernetes" set.
[root@master ~]# cat /opt/kubernetes/ssl/bootstrap.kubeconfig
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURIakNDQWdhZ0F3SUJBZ0lVUHFjY20xOFN1L2lkdFVGWmRVMWwrc29qTGdnd0RRWUpLb1pJaHZjTkFRRUwKQlFBd0ZURVRNQkVHQTFVRUF4TUthM1ZpWlhKdVpYUmxjekFlRncweE9UQTJNekF4TlRRMk1EQmFGdzB5TkRBMgpNamd4TlRRMk1EQmFNQlV4RXpBUkJnTlZCQU1UQ210MVltVnlibVYwWlhNd2dnRWlNQTBHQ1NxR1NJYjNEUUVCCkFRVUFBNElCRHdBd2dnRUtBb0lCQVFDWE1HcUU3R2REMFd0RWczcHZmRnNlT2ZBOGNvNUJFQmR5dlRWQjdselkKdGxwR2Y4Zk4yYTVCckRua1VBNzZ0Z3drR0VDOUEvYXRrRysxd29CWDNuZFo2Y2k5cTJZbkk4YzAwdzhFbllWZAo5dG43V1c4eS9sWEtXYzZOUkd2bnRtZityMTNvUStZK3BIS3AwdUFSamh5N2h1VTlsUXc1eEVIajNOck1WeG9pCkJSaGkzTy92aHh5VzllbHhML1RmbENkUTdvbTNRbzNiVnkyak5QekUyYnNXdzdMV29BK20xTUN4K2RxVWN4ZFAKMkM4NVdITGVpQ2hhTnhDWkl3cDA2V1JTZlQwOE10bFpPMTdIK3JwOWVGc2ZDQ1RkaXJ3LzFWMCtDa1J0Szc1MQpWTkxPSkZMdHN3ejFaVVhDdVl2MURlS0sycGZlcDg5NjFyTUFzYXl5VW1GeEFnTUJBQUdqWmpCa01BNEdBMVVkCkR3RUIvd1FFQXdJQkJqQVNCZ05WSFJNQkFmOEVDREFHQVFIL0FnRUNNQjBHQTFVZERnUVdCQlNrejJsMWYyOEUKTzZKa0ZyR2dZWm8yam9BYTdUQWZCZ05WSFNNRUdEQVdnQlNrejJsMWYyOEVPNkprRnJHZ1labzJqb0FhN1RBTgpCZ2txaGtpRzl3MEJBUXNGQUFPQ0FRRUFHdmxaRzc1anpmRm5qNFpMQ0pCQVVxWFJPc3B0eXRIeE84ZUduRTQvClI5QmNETWE5RjV4WnJpeTVhekRBN3hBT0laTm1nQWIzK2hsYWhLd1NTMFUvelZBRCt2QkN3QU5UeVgzYVl4Zm4KaXJDS0cyS092SGtDNU5sMEJBWWU1eGZyTkZjTkx5NDZJTGVXYklMZ0tyMUQ4MFE4NWhmelFDQ09INUI3bE1XcwoyeHZCZ3V3cXV6RTJQMTdYTjdvU2kvNlJsUUtSbmxJRjJNM0pXdk11djI3YjN1K2Iyc3JNaWs5TTNoeDJ2UHRECnN6U0xoQ2VrbzVzbDVhcHRXd3hYN05STk5SL1A4TWI3V0Z6SEJ5RmwwMjliSVlGMkl5N3BpNVE0L1N2M0l0YzQKT3R2NXp3SmEvWEhPckZad2tMU1h4SmVKNlpGRGhITW5HTldOdkF4L0NZTXdJdz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K
server: https://192.168.238.130:6443
name: kubernetes
contexts: []
current-context: ""
kind: Config
preferences: {}
users: []
[root@master ~]# kubectl config set-credentials kubelet-bootstrap \
> --token=${BOOTSTRAP_TOKEN} \
> --kubeconfig=/opt/kubernetes/ssl/bootstrap.kubeconfig
User "kubelet-bootstrap" set.
[root@master ~]# cat /opt/kubernetes/ssl/bootstrap.kubeconfig
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURIakNDQWdhZ0F3SUJBZ0lVUHFjY20xOFN1L2lkdFVGWmRVMWwrc29qTGdnd0RRWUpLb1pJaHZjTkFRRUwKQlFBd0ZURVRNQkVHQTFVRUF4TUthM1ZpWlhKdVpYUmxjekFlRncweE9UQTJNekF4TlRRMk1EQmFGdzB5TkRBMgpNamd4TlRRMk1EQmFNQlV4RXpBUkJnTlZCQU1UQ210MVltVnlibVYwWlhNd2dnRWlNQTBHQ1NxR1NJYjNEUUVCCkFRVUFBNElCRHdBd2dnRUtBb0lCQVFDWE1HcUU3R2REMFd0RWczcHZmRnNlT2ZBOGNvNUJFQmR5dlRWQjdselkKdGxwR2Y4Zk4yYTVCckRua1VBNzZ0Z3drR0VDOUEvYXRrRysxd29CWDNuZFo2Y2k5cTJZbkk4YzAwdzhFbllWZAo5dG43V1c4eS9sWEtXYzZOUkd2bnRtZityMTNvUStZK3BIS3AwdUFSamh5N2h1VTlsUXc1eEVIajNOck1WeG9pCkJSaGkzTy92aHh5VzllbHhML1RmbENkUTdvbTNRbzNiVnkyak5QekUyYnNXdzdMV29BK20xTUN4K2RxVWN4ZFAKMkM4NVdITGVpQ2hhTnhDWkl3cDA2V1JTZlQwOE10bFpPMTdIK3JwOWVGc2ZDQ1RkaXJ3LzFWMCtDa1J0Szc1MQpWTkxPSkZMdHN3ejFaVVhDdVl2MURlS0sycGZlcDg5NjFyTUFzYXl5VW1GeEFnTUJBQUdqWmpCa01BNEdBMVVkCkR3RUIvd1FFQXdJQkJqQVNCZ05WSFJNQkFmOEVDREFHQVFIL0FnRUNNQjBHQTFVZERnUVdCQlNrejJsMWYyOEUKTzZKa0ZyR2dZWm8yam9BYTdUQWZCZ05WSFNNRUdEQVdnQlNrejJsMWYyOEVPNkprRnJHZ1labzJqb0FhN1RBTgpCZ2txaGtpRzl3MEJBUXNGQUFPQ0FRRUFHdmxaRzc1anpmRm5qNFpMQ0pCQVVxWFJPc3B0eXRIeE84ZUduRTQvClI5QmNETWE5RjV4WnJpeTVhekRBN3hBT0laTm1nQWIzK2hsYWhLd1NTMFUvelZBRCt2QkN3QU5UeVgzYVl4Zm4KaXJDS0cyS092SGtDNU5sMEJBWWU1eGZyTkZjTkx5NDZJTGVXYklMZ0tyMUQ4MFE4NWhmelFDQ09INUI3bE1XcwoyeHZCZ3V3cXV6RTJQMTdYTjdvU2kvNlJsUUtSbmxJRjJNM0pXdk11djI3YjN1K2Iyc3JNaWs5TTNoeDJ2UHRECnN6U0xoQ2VrbzVzbDVhcHRXd3hYN05STk5SL1A4TWI3V0Z6SEJ5RmwwMjliSVlGMkl5N3BpNVE0L1N2M0l0YzQKT3R2NXp3SmEvWEhPckZad2tMU1h4SmVKNlpGRGhITW5HTldOdkF4L0NZTXdJdz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K
server: https://192.168.238.130:6443
name: kubernetes
contexts: []
current-context: ""
kind: Config
preferences: {}
users:
- name: kubelet-bootstrap
user:
token: a53c293d5aaab99101e2cdae3351a2e1
[root@master ~]# kubectl config set-context default \
> --cluster=kubernetes \
> --user=kubelet-bootstrap \
> --kubeconfig=/opt/kubernetes/ssl/bootstrap.kubeconfig
Context "default" created.
[root@master ~]# cat /opt/kubernetes/ssl/bootstrap.kubeconfig
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURIakNDQWdhZ0F3SUJBZ0lVUHFjY20xOFN1L2lkdFVGWmRVMWwrc29qTGdnd0RRWUpLb1pJaHZjTkFRRUwKQlFBd0ZURVRNQkVHQTFVRUF4TUthM1ZpWlhKdVpYUmxjekFlRncweE9UQTJNekF4TlRRMk1EQmFGdzB5TkRBMgpNamd4TlRRMk1EQmFNQlV4RXpBUkJnTlZCQU1UQ210MVltVnlibVYwWlhNd2dnRWlNQTBHQ1NxR1NJYjNEUUVCCkFRVUFBNElCRHdBd2dnRUtBb0lCQVFDWE1HcUU3R2REMFd0RWczcHZmRnNlT2ZBOGNvNUJFQmR5dlRWQjdselkKdGxwR2Y4Zk4yYTVCckRua1VBNzZ0Z3drR0VDOUEvYXRrRysxd29CWDNuZFo2Y2k5cTJZbkk4YzAwdzhFbllWZAo5dG43V1c4eS9sWEtXYzZOUkd2bnRtZityMTNvUStZK3BIS3AwdUFSamh5N2h1VTlsUXc1eEVIajNOck1WeG9pCkJSaGkzTy92aHh5VzllbHhML1RmbENkUTdvbTNRbzNiVnkyak5QekUyYnNXdzdMV29BK20xTUN4K2RxVWN4ZFAKMkM4NVdITGVpQ2hhTnhDWkl3cDA2V1JTZlQwOE10bFpPMTdIK3JwOWVGc2ZDQ1RkaXJ3LzFWMCtDa1J0Szc1MQpWTkxPSkZMdHN3ejFaVVhDdVl2MURlS0sycGZlcDg5NjFyTUFzYXl5VW1GeEFnTUJBQUdqWmpCa01BNEdBMVVkCkR3RUIvd1FFQXdJQkJqQVNCZ05WSFJNQkFmOEVDREFHQVFIL0FnRUNNQjBHQTFVZERnUVdCQlNrejJsMWYyOEUKTzZKa0ZyR2dZWm8yam9BYTdUQWZCZ05WSFNNRUdEQVdnQlNrejJsMWYyOEVPNkprRnJHZ1labzJqb0FhN1RBTgpCZ2txaGtpRzl3MEJBUXNGQUFPQ0FRRUFHdmxaRzc1anpmRm5qNFpMQ0pCQVVxWFJPc3B0eXRIeE84ZUduRTQvClI5QmNETWE5RjV4WnJpeTVhekRBN3hBT0laTm1nQWIzK2hsYWhLd1NTMFUvelZBRCt2QkN3QU5UeVgzYVl4Zm4KaXJDS0cyS092SGtDNU5sMEJBWWU1eGZyTkZjTkx5NDZJTGVXYklMZ0tyMUQ4MFE4NWhmelFDQ09INUI3bE1XcwoyeHZCZ3V3cXV6RTJQMTdYTjdvU2kvNlJsUUtSbmxJRjJNM0pXdk11djI3YjN1K2Iyc3JNaWs5TTNoeDJ2UHRECnN6U0xoQ2VrbzVzbDVhcHRXd3hYN05STk5SL1A4TWI3V0Z6SEJ5RmwwMjliSVlGMkl5N3BpNVE0L1N2M0l0YzQKT3R2NXp3SmEvWEhPckZad2tMU1h4SmVKNlpGRGhITW5HTldOdkF4L0NZTXdJdz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K
server: https://192.168.238.130:6443
name: kubernetes
contexts:
- context:
cluster: kubernetes
user: kubelet-bootstrap
name: default
current-context: ""
kind: Config
preferences: {}
users:
- name: kubelet-bootstrap
user:
token: a53c293d5aaab99101e2cdae3351a2e1
[root@master ~]# kubectl config use-context default --kubeconfig=/opt/kubernetes/ssl/bootstrap.kubeconfig
Switched to context "default".
[root@master ~]# cat /opt/kubernetes/ssl/bootstrap.kubeconfig
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURIakNDQWdhZ0F3SUJBZ0lVUHFjY20xOFN1L2lkdFVGWmRVMWwrc29qTGdnd0RRWUpLb1pJaHZjTkFRRUwKQlFBd0ZURVRNQkVHQTFVRUF4TUthM1ZpWlhKdVpYUmxjekFlRncweE9UQTJNekF4TlRRMk1EQmFGdzB5TkRBMgpNamd4TlRRMk1EQmFNQlV4RXpBUkJnTlZCQU1UQ210MVltVnlibVYwWlhNd2dnRWlNQTBHQ1NxR1NJYjNEUUVCCkFRVUFBNElCRHdBd2dnRUtBb0lCQVFDWE1HcUU3R2REMFd0RWczcHZmRnNlT2ZBOGNvNUJFQmR5dlRWQjdselkKdGxwR2Y4Zk4yYTVCckRua1VBNzZ0Z3drR0VDOUEvYXRrRysxd29CWDNuZFo2Y2k5cTJZbkk4YzAwdzhFbllWZAo5dG43V1c4eS9sWEtXYzZOUkd2bnRtZityMTNvUStZK3BIS3AwdUFSamh5N2h1VTlsUXc1eEVIajNOck1WeG9pCkJSaGkzTy92aHh5VzllbHhML1RmbENkUTdvbTNRbzNiVnkyak5QekUyYnNXdzdMV29BK20xTUN4K2RxVWN4ZFAKMkM4NVdITGVpQ2hhTnhDWkl3cDA2V1JTZlQwOE10bFpPMTdIK3JwOWVGc2ZDQ1RkaXJ3LzFWMCtDa1J0Szc1MQpWTkxPSkZMdHN3ejFaVVhDdVl2MURlS0sycGZlcDg5NjFyTUFzYXl5VW1GeEFnTUJBQUdqWmpCa01BNEdBMVVkCkR3RUIvd1FFQXdJQkJqQVNCZ05WSFJNQkFmOEVDREFHQVFIL0FnRUNNQjBHQTFVZERnUVdCQlNrejJsMWYyOEUKTzZKa0ZyR2dZWm8yam9BYTdUQWZCZ05WSFNNRUdEQVdnQlNrejJsMWYyOEVPNkprRnJHZ1labzJqb0FhN1RBTgpCZ2txaGtpRzl3MEJBUXNGQUFPQ0FRRUFHdmxaRzc1anpmRm5qNFpMQ0pCQVVxWFJPc3B0eXRIeE84ZUduRTQvClI5QmNETWE5RjV4WnJpeTVhekRBN3hBT0laTm1nQWIzK2hsYWhLd1NTMFUvelZBRCt2QkN3QU5UeVgzYVl4Zm4KaXJDS0cyS092SGtDNU5sMEJBWWU1eGZyTkZjTkx5NDZJTGVXYklMZ0tyMUQ4MFE4NWhmelFDQ09INUI3bE1XcwoyeHZCZ3V3cXV6RTJQMTdYTjdvU2kvNlJsUUtSbmxJRjJNM0pXdk11djI3YjN1K2Iyc3JNaWs5TTNoeDJ2UHRECnN6U0xoQ2VrbzVzbDVhcHRXd3hYN05STk5SL1A4TWI3V0Z6SEJ5RmwwMjliSVlGMkl5N3BpNVE0L1N2M0l0YzQKT3R2NXp3SmEvWEhPckZad2tMU1h4SmVKNlpGRGhITW5HTldOdkF4L0NZTXdJdz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K
server: https://192.168.238.130:6443
name: kubernetes
contexts:
- context:
cluster: kubernetes
user: kubelet-bootstrap
name: default
current-context: default
kind: Config
preferences: {}
users:
- name: kubelet-bootstrap
user:
token: a53c293d5aaab99101e2cdae3351a2e1
[root@master ~]# kubectl config set-cluster kubernetes \
> --certificate-authority=/opt/kubernetes/ssl/ca.pem \
> --embed-certs=true \
> --server=${KUBE_APISERVER} \
> --kubeconfig=/opt/kubernetes/ssl/kube-proxy.kubeconfig
Cluster "kubernetes" set.
[root@master ~]# kubectl config set-credentials kube-proxy \
> --client-certificate=/opt/kubernetes/ssl/kube-proxy.pem \
> --client-key=/opt/kubernetes/ssl/kube-proxy.pem \
> --embed-certs=true \
> --kubeconfig=/opt/kubernetes/ssl/kube-proxy.kubeconfig
User "kube-proxy" set.
[root@master ~]# cat /opt/kubernetes/ssl/kube-proxy.kubeconfig
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURIakNDQWdhZ0F3SUJBZ0lVUHFjY20xOFN1L2lkdFVGWmRVMWwrc29qTGdnd0RRWUpLb1pJaHZjTkFRRUwKQlFBd0ZURVRNQkVHQTFVRUF4TUthM1ZpWlhKdVpYUmxjekFlRncweE9UQTJNekF4TlRRMk1EQmFGdzB5TkRBMgpNamd4TlRRMk1EQmFNQlV4RXpBUkJnTlZCQU1UQ210MVltVnlibVYwWlhNd2dnRWlNQTBHQ1NxR1NJYjNEUUVCCkFRVUFBNElCRHdBd2dnRUtBb0lCQVFDWE1HcUU3R2REMFd0RWczcHZmRnNlT2ZBOGNvNUJFQmR5dlRWQjdselkKdGxwR2Y4Zk4yYTVCckRua1VBNzZ0Z3drR0VDOUEvYXRrRysxd29CWDNuZFo2Y2k5cTJZbkk4YzAwdzhFbllWZAo5dG43V1c4eS9sWEtXYzZOUkd2bnRtZityMTNvUStZK3BIS3AwdUFSamh5N2h1VTlsUXc1eEVIajNOck1WeG9pCkJSaGkzTy92aHh5VzllbHhML1RmbENkUTdvbTNRbzNiVnkyak5QekUyYnNXdzdMV29BK20xTUN4K2RxVWN4ZFAKMkM4NVdITGVpQ2hhTnhDWkl3cDA2V1JTZlQwOE10bFpPMTdIK3JwOWVGc2ZDQ1RkaXJ3LzFWMCtDa1J0Szc1MQpWTkxPSkZMdHN3ejFaVVhDdVl2MURlS0sycGZlcDg5NjFyTUFzYXl5VW1GeEFnTUJBQUdqWmpCa01BNEdBMVVkCkR3RUIvd1FFQXdJQkJqQVNCZ05WSFJNQkFmOEVDREFHQVFIL0FnRUNNQjBHQTFVZERnUVdCQlNrejJsMWYyOEUKTzZKa0ZyR2dZWm8yam9BYTdUQWZCZ05WSFNNRUdEQVdnQlNrejJsMWYyOEVPNkprRnJHZ1labzJqb0FhN1RBTgpCZ2txaGtpRzl3MEJBUXNGQUFPQ0FRRUFHdmxaRzc1anpmRm5qNFpMQ0pCQVVxWFJPc3B0eXRIeE84ZUduRTQvClI5QmNETWE5RjV4WnJpeTVhekRBN3hBT0laTm1nQWIzK2hsYWhLd1NTMFUvelZBRCt2QkN3QU5UeVgzYVl4Zm4KaXJDS0cyS092SGtDNU5sMEJBWWU1eGZyTkZjTkx5NDZJTGVXYklMZ0tyMUQ4MFE4NWhmelFDQ09INUI3bE1XcwoyeHZCZ3V3cXV6RTJQMTdYTjdvU2kvNlJsUUtSbmxJRjJNM0pXdk11djI3YjN1K2Iyc3JNaWs5TTNoeDJ2UHRECnN6U0xoQ2VrbzVzbDVhcHRXd3hYN05STk5SL1A4TWI3V0Z6SEJ5RmwwMjliSVlGMkl5N3BpNVE0L1N2M0l0YzQKT3R2NXp3SmEvWEhPckZad2tMU1h4SmVKNlpGRGhITW5HTldOdkF4L0NZTXdJdz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K
server: https://192.168.238.130:6443
name: kubernetes
contexts: []
current-context: ""
kind: Config
preferences: {}
users:
- name: kube-proxy
user:
client-certificate-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURpakNDQW5LZ0F3SUJBZ0lVTGpjOGF3SUdveFhGay9PMDYzdEM1Q2xOcmZvd0RRWUpLb1pJaHZjTkFRRUwKQlFBd0ZURVRNQkVHQTFVRUF4TUthM1ZpWlhKdVpYUmxjekFlRncweE9UQTNNRGN4TlRReE1EQmFGdzB5T1RBMwpNRFF4TlRReE1EQmFNR2d4Q3pBSkJnTlZCQVlUQWtOT01RNHdEQVlEVlFRSUV3VlhkV2hoYmpFT01Bd0dBMVVFCkJ4TUZWM1ZvWVc0eEREQUtCZ05WQkFvVEEyczRjekVQTUEwR0ExVUVDeE1HVTNsemRHVnRNUm93R0FZRFZRUUQKRXhGemVYTjBaVzA2YTNWaVpTMXdjbTk0ZVRDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQwpnZ0VCQUw4UmRmU2s0aW14a0x1UnV6c3VkdkNMR3pxV3MrU282U1BtblRockFEUWZUSGtLQ3g1YzhlTXE2VFJsCkRZekJwa1VzMkFZR0ViRUhhNEIxRHc3UGw3S0FreXZvdnl2SUFOMUlsMG1SRE9adDh1SjMzb2cvMGFQOU44c0wKNURXemorY1lpTndoOGdGdEpRSlkxTFFBQVVPWUsrN1JTV2ZIVzBYYTNxQ3NsR1dLWGxCK2d4c2RKRGVVSHFXSApoakcyT3BReEpBL3pHMFE3c0ZadlE2L1BaYThhelZ4OTFoNW1YZm5vUjZpSzdES0hNQWVWZTg3WVhhbTBSNTdwCkxzU2dQY1gvOHJSbjVxSWtzeFZvSm16ZlNuQkg4ZFhFbWg0OTNublRteWtZVCtFYUVOVGpzeGlZN2N1MTZvb2QKSHpjcVdrTnNpTmR5b1dsa2xjSm1OZWxpLzZrQ0F3RUFBYU4vTUgwd0RnWURWUjBQQVFIL0JBUURBZ1dnTUIwRwpBMVVkSlFRV01CUUdDQ3NHQVFVRkJ3TUJCZ2dyQmdFRkJRY0RBakFNQmdOVkhSTUJBZjhFQWpBQU1CMEdBMVVkCkRnUVdCQlRDTEh1SmxJYUsyWWZ0TFZFOUNrODF0RVhHUHpBZkJnTlZIU01FR0RBV2dCU2t6MmwxZjI4RU82SmsKRnJHZ1labzJqb0FhN1RBTkJna3Foa2lHOXcwQkFRc0ZBQU9DQVFFQUZqbGl0bFMyTy8xT21HekE4V2gzVXRrbgpST3FmZjYvSE5CTFZZOTFtQkN6aE8vU1FaVXpHR0p6VStOcXFJMFNlL2N4TU8xb28rbnJnUDc1QnBmSEdUM1AvCmRoZy9XRWNiWlorSHpPMHRSWmhJMkQveTNGMjJabmlmWHVkbWxEUndZM1hYV0FmMVZSandvNkJvY3RKL0RoTUYKUGFVNHJ4YTlVaFg3OWxMQ3NYS1pLRVdPbHRMb293Mk94U1NsbFBZOVJUVGx0SkJRc3ErOGZkTlFlQ0VLQ3VoUgp6UEd4dDJMdGUrOTRCcXp4WXlzcXJHNXZ1RVFGLy9GWjNNRlBuZFdoUFpqWEJUTUtwMFVJSGZtYW01VnBQVjEvCnA1bmtsc2c5N3RLemw0RWFvNnl2MGtHbEljNDBuWVZSNXBzNXloaFFCZVRlYk80dFRFMDFaWVlSRkVVRzNRPT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=
client-key-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURpakNDQW5LZ0F3SUJBZ0lVTGpjOGF3SUdveFhGay9PMDYzdEM1Q2xOcmZvd0RRWUpLb1pJaHZjTkFRRUwKQlFBd0ZURVRNQkVHQTFVRUF4TUthM1ZpWlhKdVpYUmxjekFlRncweE9UQTNNRGN4TlRReE1EQmFGdzB5T1RBMwpNRFF4TlRReE1EQmFNR2d4Q3pBSkJnTlZCQVlUQWtOT01RNHdEQVlEVlFRSUV3VlhkV2hoYmpFT01Bd0dBMVVFCkJ4TUZWM1ZvWVc0eEREQUtCZ05WQkFvVEEyczRjekVQTUEwR0ExVUVDeE1HVTNsemRHVnRNUm93R0FZRFZRUUQKRXhGemVYTjBaVzA2YTNWaVpTMXdjbTk0ZVRDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQwpnZ0VCQUw4UmRmU2s0aW14a0x1UnV6c3VkdkNMR3pxV3MrU282U1BtblRockFEUWZUSGtLQ3g1YzhlTXE2VFJsCkRZekJwa1VzMkFZR0ViRUhhNEIxRHc3UGw3S0FreXZvdnl2SUFOMUlsMG1SRE9adDh1SjMzb2cvMGFQOU44c0wKNURXemorY1lpTndoOGdGdEpRSlkxTFFBQVVPWUsrN1JTV2ZIVzBYYTNxQ3NsR1dLWGxCK2d4c2RKRGVVSHFXSApoakcyT3BReEpBL3pHMFE3c0ZadlE2L1BaYThhelZ4OTFoNW1YZm5vUjZpSzdES0hNQWVWZTg3WVhhbTBSNTdwCkxzU2dQY1gvOHJSbjVxSWtzeFZvSm16ZlNuQkg4ZFhFbWg0OTNublRteWtZVCtFYUVOVGpzeGlZN2N1MTZvb2QKSHpjcVdrTnNpTmR5b1dsa2xjSm1OZWxpLzZrQ0F3RUFBYU4vTUgwd0RnWURWUjBQQVFIL0JBUURBZ1dnTUIwRwpBMVVkSlFRV01CUUdDQ3NHQVFVRkJ3TUJCZ2dyQmdFRkJRY0RBakFNQmdOVkhSTUJBZjhFQWpBQU1CMEdBMVVkCkRnUVdCQlRDTEh1SmxJYUsyWWZ0TFZFOUNrODF0RVhHUHpBZkJnTlZIU01FR0RBV2dCU2t6MmwxZjI4RU82SmsKRnJHZ1labzJqb0FhN1RBTkJna3Foa2lHOXcwQkFRc0ZBQU9DQVFFQUZqbGl0bFMyTy8xT21HekE4V2gzVXRrbgpST3FmZjYvSE5CTFZZOTFtQkN6aE8vU1FaVXpHR0p6VStOcXFJMFNlL2N4TU8xb28rbnJnUDc1QnBmSEdUM1AvCmRoZy9XRWNiWlorSHpPMHRSWmhJMkQveTNGMjJabmlmWHVkbWxEUndZM1hYV0FmMVZSandvNkJvY3RKL0RoTUYKUGFVNHJ4YTlVaFg3OWxMQ3NYS1pLRVdPbHRMb293Mk94U1NsbFBZOVJUVGx0SkJRc3ErOGZkTlFlQ0VLQ3VoUgp6UEd4dDJMdGUrOTRCcXp4WXlzcXJHNXZ1RVFGLy9GWjNNRlBuZFdoUFpqWEJUTUtwMFVJSGZtYW01VnBQVjEvCnA1bmtsc2c5N3RLemw0RWFvNnl2MGtHbEljNDBuWVZSNXBzNXloaFFCZVRlYk80dFRFMDFaWVlSRkVVRzNRPT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=
[root@master ~]# kubectl config set-context default \
> --cluster=kubernetes \
> --user=kube-proxy \
> --kubeconfig=/opt/kubernetes/ssl/kube-proxy.kubeconfig
Context "default" created.
[root@master ~]# kubectl config use-context default --kubeconfig=/opt/kubernetes/ssl/kube-proxy.kubeconfig
Switched to context "default".
[root@master ~]# cat /opt/kubernetes/ssl/kube-proxy.kubeconfig
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURIakNDQWdhZ0F3SUJBZ0lVUHFjY20xOFN1L2lkdFVGWmRVMWwrc29qTGdnd0RRWUpLb1pJaHZjTkFRRUwKQlFBd0ZURVRNQkVHQTFVRUF4TUthM1ZpWlhKdVpYUmxjekFlRncweE9UQTJNekF4TlRRMk1EQmFGdzB5TkRBMgpNamd4TlRRMk1EQmFNQlV4RXpBUkJnTlZCQU1UQ210MVltVnlibVYwWlhNd2dnRWlNQTBHQ1NxR1NJYjNEUUVCCkFRVUFBNElCRHdBd2dnRUtBb0lCQVFDWE1HcUU3R2REMFd0RWczcHZmRnNlT2ZBOGNvNUJFQmR5dlRWQjdselkKdGxwR2Y4Zk4yYTVCckRua1VBNzZ0Z3drR0VDOUEvYXRrRysxd29CWDNuZFo2Y2k5cTJZbkk4YzAwdzhFbllWZAo5dG43V1c4eS9sWEtXYzZOUkd2bnRtZityMTNvUStZK3BIS3AwdUFSamh5N2h1VTlsUXc1eEVIajNOck1WeG9pCkJSaGkzTy92aHh5VzllbHhML1RmbENkUTdvbTNRbzNiVnkyak5QekUyYnNXdzdMV29BK20xTUN4K2RxVWN4ZFAKMkM4NVdITGVpQ2hhTnhDWkl3cDA2V1JTZlQwOE10bFpPMTdIK3JwOWVGc2ZDQ1RkaXJ3LzFWMCtDa1J0Szc1MQpWTkxPSkZMdHN3ejFaVVhDdVl2MURlS0sycGZlcDg5NjFyTUFzYXl5VW1GeEFnTUJBQUdqWmpCa01BNEdBMVVkCkR3RUIvd1FFQXdJQkJqQVNCZ05WSFJNQkFmOEVDREFHQVFIL0FnRUNNQjBHQTFVZERnUVdCQlNrejJsMWYyOEUKTzZKa0ZyR2dZWm8yam9BYTdUQWZCZ05WSFNNRUdEQVdnQlNrejJsMWYyOEVPNkprRnJHZ1labzJqb0FhN1RBTgpCZ2txaGtpRzl3MEJBUXNGQUFPQ0FRRUFHdmxaRzc1anpmRm5qNFpMQ0pCQVVxWFJPc3B0eXRIeE84ZUduRTQvClI5QmNETWE5RjV4WnJpeTVhekRBN3hBT0laTm1nQWIzK2hsYWhLd1NTMFUvelZBRCt2QkN3QU5UeVgzYVl4Zm4KaXJDS0cyS092SGtDNU5sMEJBWWU1eGZyTkZjTkx5NDZJTGVXYklMZ0tyMUQ4MFE4NWhmelFDQ09INUI3bE1XcwoyeHZCZ3V3cXV6RTJQMTdYTjdvU2kvNlJsUUtSbmxJRjJNM0pXdk11djI3YjN1K2Iyc3JNaWs5TTNoeDJ2UHRECnN6U0xoQ2VrbzVzbDVhcHRXd3hYN05STk5SL1A4TWI3V0Z6SEJ5RmwwMjliSVlGMkl5N3BpNVE0L1N2M0l0YzQKT3R2NXp3SmEvWEhPckZad2tMU1h4SmVKNlpGRGhITW5HTldOdkF4L0NZTXdJdz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K
server: https://192.168.238.130:6443
name: kubernetes
contexts:
- context:
cluster: kubernetes
user: kube-proxy
name: default
current-context: default
kind: Config
preferences: {}
users:
- name: kube-proxy
user:
client-certificate-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURpakNDQW5LZ0F3SUJBZ0lVTGpjOGF3SUdveFhGay9PMDYzdEM1Q2xOcmZvd0RRWUpLb1pJaHZjTkFRRUwKQlFBd0ZURVRNQkVHQTFVRUF4TUthM1ZpWlhKdVpYUmxjekFlRncweE9UQTNNRGN4TlRReE1EQmFGdzB5T1RBMwpNRFF4TlRReE1EQmFNR2d4Q3pBSkJnTlZCQVlUQWtOT01RNHdEQVlEVlFRSUV3VlhkV2hoYmpFT01Bd0dBMVVFCkJ4TUZWM1ZvWVc0eEREQUtCZ05WQkFvVEEyczRjekVQTUEwR0ExVUVDeE1HVTNsemRHVnRNUm93R0FZRFZRUUQKRXhGemVYTjBaVzA2YTNWaVpTMXdjbTk0ZVRDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQwpnZ0VCQUw4UmRmU2s0aW14a0x1UnV6c3VkdkNMR3pxV3MrU282U1BtblRockFEUWZUSGtLQ3g1YzhlTXE2VFJsCkRZekJwa1VzMkFZR0ViRUhhNEIxRHc3UGw3S0FreXZvdnl2SUFOMUlsMG1SRE9adDh1SjMzb2cvMGFQOU44c0wKNURXemorY1lpTndoOGdGdEpRSlkxTFFBQVVPWUsrN1JTV2ZIVzBYYTNxQ3NsR1dLWGxCK2d4c2RKRGVVSHFXSApoakcyT3BReEpBL3pHMFE3c0ZadlE2L1BaYThhelZ4OTFoNW1YZm5vUjZpSzdES0hNQWVWZTg3WVhhbTBSNTdwCkxzU2dQY1gvOHJSbjVxSWtzeFZvSm16ZlNuQkg4ZFhFbWg0OTNublRteWtZVCtFYUVOVGpzeGlZN2N1MTZvb2QKSHpjcVdrTnNpTmR5b1dsa2xjSm1OZWxpLzZrQ0F3RUFBYU4vTUgwd0RnWURWUjBQQVFIL0JBUURBZ1dnTUIwRwpBMVVkSlFRV01CUUdDQ3NHQVFVRkJ3TUJCZ2dyQmdFRkJRY0RBakFNQmdOVkhSTUJBZjhFQWpBQU1CMEdBMVVkCkRnUVdCQlRDTEh1SmxJYUsyWWZ0TFZFOUNrODF0RVhHUHpBZkJnTlZIU01FR0RBV2dCU2t6MmwxZjI4RU82SmsKRnJHZ1labzJqb0FhN1RBTkJna3Foa2lHOXcwQkFRc0ZBQU9DQVFFQUZqbGl0bFMyTy8xT21HekE4V2gzVXRrbgpST3FmZjYvSE5CTFZZOTFtQkN6aE8vU1FaVXpHR0p6VStOcXFJMFNlL2N4TU8xb28rbnJnUDc1QnBmSEdUM1AvCmRoZy9XRWNiWlorSHpPMHRSWmhJMkQveTNGMjJabmlmWHVkbWxEUndZM1hYV0FmMVZSandvNkJvY3RKL0RoTUYKUGFVNHJ4YTlVaFg3OWxMQ3NYS1pLRVdPbHRMb293Mk94U1NsbFBZOVJUVGx0SkJRc3ErOGZkTlFlQ0VLQ3VoUgp6UEd4dDJMdGUrOTRCcXp4WXlzcXJHNXZ1RVFGLy9GWjNNRlBuZFdoUFpqWEJUTUtwMFVJSGZtYW01VnBQVjEvCnA1bmtsc2c5N3RLemw0RWFvNnl2MGtHbEljNDBuWVZSNXBzNXloaFFCZVRlYk80dFRFMDFaWVlSRkVVRzNRPT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=
client-key-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURpakNDQW5LZ0F3SUJBZ0lVTGpjOGF3SUdveFhGay9PMDYzdEM1Q2xOcmZvd0RRWUpLb1pJaHZjTkFRRUwKQlFBd0ZURVRNQkVHQTFVRUF4TUthM1ZpWlhKdVpYUmxjekFlRncweE9UQTNNRGN4TlRReE1EQmFGdzB5T1RBMwpNRFF4TlRReE1EQmFNR2d4Q3pBSkJnTlZCQVlUQWtOT01RNHdEQVlEVlFRSUV3VlhkV2hoYmpFT01Bd0dBMVVFCkJ4TUZWM1ZvWVc0eEREQUtCZ05WQkFvVEEyczRjekVQTUEwR0ExVUVDeE1HVTNsemRHVnRNUm93R0FZRFZRUUQKRXhGemVYTjBaVzA2YTNWaVpTMXdjbTk0ZVRDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQwpnZ0VCQUw4UmRmU2s0aW14a0x1UnV6c3VkdkNMR3pxV3MrU282U1BtblRockFEUWZUSGtLQ3g1YzhlTXE2VFJsCkRZekJwa1VzMkFZR0ViRUhhNEIxRHc3UGw3S0FreXZvdnl2SUFOMUlsMG1SRE9adDh1SjMzb2cvMGFQOU44c0wKNURXemorY1lpTndoOGdGdEpRSlkxTFFBQVVPWUsrN1JTV2ZIVzBYYTNxQ3NsR1dLWGxCK2d4c2RKRGVVSHFXSApoakcyT3BReEpBL3pHMFE3c0ZadlE2L1BaYThhelZ4OTFoNW1YZm5vUjZpSzdES0hNQWVWZTg3WVhhbTBSNTdwCkxzU2dQY1gvOHJSbjVxSWtzeFZvSm16ZlNuQkg4ZFhFbWg0OTNublRteWtZVCtFYUVOVGpzeGlZN2N1MTZvb2QKSHpjcVdrTnNpTmR5b1dsa2xjSm1OZWxpLzZrQ0F3RUFBYU4vTUgwd0RnWURWUjBQQVFIL0JBUURBZ1dnTUIwRwpBMVVkSlFRV01CUUdDQ3NHQVFVRkJ3TUJCZ2dyQmdFRkJRY0RBakFNQmdOVkhSTUJBZjhFQWpBQU1CMEdBMVVkCkRnUVdCQlRDTEh1SmxJYUsyWWZ0TFZFOUNrODF0RVhHUHpBZkJnTlZIU01FR0RBV2dCU2t6MmwxZjI4RU82SmsKRnJHZ1labzJqb0FhN1RBTkJna3Foa2lHOXcwQkFRc0ZBQU9DQVFFQUZqbGl0bFMyTy8xT21HekE4V2gzVXRrbgpST3FmZjYvSE5CTFZZOTFtQkN6aE8vU1FaVXpHR0p6VStOcXFJMFNlL2N4TU8xb28rbnJnUDc1QnBmSEdUM1AvCmRoZy9XRWNiWlorSHpPMHRSWmhJMkQveTNGMjJabmlmWHVkbWxEUndZM1hYV0FmMVZSandvNkJvY3RKL0RoTUYKUGFVNHJ4YTlVaFg3OWxMQ3NYS1pLRVdPbHRMb293Mk94U1NsbFBZOVJUVGx0SkJRc3ErOGZkTlFlQ0VLQ3VoUgp6UEd4dDJMdGUrOTRCcXp4WXlzcXJHNXZ1RVFGLy9GWjNNRlBuZFdoUFpqWEJUTUtwMFVJSGZtYW01VnBQVjEvCnA1bmtsc2c5N3RLemw0RWFvNnl2MGtHbEljNDBuWVZSNXBzNXloaFFCZVRlYk80dFRFMDFaWVlSRkVVRzNRPT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=
kubernetes容器集群管理创建node节点kubeconfig文件的更多相关文章
- Kubernetes容器集群管理环境 - Node节点的移除与加入
一.如何从Kubernetes集群中移除Node比如从集群中移除k8s-node03这个Node节点,做法如下: 1)先在master节点查看Node情况 [root@k8s-master01 ~]# ...
- kubernetes容器集群管理部署node节点组件
发送配置文件到各个节点 [root@master ~]# scp /opt/kubernetes/cfg/*kubeconfig root@192.168.238.128:/opt/kubernete ...
- kubernetes容器集群管理部署master节点组件
集群部署获取k8s二进制包 [root@master ~]# wget https://dl.k8s.io/v1.15.0/kubernetes-server-linux-amd64.tar.gz [ ...
- Kubernetes容器集群管理环境 - Prometheus监控篇
一.Prometheus介绍之前已经详细介绍了Kubernetes集群部署篇,今天这里重点说下Kubernetes监控方案-Prometheus+Grafana.Prometheus(普罗米修斯)是一 ...
- Kubernetes容器集群管理环境 - 完整部署(中篇)
接着Kubernetes容器集群管理环境 - 完整部署(上篇)继续往下部署: 八.部署master节点master节点的kube-apiserver.kube-scheduler 和 kube-con ...
- Kubernetes容器集群管理环境 - 完整部署(下篇)
在前一篇文章中详细介绍了Kubernetes容器集群管理环境 - 完整部署(中篇),这里继续记录下Kubernetes集群插件等部署过程: 十一.Kubernetes集群插件 插件是Kubernete ...
- Kubernetes容器集群管理环境 - 完整部署(上篇)
Kubernetes(通常称为"K8S")是Google开源的容器集群管理系统.其设计目标是在主机集群之间提供一个能够自动化部署.可拓展.应用容器可运营的平台.Kubernetes ...
- kubernetes容器集群管理启动一个测试示例
创建nginx 创建3个nginx副本 [root@master bin]# kubectl run nginx --image=nginx --replicas=3 kubectl run --ge ...
- kubernetes容器集群自签TLS证书
集群部署 1.环境规划 2.安装docker 3.自签TLS证书 4.部署Flannel网络 5.部署Etcd集群 6.创建Node节点kubeconfig文件 7.获取K8S二进制包 8.运行Mas ...
随机推荐
- python 异常处理【转载】
什么是异常?异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行.一般情况下,在Python无法正常处理程序时就会发生一个异常.异常是Python对象,表示一个错误.当Python脚本 ...
- 最强大的Android线程池框架
背景 大家都知道在我们的开发中永远都离不开多线程,对于我们为什么要使用多线程,多线程的使用和多线程的一些基础知识这里我们就不讲了,有兴趣的朋友可以去看一下博主之前的几篇文章: 线程你真的了解它吗 这才 ...
- HTML基础 img标签 做一个图库
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- 阿里腾讯校招Java面试题总结及答案
阿里校招java面试题汇总 1.HashMap和HashTable的区别,及其实现原理. Hashtable继承自Dictionary类,而HashMap是Java1.2引进的,继承自Abstract ...
- hibernate配置注意事项
1:多对一配置 private Set<DrawRecordModel> cjrecordsSet = new HashSet<DrawRecordModel>(); 正确 p ...
- SpringBoot---监控与管理actuator
1.概述 SpringBoot在Start POMS中提供了一个特殊依赖模块spring-boot-starter-actuator: 引入spring-boot-starter-actuator模块 ...
- jquery对象中 “冒号” 详解
冒号 可以理解为 “匹配” 或 “选取”的意思. $(":button") 表示匹配所有的按钮.$("input:checked")表示匹配所有选中的 ...
- Linux复制命令cp进阶
cp -a:连同属性和权限也一起复制 cp -i:如果不带该参数,默认覆盖同名文件而不会提醒. cp -u:只拷贝符合以下条件的文件到目标目录:目标目录中不存在的文件或目标目录中文件版本较旧的文件. ...
- 2017 山东一轮集训 Day2 Shadow (三维凸包点在面上投影)
在三维坐标中,给定一个点光源,一个凸多面体,以及一个平面作为地面. 求该凸多面体在地面上阴影的面积. 这三个点共同确定了一个平面,这个平面就是地面.保证这三个点坐标互异且不共线.前三行每行三个实数,每 ...
- Outlets
Outlets Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Sub ...