Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
k3s
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jacklull
k3s
Commits
95785231
Commit
95785231
authored
Oct 17, 2016
by
deads2k
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
move proxytransport config out of the genericapiserver
parent
729e4484
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
16 additions
and
43 deletions
+16
-43
server.go
cmd/kube-apiserver/app/server.go
+8
-2
config.go
pkg/genericapiserver/config.go
+0
-13
genericapiserver.go
pkg/genericapiserver/genericapiserver.go
+0
-3
genericapiserver_test.go
pkg/genericapiserver/genericapiserver_test.go
+0
-12
master.go
pkg/master/master.go
+3
-1
master_test.go
pkg/master/master_test.go
+5
-12
No files found.
cmd/kube-apiserver/app/server.go
View file @
95785231
...
@@ -22,6 +22,7 @@ package app
...
@@ -22,6 +22,7 @@ package app
import
(
import
(
"crypto/tls"
"crypto/tls"
"net"
"net"
"net/http"
"net/url"
"net/url"
"strconv"
"strconv"
"strings"
"strings"
...
@@ -55,6 +56,7 @@ import (
...
@@ -55,6 +56,7 @@ import (
"k8s.io/kubernetes/pkg/master"
"k8s.io/kubernetes/pkg/master"
"k8s.io/kubernetes/pkg/registry/cachesize"
"k8s.io/kubernetes/pkg/registry/cachesize"
"k8s.io/kubernetes/pkg/serviceaccount"
"k8s.io/kubernetes/pkg/serviceaccount"
utilnet
"k8s.io/kubernetes/pkg/util/net"
"k8s.io/kubernetes/pkg/util/wait"
"k8s.io/kubernetes/pkg/util/wait"
"k8s.io/kubernetes/pkg/version"
"k8s.io/kubernetes/pkg/version"
authenticatorunion
"k8s.io/kubernetes/plugin/pkg/auth/authenticator/request/union"
authenticatorunion
"k8s.io/kubernetes/plugin/pkg/auth/authenticator/request/union"
...
@@ -288,7 +290,12 @@ func Run(s *options.APIServer) error {
...
@@ -288,7 +290,12 @@ func Run(s *options.APIServer) error {
glog
.
Fatalf
(
"Failed to initialize plugins: %v"
,
err
)
glog
.
Fatalf
(
"Failed to initialize plugins: %v"
,
err
)
}
}
proxyTransport
:=
utilnet
.
SetTransportDefaults
(
&
http
.
Transport
{
Dial
:
proxyDialerFn
,
TLSClientConfig
:
proxyTLSClientConfig
,
})
kubeVersion
:=
version
.
Get
()
kubeVersion
:=
version
.
Get
()
genericConfig
.
Version
=
&
kubeVersion
genericConfig
.
Version
=
&
kubeVersion
genericConfig
.
LoopbackClientConfig
=
selfClientConfig
genericConfig
.
LoopbackClientConfig
=
selfClientConfig
genericConfig
.
Authenticator
=
apiAuthenticator
genericConfig
.
Authenticator
=
apiAuthenticator
...
@@ -298,8 +305,6 @@ func Run(s *options.APIServer) error {
...
@@ -298,8 +305,6 @@ func Run(s *options.APIServer) error {
genericConfig
.
AdmissionControl
=
admissionController
genericConfig
.
AdmissionControl
=
admissionController
genericConfig
.
APIResourceConfigSource
=
storageFactory
.
APIResourceConfigSource
genericConfig
.
APIResourceConfigSource
=
storageFactory
.
APIResourceConfigSource
genericConfig
.
MasterServiceNamespace
=
s
.
MasterServiceNamespace
genericConfig
.
MasterServiceNamespace
=
s
.
MasterServiceNamespace
genericConfig
.
ProxyDialer
=
proxyDialerFn
genericConfig
.
ProxyTLSClientConfig
=
proxyTLSClientConfig
genericConfig
.
OpenAPIConfig
.
Info
.
Title
=
"Kubernetes"
genericConfig
.
OpenAPIConfig
.
Info
.
Title
=
"Kubernetes"
genericConfig
.
OpenAPIConfig
.
Definitions
=
generatedopenapi
.
OpenAPIDefinitions
genericConfig
.
OpenAPIConfig
.
Definitions
=
generatedopenapi
.
OpenAPIDefinitions
genericConfig
.
OpenAPIConfig
.
GetOperationID
=
openapi
.
GetOperationID
genericConfig
.
OpenAPIConfig
.
GetOperationID
=
openapi
.
GetOperationID
...
@@ -316,6 +321,7 @@ func Run(s *options.APIServer) error {
...
@@ -316,6 +321,7 @@ func Run(s *options.APIServer) error {
KubeletClientConfig
:
s
.
KubeletConfig
,
KubeletClientConfig
:
s
.
KubeletConfig
,
EnableUISupport
:
true
,
EnableUISupport
:
true
,
EnableLogsSupport
:
true
,
EnableLogsSupport
:
true
,
ProxyTransport
:
proxyTransport
,
Tunneler
:
tunneler
,
Tunneler
:
tunneler
,
}
}
...
...
pkg/genericapiserver/config.go
View file @
95785231
...
@@ -17,7 +17,6 @@ limitations under the License.
...
@@ -17,7 +17,6 @@ limitations under the License.
package
genericapiserver
package
genericapiserver
import
(
import
(
"crypto/tls"
"fmt"
"fmt"
"io"
"io"
"net"
"net"
...
@@ -36,7 +35,6 @@ import (
...
@@ -36,7 +35,6 @@ import (
"k8s.io/kubernetes/pkg/admission"
"k8s.io/kubernetes/pkg/admission"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/api/unversioned"
"k8s.io/kubernetes/pkg/api/unversioned"
"k8s.io/kubernetes/pkg/apiserver"
apiserverfilters
"k8s.io/kubernetes/pkg/apiserver/filters"
apiserverfilters
"k8s.io/kubernetes/pkg/apiserver/filters"
"k8s.io/kubernetes/pkg/apiserver/request"
"k8s.io/kubernetes/pkg/apiserver/request"
"k8s.io/kubernetes/pkg/auth/authenticator"
"k8s.io/kubernetes/pkg/auth/authenticator"
...
@@ -139,10 +137,6 @@ type Config struct {
...
@@ -139,10 +137,6 @@ type Config struct {
// The range of ports to be assigned to services with type=NodePort or greater
// The range of ports to be assigned to services with type=NodePort or greater
ServiceNodePortRange
utilnet
.
PortRange
ServiceNodePortRange
utilnet
.
PortRange
// Used to customize default proxy dial/tls options
ProxyDialer
apiserver
.
ProxyDialerFunc
ProxyTLSClientConfig
*
tls
.
Config
// Additional ports to be exposed on the GenericAPIServer service
// Additional ports to be exposed on the GenericAPIServer service
// extraServicePorts is injectable in the event that more ports
// extraServicePorts is injectable in the event that more ports
// (other than the default 443/tcp) are exposed on the GenericAPIServer
// (other than the default 443/tcp) are exposed on the GenericAPIServer
...
@@ -399,13 +393,6 @@ func (c completedConfig) New() (*GenericAPIServer, error) {
...
@@ -399,13 +393,6 @@ func (c completedConfig) New() (*GenericAPIServer, error) {
s
.
HandlerContainer
=
mux
.
NewAPIContainer
(
http
.
NewServeMux
(),
c
.
Serializer
)
s
.
HandlerContainer
=
mux
.
NewAPIContainer
(
http
.
NewServeMux
(),
c
.
Serializer
)
if
c
.
ProxyDialer
!=
nil
||
c
.
ProxyTLSClientConfig
!=
nil
{
s
.
ProxyTransport
=
utilnet
.
SetTransportDefaults
(
&
http
.
Transport
{
Dial
:
c
.
ProxyDialer
,
TLSClientConfig
:
c
.
ProxyTLSClientConfig
,
})
}
s
.
installAPI
(
c
.
Config
)
s
.
installAPI
(
c
.
Config
)
s
.
Handler
,
s
.
InsecureHandler
=
c
.
BuildHandlerChainsFunc
(
s
.
HandlerContainer
.
ServeMux
,
c
.
Config
)
s
.
Handler
,
s
.
InsecureHandler
=
c
.
BuildHandlerChainsFunc
(
s
.
HandlerContainer
.
ServeMux
,
c
.
Config
)
...
...
pkg/genericapiserver/genericapiserver.go
View file @
95785231
...
@@ -132,9 +132,6 @@ type GenericAPIServer struct {
...
@@ -132,9 +132,6 @@ type GenericAPIServer struct {
Handler
http
.
Handler
Handler
http
.
Handler
InsecureHandler
http
.
Handler
InsecureHandler
http
.
Handler
// Used for custom proxy dialing, and proxy TLS options
ProxyTransport
http
.
RoundTripper
// Map storing information about all groups to be exposed in discovery response.
// Map storing information about all groups to be exposed in discovery response.
// The map is from name to the group.
// The map is from name to the group.
apiGroupsForDiscoveryLock
sync
.
RWMutex
apiGroupsForDiscoveryLock
sync
.
RWMutex
...
...
pkg/genericapiserver/genericapiserver_test.go
View file @
95785231
...
@@ -17,7 +17,6 @@ limitations under the License.
...
@@ -17,7 +17,6 @@ limitations under the License.
package
genericapiserver
package
genericapiserver
import
(
import
(
"crypto/tls"
"encoding/json"
"encoding/json"
"fmt"
"fmt"
"io"
"io"
...
@@ -40,7 +39,6 @@ import (
...
@@ -40,7 +39,6 @@ import (
genericmux
"k8s.io/kubernetes/pkg/genericapiserver/mux"
genericmux
"k8s.io/kubernetes/pkg/genericapiserver/mux"
ipallocator
"k8s.io/kubernetes/pkg/registry/core/service/ipallocator"
ipallocator
"k8s.io/kubernetes/pkg/registry/core/service/ipallocator"
etcdtesting
"k8s.io/kubernetes/pkg/storage/etcd/testing"
etcdtesting
"k8s.io/kubernetes/pkg/storage/etcd/testing"
utilnet
"k8s.io/kubernetes/pkg/util/net"
"k8s.io/kubernetes/pkg/util/sets"
"k8s.io/kubernetes/pkg/util/sets"
"k8s.io/kubernetes/pkg/version"
"k8s.io/kubernetes/pkg/version"
...
@@ -54,8 +52,6 @@ func setUp(t *testing.T) (*etcdtesting.EtcdTestServer, Config, *assert.Assertion
...
@@ -54,8 +52,6 @@ func setUp(t *testing.T) (*etcdtesting.EtcdTestServer, Config, *assert.Assertion
config
:=
NewConfig
()
config
:=
NewConfig
()
config
.
PublicAddress
=
net
.
ParseIP
(
"192.168.10.4"
)
config
.
PublicAddress
=
net
.
ParseIP
(
"192.168.10.4"
)
config
.
RequestContextMapper
=
api
.
NewRequestContextMapper
()
config
.
RequestContextMapper
=
api
.
NewRequestContextMapper
()
config
.
ProxyDialer
=
func
(
network
,
addr
string
)
(
net
.
Conn
,
error
)
{
return
nil
,
nil
}
config
.
ProxyTLSClientConfig
=
&
tls
.
Config
{}
config
.
LegacyAPIGroupPrefixes
=
sets
.
NewString
(
"/api"
)
config
.
LegacyAPIGroupPrefixes
=
sets
.
NewString
(
"/api"
)
return
etcdServer
,
*
config
,
assert
.
New
(
t
)
return
etcdServer
,
*
config
,
assert
.
New
(
t
)
...
@@ -88,14 +84,6 @@ func TestNew(t *testing.T) {
...
@@ -88,14 +84,6 @@ func TestNew(t *testing.T) {
serviceReadWriteIP
,
_
:=
ipallocator
.
GetIndexedIP
(
serviceClusterIPRange
,
1
)
serviceReadWriteIP
,
_
:=
ipallocator
.
GetIndexedIP
(
serviceClusterIPRange
,
1
)
assert
.
Equal
(
s
.
ServiceReadWriteIP
,
serviceReadWriteIP
)
assert
.
Equal
(
s
.
ServiceReadWriteIP
,
serviceReadWriteIP
)
assert
.
Equal
(
s
.
ExternalAddress
,
net
.
JoinHostPort
(
config
.
PublicAddress
.
String
(),
"6443"
))
assert
.
Equal
(
s
.
ExternalAddress
,
net
.
JoinHostPort
(
config
.
PublicAddress
.
String
(),
"6443"
))
// These functions should point to the same memory location
serverDialer
,
_
:=
utilnet
.
Dialer
(
s
.
ProxyTransport
)
serverDialerFunc
:=
fmt
.
Sprintf
(
"%p"
,
serverDialer
)
configDialerFunc
:=
fmt
.
Sprintf
(
"%p"
,
config
.
ProxyDialer
)
assert
.
Equal
(
serverDialerFunc
,
configDialerFunc
)
assert
.
Equal
(
s
.
ProxyTransport
.
(
*
http
.
Transport
)
.
TLSClientConfig
,
config
.
ProxyTLSClientConfig
)
}
}
// Verifies that AddGroupVersions works as expected.
// Verifies that AddGroupVersions works as expected.
...
...
pkg/master/master.go
View file @
95785231
...
@@ -19,6 +19,7 @@ package master
...
@@ -19,6 +19,7 @@ package master
import
(
import
(
"fmt"
"fmt"
"net"
"net"
"net/http"
"net/url"
"net/url"
"reflect"
"reflect"
"strconv"
"strconv"
...
@@ -99,6 +100,7 @@ type Config struct {
...
@@ -99,6 +100,7 @@ type Config struct {
Tunneler
genericapiserver
.
Tunneler
Tunneler
genericapiserver
.
Tunneler
EnableUISupport
bool
EnableUISupport
bool
EnableLogsSupport
bool
EnableLogsSupport
bool
ProxyTransport
http
.
RoundTripper
}
}
// EndpointReconcilerConfig holds the endpoint reconciler and endpoint reconciliation interval to be
// EndpointReconcilerConfig holds the endpoint reconciler and endpoint reconciliation interval to be
...
@@ -197,7 +199,7 @@ func (c completedConfig) New() (*Master, error) {
...
@@ -197,7 +199,7 @@ func (c completedConfig) New() (*Master, error) {
if
c
.
GenericConfig
.
APIResourceConfigSource
.
AnyResourcesForVersionEnabled
(
apiv1
.
SchemeGroupVersion
)
{
if
c
.
GenericConfig
.
APIResourceConfigSource
.
AnyResourcesForVersionEnabled
(
apiv1
.
SchemeGroupVersion
)
{
legacyRESTStorageProvider
:=
corerest
.
LegacyRESTStorageProvider
{
legacyRESTStorageProvider
:=
corerest
.
LegacyRESTStorageProvider
{
StorageFactory
:
c
.
StorageFactory
,
StorageFactory
:
c
.
StorageFactory
,
ProxyTransport
:
s
.
ProxyTransport
,
ProxyTransport
:
c
.
ProxyTransport
,
KubeletClientConfig
:
c
.
KubeletClientConfig
,
KubeletClientConfig
:
c
.
KubeletClientConfig
,
EventTTL
:
c
.
EventTTL
,
EventTTL
:
c
.
EventTTL
,
ServiceClusterIPRange
:
c
.
GenericConfig
.
ServiceClusterIPRange
,
ServiceClusterIPRange
:
c
.
GenericConfig
.
ServiceClusterIPRange
,
...
...
pkg/master/master_test.go
View file @
95785231
...
@@ -19,7 +19,6 @@ package master
...
@@ -19,7 +19,6 @@ package master
import
(
import
(
"crypto/tls"
"crypto/tls"
"encoding/json"
"encoding/json"
"fmt"
"io/ioutil"
"io/ioutil"
"net"
"net"
"net/http"
"net/http"
...
@@ -91,12 +90,14 @@ func setUp(t *testing.T) (*Master, *etcdtesting.EtcdTestServer, Config, *assert.
...
@@ -91,12 +90,14 @@ func setUp(t *testing.T) (*Master, *etcdtesting.EtcdTestServer, Config, *assert.
config
.
GenericConfig
.
PublicAddress
=
net
.
ParseIP
(
"192.168.10.4"
)
config
.
GenericConfig
.
PublicAddress
=
net
.
ParseIP
(
"192.168.10.4"
)
config
.
GenericConfig
.
LegacyAPIGroupPrefixes
=
sets
.
NewString
(
"/api"
)
config
.
GenericConfig
.
LegacyAPIGroupPrefixes
=
sets
.
NewString
(
"/api"
)
config
.
GenericConfig
.
APIResourceConfigSource
=
DefaultAPIResourceConfigSource
()
config
.
GenericConfig
.
APIResourceConfigSource
=
DefaultAPIResourceConfigSource
()
config
.
GenericConfig
.
ProxyDialer
=
func
(
network
,
addr
string
)
(
net
.
Conn
,
error
)
{
return
nil
,
nil
}
config
.
GenericConfig
.
ProxyTLSClientConfig
=
&
tls
.
Config
{}
config
.
GenericConfig
.
RequestContextMapper
=
api
.
NewRequestContextMapper
()
config
.
GenericConfig
.
RequestContextMapper
=
api
.
NewRequestContextMapper
()
config
.
GenericConfig
.
LoopbackClientConfig
=
&
restclient
.
Config
{
APIPath
:
"/api"
,
ContentConfig
:
restclient
.
ContentConfig
{
NegotiatedSerializer
:
api
.
Codecs
}}
config
.
GenericConfig
.
LoopbackClientConfig
=
&
restclient
.
Config
{
APIPath
:
"/api"
,
ContentConfig
:
restclient
.
ContentConfig
{
NegotiatedSerializer
:
api
.
Codecs
}}
config
.
EnableCoreControllers
=
false
config
.
EnableCoreControllers
=
false
config
.
KubeletClientConfig
=
kubeletclient
.
KubeletClientConfig
{
Port
:
10250
}
config
.
KubeletClientConfig
=
kubeletclient
.
KubeletClientConfig
{
Port
:
10250
}
config
.
ProxyTransport
=
utilnet
.
SetTransportDefaults
(
&
http
.
Transport
{
Dial
:
func
(
network
,
addr
string
)
(
net
.
Conn
,
error
)
{
return
nil
,
nil
},
TLSClientConfig
:
&
tls
.
Config
{},
})
master
,
err
:=
config
.
Complete
()
.
New
()
master
,
err
:=
config
.
Complete
()
.
New
()
if
err
!=
nil
{
if
err
!=
nil
{
...
@@ -149,7 +150,7 @@ func newLimitedMaster(t *testing.T) (*Master, *etcdtesting.EtcdTestServer, Confi
...
@@ -149,7 +150,7 @@ func newLimitedMaster(t *testing.T) (*Master, *etcdtesting.EtcdTestServer, Confi
// TestNew verifies that the New function returns a Master
// TestNew verifies that the New function returns a Master
// using the configuration properly.
// using the configuration properly.
func
TestNew
(
t
*
testing
.
T
)
{
func
TestNew
(
t
*
testing
.
T
)
{
master
,
etcdserver
,
config
,
assert
:=
newMaster
(
t
)
master
,
etcdserver
,
_
,
assert
:=
newMaster
(
t
)
defer
etcdserver
.
Terminate
(
t
)
defer
etcdserver
.
Terminate
(
t
)
// these values get defaulted
// these values get defaulted
...
@@ -157,14 +158,6 @@ func TestNew(t *testing.T) {
...
@@ -157,14 +158,6 @@ func TestNew(t *testing.T) {
serviceReadWriteIP
,
_
:=
ipallocator
.
GetIndexedIP
(
serviceClusterIPRange
,
1
)
serviceReadWriteIP
,
_
:=
ipallocator
.
GetIndexedIP
(
serviceClusterIPRange
,
1
)
assert
.
Equal
(
master
.
GenericAPIServer
.
MasterCount
,
1
)
assert
.
Equal
(
master
.
GenericAPIServer
.
MasterCount
,
1
)
assert
.
Equal
(
master
.
GenericAPIServer
.
ServiceReadWriteIP
,
serviceReadWriteIP
)
assert
.
Equal
(
master
.
GenericAPIServer
.
ServiceReadWriteIP
,
serviceReadWriteIP
)
// These functions should point to the same memory location
masterDialer
,
_
:=
utilnet
.
Dialer
(
master
.
GenericAPIServer
.
ProxyTransport
)
masterDialerFunc
:=
fmt
.
Sprintf
(
"%p"
,
masterDialer
)
configDialerFunc
:=
fmt
.
Sprintf
(
"%p"
,
config
.
GenericConfig
.
ProxyDialer
)
assert
.
Equal
(
masterDialerFunc
,
configDialerFunc
)
assert
.
Equal
(
master
.
GenericAPIServer
.
ProxyTransport
.
(
*
http
.
Transport
)
.
TLSClientConfig
,
config
.
GenericConfig
.
ProxyTLSClientConfig
)
}
}
// TestVersion tests /version
// TestVersion tests /version
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment