Documentation ¶
Index ¶
- func BindMasterArgs(args *MasterArgs, flags *pflag.FlagSet, prefix string)
- func NewCommandStart(basename string, out, errout io.Writer, stopCh <-chan struct{}) *cobra.Command
- func StartAPI(oc *origin.MasterConfig) error
- type Master
- type MasterArgs
- func (args MasterArgs) BuildSerializeableEtcdConfig() (*configapi.EtcdConfig, error)
- func (args MasterArgs) BuildSerializeableKubeMasterConfig() (*configapi.KubernetesMasterConfig, error)
- func (args MasterArgs) BuildSerializeableMasterConfig() (*configapi.MasterConfig, error)
- func (args MasterArgs) BuildSerializeableOAuthConfig() (*configapi.OAuthConfig, error)
- func (args MasterArgs) GetAssetPublicAddress() (*url.URL, error)
- func (args MasterArgs) GetConfigFileToWrite() string
- func (args MasterArgs) GetDNSBindAddress() (flagtypes.Addr, error)
- func (args MasterArgs) GetEtcdAddress() (*url.URL, error)
- func (args MasterArgs) GetEtcdBindAddress() string
- func (args MasterArgs) GetEtcdPeerAddress() (*url.URL, error)
- func (args MasterArgs) GetEtcdPeerBindAddress() string
- func (args MasterArgs) GetMasterAddress() (*url.URL, error)
- func (args MasterArgs) GetMasterPublicAddress() (*url.URL, error)
- func (args MasterArgs) GetServerCertHostnames() (sets.String, error)
- func (args MasterArgs) Validate() error
- type MasterOptions
- func NewCommandStartMaster(basename string, out, errout io.Writer) (*cobra.Command, *MasterOptions)
- func NewCommandStartMasterAPI(name, basename string, out, errout io.Writer) (*cobra.Command, *MasterOptions)
- func NewCommandStartMasterControllers(name, basename string, out, errout io.Writer) (*cobra.Command, *MasterOptions)
- func (o *MasterOptions) Complete() error
- func (o MasterOptions) CreateCerts() error
- func (o *MasterOptions) DefaultsFromName(basename string)
- func (o MasterOptions) IsRunFromConfig() bool
- func (o MasterOptions) IsWriteConfigOnly() bool
- func (o MasterOptions) RunMaster() error
- func (o MasterOptions) StartMaster() error
- func (o MasterOptions) Validate(args []string) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BindMasterArgs ¶
func BindMasterArgs(args *MasterArgs, flags *pflag.FlagSet, prefix string)
BindMasterArgs binds the options to the flags with prefix + default flag names
func NewCommandStart ¶
NewCommandStart provides a CLI handler for 'start' command
func StartAPI ¶ added in v1.1.2
func StartAPI(oc *origin.MasterConfig) error
StartAPI starts the components of the master that are considered part of the API - the Kubernetes API and core controllers, the Origin API, the group, policy, project, and authorization caches, the asset server (for the UI), the OAuth server endpoints, and the DNS server. TODO: allow to be more granularly targeted
Types ¶
type Master ¶ added in v1.0.5
type Master struct {
// contains filtered or unexported fields
}
Master encapsulates starting the components of the master
type MasterArgs ¶
type MasterArgs struct { // MasterAddr is the master address for use by OpenShift components (host, host:port, or URL). // Scheme and port default to the --listen scheme and port. When unset, attempt to use the first // public IPv4 non-loopback address registered on this host. MasterAddr flagtypes.Addr // EtcdAddr is the address of the etcd server (host, host:port, or URL). If specified, no built-in // etcd will be started. EtcdAddr flagtypes.Addr // MasterPublicAddr is the master address for use by public clients, if different (host, host:port, // or URL). Defaults to same as --master. MasterPublicAddr flagtypes.Addr // StartAPI controls whether the API component of the master is started (to support the API role) // TODO: once we implement bastion role and kube/os controller role, revisit StartAPI bool // StartControllers controls whether the controller component of the master is started (to support // the controller role) StartControllers bool // DNSBindAddr exposed for integration tests to set DNSBindAddr flagtypes.Addr // EtcdDir is the etcd data directory. EtcdDir string ConfigDir *flag.StringFlag // CORSAllowedOrigins is a list of allowed origins for CORS, comma separated. // An allowed origin can be a regular expression to support subdomain matching. // CORS is enabled for localhost, 127.0.0.1, and the asset server by default. CORSAllowedOrigins []string APIServerCAFiles []string ListenArg *options.ListenArg ImageFormatArgs *options.ImageFormatArgs KubeConnectionArgs *options.KubeConnectionArgs SchedulerConfigFile string NetworkArgs *options.NetworkArgs OverrideConfig func(config *configapi.MasterConfig) error }
MasterArgs is a struct that the command stores flag values into. It holds a partially complete set of parameters for starting the master This object should hold the common set values, but not attempt to handle all cases. The expected path is to use this object to create a fully specified config later on. If you need something not set here, then create a fully specified config file and pass that as argument to starting the master.
func NewDefaultMasterArgs ¶
func NewDefaultMasterArgs() *MasterArgs
NewDefaultMasterArgs creates MasterArgs with sub-objects created and default values set.
func (MasterArgs) BuildSerializeableEtcdConfig ¶
func (args MasterArgs) BuildSerializeableEtcdConfig() (*configapi.EtcdConfig, error)
BuildSerializeableEtcdConfig creates a fully specified etcd startup configuration based on MasterArgs
func (MasterArgs) BuildSerializeableKubeMasterConfig ¶
func (args MasterArgs) BuildSerializeableKubeMasterConfig() (*configapi.KubernetesMasterConfig, error)
BuildSerializeableKubeMasterConfig creates a fully specified kubernetes master startup configuration based on MasterArgs
func (MasterArgs) BuildSerializeableMasterConfig ¶
func (args MasterArgs) BuildSerializeableMasterConfig() (*configapi.MasterConfig, error)
BuildSerializeableMasterConfig takes the MasterArgs (partially complete config) and uses them along with defaulting behavior to create the fully specified config object for starting the master
func (MasterArgs) BuildSerializeableOAuthConfig ¶ added in v0.4.3
func (args MasterArgs) BuildSerializeableOAuthConfig() (*configapi.OAuthConfig, error)
func (MasterArgs) GetAssetPublicAddress ¶
func (args MasterArgs) GetAssetPublicAddress() (*url.URL, error)
func (MasterArgs) GetConfigFileToWrite ¶ added in v0.5.1
func (args MasterArgs) GetConfigFileToWrite() string
GetConfigFileToWrite returns the configuration filepath for master
func (MasterArgs) GetDNSBindAddress ¶
func (args MasterArgs) GetDNSBindAddress() (flagtypes.Addr, error)
func (MasterArgs) GetEtcdAddress ¶
func (args MasterArgs) GetEtcdAddress() (*url.URL, error)
GetEtcdAddress returns the address for etcd
func (MasterArgs) GetEtcdBindAddress ¶
func (args MasterArgs) GetEtcdBindAddress() string
GetEtcdBindAddress derives the etcd bind address by using the bind address and the default etcd port
func (MasterArgs) GetEtcdPeerAddress ¶ added in v0.4.3
func (args MasterArgs) GetEtcdPeerAddress() (*url.URL, error)
func (MasterArgs) GetEtcdPeerBindAddress ¶
func (args MasterArgs) GetEtcdPeerBindAddress() string
GetEtcdPeerBindAddress derives the etcd peer address by using the bind address and the default etcd peering port
func (MasterArgs) GetMasterAddress ¶
func (args MasterArgs) GetMasterAddress() (*url.URL, error)
GetMasterAddress checks for an unset master address and then attempts to use the first public IPv4 non-loopback address registered on this host. TODO: make me IPv6 safe
func (MasterArgs) GetMasterPublicAddress ¶
func (args MasterArgs) GetMasterPublicAddress() (*url.URL, error)
func (MasterArgs) GetServerCertHostnames ¶
func (args MasterArgs) GetServerCertHostnames() (sets.String, error)
GetServerCertHostnames returns the set of hostnames that any serving certificate for master needs to be valid for.
func (MasterArgs) Validate ¶
func (args MasterArgs) Validate() error
type MasterOptions ¶
type MasterOptions struct { MasterArgs *MasterArgs PrintIP bool CreateCertificates bool ExpireDays int SignerExpireDays int ConfigFile string Output io.Writer }
func NewCommandStartMaster ¶
NewCommandStartMaster provides a CLI handler for 'start master' command
func NewCommandStartMasterAPI ¶ added in v1.0.5
func NewCommandStartMasterAPI(name, basename string, out, errout io.Writer) (*cobra.Command, *MasterOptions)
NewCommandStartMasterAPI starts only the APIserver
func NewCommandStartMasterControllers ¶ added in v1.0.5
func NewCommandStartMasterControllers(name, basename string, out, errout io.Writer) (*cobra.Command, *MasterOptions)
NewCommandStartMasterControllers starts only the controllers
func (*MasterOptions) Complete ¶
func (o *MasterOptions) Complete() error
func (MasterOptions) CreateCerts ¶
func (o MasterOptions) CreateCerts() error
func (*MasterOptions) DefaultsFromName ¶ added in v1.0.5
func (o *MasterOptions) DefaultsFromName(basename string)
func (MasterOptions) IsRunFromConfig ¶ added in v0.5.1
func (o MasterOptions) IsRunFromConfig() bool
func (MasterOptions) IsWriteConfigOnly ¶ added in v0.5.1
func (o MasterOptions) IsWriteConfigOnly() bool
func (MasterOptions) RunMaster ¶
func (o MasterOptions) RunMaster() error
RunMaster takes the options and: 1. Creates certs if needed 2. Reads fully specified master config OR builds a fully specified master config from the args 3. Writes the fully specified master config and exits if needed 4. Starts the master based on the fully specified config
func (MasterOptions) StartMaster ¶
func (o MasterOptions) StartMaster() error
StartMaster calls RunMaster and then waits forever
func (MasterOptions) Validate ¶
func (o MasterOptions) Validate(args []string) error