Update Admin-UI.md

chrislusf committed 2025-07-13 20:30:23 -07:00
1 parent ab03887e37
commit 342cb066d0
1 file changed
+286 -9
+286 -9
@@ -12,7 +12,6 @@ The admin interface provides a comprehensive web UI for managing SeaweedFS clust
- **File browser and management**
- **System metrics and performance monitoring**
- **Configuration management**
- **Maintenance operations**
The admin interface automatically discovers filers from the master servers and runs a gRPC server for worker connections on HTTP port + 10000.
@@ -71,7 +70,7 @@ weed admin \
## Data Directory
The data directory (`-dataDir`) is used to persist admin configuration and maintenance data:
The data directory (`-dataDir`) is used to persist admin configuration data:
- **If specified**: Configuration and data are persisted to disk
- **If not specified**: All configuration is kept in memory only
@@ -114,7 +113,7 @@ ca = "/etc/ssl/ca.crt" # optional, for mutual TLS
The admin server also runs a gRPC server for worker connections:
- **Port**: HTTP port + 10000 (e.g., if admin runs on 23646, gRPC runs on 33646)
- **Purpose**: Handles maintenance worker connections and task distribution
- **Purpose**: Handles worker connections and task distribution
- **TLS**: Uses `[grpc.admin]` configuration from `security.toml`
- **Fallback**: Workers fall back to insecure connections if TLS is unavailable
@@ -143,10 +142,41 @@ weed scaffold -config=security
### Web Interface
- **Modern UI**: Bootstrap-based responsive design
- **Real-time updates**: Live cluster status and metrics
- **File management**: Browse and manage files through web interface
- **Maintenance operations**: Execute maintenance tasks from the UI
The admin interface provides a comprehensive web-based management console with the following sections:
#### Dashboard
- **Cluster Overview**: Real-time cluster status and health metrics
- **System Statistics**: Total volumes, files, size, and volume size limits
- **Node Status**: Master, filer, volume server, and message broker status
- **Data Centers**: Geographic distribution of storage nodes
#### Object Store Management
- **S3 Buckets**: View, create, delete, and manage S3-compatible buckets
- **Bucket Details**: Quota management and configuration
- **User Management**: Create and manage S3 API users with permissions
- **Access Keys**: Generate and manage access/secret key pairs
- **Policies**: Manage bucket policies and user permissions
#### File Browser
- **Directory Navigation**: Browse filesystem hierarchy through web interface
- **File Operations**: Upload, download, delete, and manage files
- **File Properties**: View file metadata, permissions, and storage details
- **Bulk Operations**: Multi-select for batch operations
#### Cluster Management
- **Master Servers**: View master node status, leadership, and connectivity
- **Filer Servers**: Monitor filer instances and metadata operations
- **Volume Servers**: Track storage nodes, capacity, and health status
- **Volume Management**: View volume distribution, replication, and status
- **Collections**: Monitor data collections and their volume allocation
#### Message Queue Management
- **Brokers**: View message queue broker status and configuration
- **Topics**: Manage topics, partitions, and message retention
- **Subscribers**: Monitor subscriber connections and consumer lag
- **Topic Details**: View message statistics and partition distribution
### API Endpoints
@@ -192,13 +222,260 @@ weed admin -v=4 -masters="localhost:9333"
## Related Commands
- [`weed worker`](Weed-Worker.md): Start maintenance workers that connect to admin
- [`weed master`](https://github.com/seaweedfs/seaweedfs/wiki/Master-Server): Start master servers
- [`weed filer`](https://github.com/seaweedfs/seaweedfs/wiki/Filer-Server): Start filer servers
- [`weed scaffold`](https://github.com/seaweedfs/seaweedfs/wiki/Scaffold): Generate configuration files
## Admin UI Pages Reference
### Accessing the Admin Interface
Once the admin server is running, access the web interface at:
```
http://localhost:23646
```
Or with custom port:
```
http://localhost:PORT
```
### Dashboard (/)
The main dashboard provides a comprehensive overview of your SeaweedFS cluster:
**Key Metrics**:
- Total volumes, files, and storage size
- Volume size limit configuration
- Cluster health status
**Cluster Topology**:
- Master server status and leader election
- Filer server instances and connections
- Volume server distribution and capacity
- Message broker status (if enabled)
- Data center geographic distribution
**Real-time Updates**: The dashboard automatically refreshes to show current cluster status.
### Object Store Management
#### S3 Buckets (/object-store/buckets)
Manage S3-compatible storage buckets:
**Features**:
- View all buckets with creation dates and sizes
- Create new buckets with Object Lock support
- Delete buckets (with confirmation)
- Set bucket quotas and limits
- Export bucket list to CSV
**Bucket Operations**:
- **Create Bucket**: Specify name and optional Object Lock enablement
- **Delete Bucket**: Remove empty buckets with confirmation dialog
- **Quota Management**: Set storage limits per bucket
- **Bucket Details**: View detailed statistics and configuration
#### User Management (/object-store/users)
Manage S3 API users and their permissions:
**User Operations**:
- Create new users with email and permissions
- Edit existing user permissions and details
- Delete users with confirmation
- Generate and manage access keys
- View user activity and permissions
**Permission Types**:
- **Admin**: Full access to all buckets and operations
- **Read**: Read access to specified buckets
- **Write**: Write access to specified buckets
- **List**: List bucket contents
- **Tagging**: Manage object tags
- **Object Lock Permissions**:
- **BypassGovernanceRetention**: Override governance retention
- **GetObjectRetention**: Read object retention settings
- **PutObjectRetention**: Modify object retention
- **GetObjectLegalHold**: Read legal hold status
- **PutObjectLegalHold**: Set legal hold
- **GetBucketObjectLockConfiguration**: Read bucket Object Lock config
- **PutBucketObjectLockConfiguration**: Modify bucket Object Lock config
**Access Key Management**:
- Generate new access/secret key pairs
- View existing access keys (secret keys are masked)
- Delete unused access keys
- Copy keys to clipboard
#### Policies (/object-store/policies)
Manage bucket policies and access control:
**Policy Operations**:
- Create JSON-based bucket policies
- Edit existing policies with syntax validation
- Delete policies
- Validate policy syntax before saving
- View policy effects and permissions
### File Browser (/files)
Web-based file system interface:
**Navigation**:
- Browse directory hierarchy
- Navigate with breadcrumb navigation
- Search files and folders
- Sort by name, size, or modification date
**File Operations**:
- **Upload**: Single or multiple file upload with progress tracking
- **Download**: Direct file download or streaming
- **Delete**: Remove files and folders with confirmation
- **Create Folders**: New directory creation
- **Rename**: File and folder renaming
- **Copy/Move**: File management operations
**Advanced Features**:
- Drag-and-drop file upload
- Bulk selection for batch operations
- File property viewing (size, permissions, metadata)
- Preview for supported file types
- Export file listings to CSV
### Cluster Management
#### Master Servers (/cluster/masters)
Monitor master server cluster:
**Information Displayed**:
- Master server addresses and ports
- Leader election status
- Connection health and response times
- Configuration synchronization status
- Cluster membership changes
#### Filer Servers (/cluster/filers)
Track filer instances:
**Monitoring**:
- Filer server addresses and health
- Metadata store backend status
- Connected clients and operations
- Performance metrics and response times
#### Volume Servers (/cluster/volume-servers)
Manage storage nodes:
**Server Information**:
- Server addresses and capacity
- Free space and utilization
- Active volume counts
- Data center and rack assignment
- Health status and connectivity
#### Volume Management (/cluster/volumes)
Detailed volume tracking:
**Volume Details**:
- Volume ID and size information
- Replication status and factor
- Read/write statistics
- Storage location and server mapping
- Collection assignment
**Operations**:
- View volume distribution across servers
- Monitor replication health
- Track volume growth and utilization
#### Collections (/cluster/collections)
Monitor data collections:
**Collection Information**:
- Collection names and volume counts
- Replication configuration
- Storage distribution
- Growth patterns and capacity planning
### Message Queue Management
#### Brokers (/mq/brokers)
Monitor message queue brokers:
**Broker Status**:
- Broker addresses and health
- Topic assignment and leadership
- Connection counts and throughput
- Configuration and settings
#### Topics (/mq/topics)
Manage message queue topics:
**Topic Operations**:
- Create new topics with partition configuration
- View topic statistics and message counts
- Manage topic retention policies
- Monitor consumer lag and throughput
#### Topic Details (/mq/topics/{namespace}/{topic})
Detailed topic information:
**Statistics**:
- Message production and consumption rates
- Partition distribution and leadership
- Subscriber connections and lag
- Storage utilization per partition
**Configuration Options**:
- Task scheduling parameters
- Worker connection settings
- Retry policies and timeouts
- Resource allocation limits
## Navigation and UI Features
### Responsive Design
- Mobile-friendly interface
- Collapsible sidebar navigation
- Responsive tables and charts
- Touch-friendly controls
### Real-time Updates
- Live cluster status monitoring
- Automatic page refresh for dynamic content
- WebSocket connections for real-time data
- Progress indicators for long-running operations
### Security Features
- Session-based authentication
- CSRF protection
- Secure cookie handling
- TLS/HTTPS support
### Accessibility
- Keyboard navigation support
- Screen reader compatibility
- High contrast mode support
- Semantic HTML structure
## See Also
- [SeaweedFS Architecture](https://github.com/seaweedfs/seaweedfs/wiki/SeaweedFS-Architecture)
- [Security Configuration](https://github.com/seaweedfs/seaweedfs/wiki/Security-Configuration)
- [Maintenance Operations](https://github.com/seaweedfs/seaweedfs/wiki/Maintenance)
- [S3 Object Lock and Retention](S3-Object-Lock-and-Retention.md)
- [S3 API FAQ](S3-API-FAQ.md)